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

From: Sachin Kamat
Date: Fri Jan 31 2014 - 01:44:28 EST


Hi Josh,

On 30 January 2014 22:17, Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/