Re: linux-next: manual merge of the char-misc tree with the driver-core tree
From: Mathieu Poirier
Date: Mon Jul 15 2019 - 16:23:03 EST
Hi Stephen,
On Thu, 11 Jul 2019 at 18:53, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> On Mon, 1 Jul 2019 19:09:40 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
> >
> > Today's linux-next merge of the char-misc tree got a conflict in:
> >
> > drivers/hwtracing/coresight/of_coresight.c
> >
> > between commit:
> >
> > 418e3ea157ef ("bus_find_device: Unify the match callback with class_find_device")
> >
> > from the driver-core tree and commits:
> >
> > 22aa495a6477 ("coresight: Rename of_coresight to coresight-platform")
> > 20961aea982e ("coresight: platform: Use fwnode handle for device search")
> >
> > from the char-misc tree.
> >
> > I fixed it up (I removed the file and added the following merge fix patch)
> > and can carry the fix as necessary. This is now fixed as far as linux-next
> > is concerned, but any non trivial conflicts should be mentioned to your
> > upstream maintainer when your tree is submitted for merging. You may
> > also want to consider cooperating with the maintainer of the conflicting
> > tree to minimise any particularly complex conflicts.
> >
> > From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> > Date: Mon, 1 Jul 2019 19:07:20 +1000
> > Subject: [PATCH] coresight: fix for "bus_find_device: Unify the match callback
> > with class_find_device"
> >
> > Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> > ---
> > drivers/hwtracing/coresight/coresight-platform.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/hwtracing/coresight/coresight-platform.c b/drivers/hwtracing/coresight/coresight-platform.c
> > index 3c5ceda8db24..fc67f6ae0b3e 100644
> > --- a/drivers/hwtracing/coresight/coresight-platform.c
> > +++ b/drivers/hwtracing/coresight/coresight-platform.c
> > @@ -37,7 +37,7 @@ static int coresight_alloc_conns(struct device *dev,
> > return 0;
> > }
> >
> > -int coresight_device_fwnode_match(struct device *dev, void *fwnode)
> > +int coresight_device_fwnode_match(struct device *dev, const void *fwnode)
> > {
> > return dev_fwnode(dev) == fwnode;
> > }
>
> This is now a conflict between the driver-core tree and Linus' tree.
>
> The declaration of coresight_device_fwnode_match() also needs fixing up
> in drivers/hwtracing/coresight/coresight-priv.h (as done in the patch
> below supplied by Nathan Chancellor).
I have updated my next branch and you shouldn't see this again.
Thanks,
Mathieu
>
> From: Nathan Chancellor <natechancellor@xxxxxxxxx>
> Date: Mon, 1 Jul 2019 11:28:08 -0700
> Subject: [PATCH] coresight: Make the coresight_device_fwnode_match declaration's fwnode parameter const
>
> drivers/hwtracing/coresight/coresight.c:1051:11: error: incompatible pointer types passing 'int (struct device *, void *)' to parameter of type 'int (*)(struct device *, const void *)' [-Werror,-Wincompatible-pointer-types]
> coresight_device_fwnode_match);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/linux/device.h:173:17: note: passing argument to parameter 'match' here
> int (*match)(struct device *dev, const void *data));
> ^
> 1 error generated.
>
> Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> ---
> drivers/hwtracing/coresight/coresight-priv.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight-priv.h b/drivers/hwtracing/coresight/coresight-priv.h
> index 8b07fe55395a..7d401790dd7e 100644
> --- a/drivers/hwtracing/coresight/coresight-priv.h
> +++ b/drivers/hwtracing/coresight/coresight-priv.h
> @@ -202,6 +202,6 @@ static inline void *coresight_get_uci_data(const struct amba_id *id)
>
> void coresight_release_platform_data(struct coresight_platform_data *pdata);
>
> -int coresight_device_fwnode_match(struct device *dev, void *fwnode);
> +int coresight_device_fwnode_match(struct device *dev, const void *fwnode);
>
> #endif
> --
> 2.22.0
>
> --
> Cheers,
> Stephen Rothwell