Message ID | 20160629145129.315931-1-arnd@arndb.de |
---|---|
State | New |
Headers | show |
Hi Arnd, On Wed, 29 Jun 2016 16:51:29 +0200 Arnd Bergmann <arnd@arndb.de> wrote: > > The newly added mediatek HDMI driver clashes with an API change > for struct hdmi_codec_ops, causing an 'allmodconfig' build to fail: > > drivers/gpu/drm/mediatek/mtk_hdmi.c:1653:15: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] > drivers/gpu/drm/mediatek/mtk_hdmi.c:1654:19: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] > drivers/gpu/drm/mediatek/mtk_hdmi.c:1655:20: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] > drivers/gpu/drm/mediatek/mtk_hdmi.c:1656:18: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] > drivers/gpu/drm/mediatek/mtk_hdmi.c:1657:13: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] > > This changes the API accordingly for the mediatek driver. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > Fixes: 8f83f26891e1 ("drm/mediatek: Add HDMI support") > Fixes: efc9194bcff8 ("ASoC: hdmi-codec: callback function will be called with private data") > --- > The new driver is currently part of Dave Airlie's drm-next tree, > while the API change is in Mark Brown's asoc-next tree, so my > fix has to be done on top of both. Thanks for sorting this out. > I can see two ways out of this: > > a) Stephen Rothwell could add my fixup on top of linux-next > as a merge fix, and the fix gets sent to Linus Torvalds along > with the second of the two branches I'll do this today, unless someone does the other.
On Wed, Jun 29, 2016 at 04:51:29PM +0200, Arnd Bergmann wrote: > b) efc9194bcff8 gets merged into drm-next along with my change > in the merge commit. It is currently a standalone patch > in its own branch in the ASoC tree. This would be the ideal thing obviously: The following changes since commit 1a695a905c18548062509178b98bc91e67510864: Linux 4.7-rc1 (2016-05-29 09:29:24 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git tags/asoc-hdmi-codec-pdata for you to fetch changes up to efc9194bcff84666832c6493bafa92029ac6634c: ASoC: hdmi-codec: callback function will be called with private data (2016-06-27 18:53:15 +0100) ---------------------------------------------------------------- ASoC: Add private data for HDMI CODEC callbacks Allow the HDMI CODECs to get private data passed in in callbacks. ---------------------------------------------------------------- Kuninori Morimoto (1): ASoC: hdmi-codec: callback function will be called with private data include/sound/hdmi-codec.h | 13 ++++++++----- sound/soc/codecs/hdmi-codec.c | 15 ++++++++------- 2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi.c b/drivers/gpu/drm/mediatek/mtk_hdmi.c index ba812ef2c9d1..334562d06731 100644 --- a/drivers/gpu/drm/mediatek/mtk_hdmi.c +++ b/drivers/gpu/drm/mediatek/mtk_hdmi.c @@ -1535,7 +1535,7 @@ static int mtk_hdmi_dt_parse_pdata(struct mtk_hdmi *hdmi, * HDMI audio codec callbacks */ -static int mtk_hdmi_audio_hw_params(struct device *dev, +static int mtk_hdmi_audio_hw_params(struct device *dev, void *data, struct hdmi_codec_daifmt *daifmt, struct hdmi_codec_params *params) { @@ -1604,7 +1604,7 @@ static int mtk_hdmi_audio_hw_params(struct device *dev, return 0; } -static int mtk_hdmi_audio_startup(struct device *dev) +static int mtk_hdmi_audio_startup(struct device *dev, void *data) { struct mtk_hdmi *hdmi = dev_get_drvdata(dev); @@ -1615,7 +1615,7 @@ static int mtk_hdmi_audio_startup(struct device *dev) return 0; } -static void mtk_hdmi_audio_shutdown(struct device *dev) +static void mtk_hdmi_audio_shutdown(struct device *dev, void *data) { struct mtk_hdmi *hdmi = dev_get_drvdata(dev); @@ -1624,7 +1624,7 @@ static void mtk_hdmi_audio_shutdown(struct device *dev) mtk_hdmi_audio_disable(hdmi); } -int mtk_hdmi_audio_digital_mute(struct device *dev, bool enable) +int mtk_hdmi_audio_digital_mute(struct device *dev, void *data, bool enable) { struct mtk_hdmi *hdmi = dev_get_drvdata(dev); @@ -1638,7 +1638,7 @@ int mtk_hdmi_audio_digital_mute(struct device *dev, bool enable) return 0; } -static int mtk_hdmi_audio_get_eld(struct device *dev, uint8_t *buf, size_t len) +static int mtk_hdmi_audio_get_eld(struct device *dev, void *data, uint8_t *buf, size_t len) { struct mtk_hdmi *hdmi = dev_get_drvdata(dev);
The newly added mediatek HDMI driver clashes with an API change for struct hdmi_codec_ops, causing an 'allmodconfig' build to fail: drivers/gpu/drm/mediatek/mtk_hdmi.c:1653:15: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] drivers/gpu/drm/mediatek/mtk_hdmi.c:1654:19: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] drivers/gpu/drm/mediatek/mtk_hdmi.c:1655:20: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] drivers/gpu/drm/mediatek/mtk_hdmi.c:1656:18: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] drivers/gpu/drm/mediatek/mtk_hdmi.c:1657:13: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] This changes the API accordingly for the mediatek driver. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Fixes: 8f83f26891e1 ("drm/mediatek: Add HDMI support") Fixes: efc9194bcff8 ("ASoC: hdmi-codec: callback function will be called with private data") --- The new driver is currently part of Dave Airlie's drm-next tree, while the API change is in Mark Brown's asoc-next tree, so my fix has to be done on top of both. I can see two ways out of this: a) Stephen Rothwell could add my fixup on top of linux-next as a merge fix, and the fix gets sent to Linus Torvalds along with the second of the two branches b) efc9194bcff8 gets merged into drm-next along with my change in the merge commit. It is currently a standalone patch in its own branch in the ASoC tree. --- drivers/gpu/drm/mediatek/mtk_hdmi.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)