exynos_hdmi.c fails to build with v3.13-10094-g9b0cd30

Sachin Kamat sachin.kamat at linaro.org
Thu Jan 30 22:44:20 PST 2014


Hi Josh,

On 30 January 2014 22:17, Josh Boyer <jwboyer at fedoraproject.org> wrote:
> Hi All,
>
> After the DRM merge, the exynos_hdmi.c file fails to build with our
> ARM config.  The error is:
>
> drivers/gpu/drm/exynos/exynos_hdmi.c:382:8: error: 'hdmi_infoframe'
> defined as wrong kind of tag
>  struct hdmi_infoframe {
>         ^
> make[4]: *** [drivers/gpu/drm/exynos/exynos_hdmi.o] Error 1
> make[3]: *** [drivers/gpu/drm/exynos] Error 2
> make[2]: *** [drivers/gpu/drm] Error 2
>
> which to me was a somewhat confusing error message.  After digging
> further, I believe it means that there is a conflict with the
> definition in exynos_hdmi.c and the one found in include/linux/hdmi.h
> for what hdmi_infoframe is supposed to be.
>
> exynos_hdmi.c:
>
> struct hdmi_infoframe {
>         enum HDMI_PACKET_TYPE type;
>         u8 ver;
>         u8 len;
> };
>
>
> include/linux/hdmi.h:
>
> union hdmi_infoframe {
>         struct hdmi_any_infoframe any;
>         struct hdmi_avi_infoframe avi;
>         struct hdmi_spd_infoframe spd;
>         union hdmi_vendor_any_infoframe vendor;
>         struct hdmi_audio_infoframe audio;
> };
>
>
> Could someone take a look at this?  I have no idea how this wasn't
> caught before being merged.

Thank you for reporting this issue. I have just posted a fix for this
(CC'd you) and hence the link is not yet available. Please test the
patch.
This issue surfaced because of commit 985e5dc207e1 ("drm/edid:
Populate picture aspect ratio for CEA modes") which includes
linux/hdmi.h and which got merged last month and hence the build issue
did not appear when the failing patch (commit a144c2e9f17b "
drm/exynos: sending AVI and AUI info frames") initially got merged
about a year earlier. Infact "union hdmi_infoframe" itself was added
to include/linux/hdmi.h in Aug. 2013. Now that we have something
available in global header, the next step would be to utilize that
definition instead of the local one in exynos_hdmi.c.

-- 
With warm regards,
Sachin


More information about the dri-devel mailing list