linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: manual merge of the char-misc tree with the drivers-x86 tree
@ 2021-01-11  2:08 Stephen Rothwell
  2021-01-11  7:25 ` Greg KH
  2021-02-14 20:44 ` Stephen Rothwell
  0 siblings, 2 replies; 5+ messages in thread
From: Stephen Rothwell @ 2021-01-11  2:08 UTC (permalink / raw)
  To: Greg KH, Arnd Bergmann, Hans de Goede, Mark Gross
  Cc: Greg Kroah-Hartman, Linux Kernel Mailing List,
	Linux Next Mailing List, Matthew Gerlach, Maximilian Luz,
	Moritz Fischer, Russ Weight, Wu Hao, Xu Yilun

[-- Attachment #1: Type: text/plain, Size: 4989 bytes --]

Hi all,

Today's linux-next merge of the char-misc tree got conflicts in:

  include/linux/mod_devicetable.h
  scripts/mod/devicetable-offsets.c
  scripts/mod/file2alias.c

between commit:

  eb0e90a82098 ("platform/surface: aggregator: Add dedicated bus and device type")

from the drivers-x86 tree and commits:

  9326eecd9365 ("fpga: dfl: move dfl_device_id to mod_devicetable.h")
  4a224acec597 ("fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE()")

from the char-misc tree.

I fixed it up (see below) 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.

-- 
Cheers,
Stephen Rothwell

diff --cc include/linux/mod_devicetable.h
index 935060955152,b8dae34eca10..000000000000
--- a/include/linux/mod_devicetable.h
+++ b/include/linux/mod_devicetable.h
@@@ -846,22 -846,28 +846,46 @@@ struct auxiliary_device_id 
  	kernel_ulong_t driver_data;
  };
  
 +/* Surface System Aggregator Module */
 +
 +#define SSAM_MATCH_TARGET	0x1
 +#define SSAM_MATCH_INSTANCE	0x2
 +#define SSAM_MATCH_FUNCTION	0x4
 +
 +struct ssam_device_id {
 +	__u8 match_flags;
 +
 +	__u8 domain;
 +	__u8 category;
 +	__u8 target;
 +	__u8 instance;
 +	__u8 function;
 +
 +	kernel_ulong_t driver_data;
 +};
 +
+ /*
+  * DFL (Device Feature List)
+  *
+  * DFL defines a linked list of feature headers within the device MMIO space to
+  * provide an extensible way of adding features. Software can walk through these
+  * predefined data structures to enumerate features. It is now used in the FPGA.
+  * See Documentation/fpga/dfl.rst for more information.
+  *
+  * The dfl bus type is introduced to match the individual feature devices (dfl
+  * devices) for specific dfl drivers.
+  */
+ 
+ /**
+  * struct dfl_device_id -  dfl device identifier
+  * @type: DFL FIU type of the device. See enum dfl_id_type.
+  * @feature_id: feature identifier local to its DFL FIU type.
+  * @driver_data: driver specific data.
+  */
+ struct dfl_device_id {
+ 	__u16 type;
+ 	__u16 feature_id;
+ 	kernel_ulong_t driver_data;
+ };
+ 
  #endif /* LINUX_MOD_DEVICETABLE_H */
diff --cc scripts/mod/devicetable-offsets.c
index f078eeb0a961,1b14f3cde4e5..000000000000
--- a/scripts/mod/devicetable-offsets.c
+++ b/scripts/mod/devicetable-offsets.c
@@@ -246,13 -246,9 +246,17 @@@ int main(void
  	DEVID(auxiliary_device_id);
  	DEVID_FIELD(auxiliary_device_id, name);
  
 +	DEVID(ssam_device_id);
 +	DEVID_FIELD(ssam_device_id, match_flags);
 +	DEVID_FIELD(ssam_device_id, domain);
 +	DEVID_FIELD(ssam_device_id, category);
 +	DEVID_FIELD(ssam_device_id, target);
 +	DEVID_FIELD(ssam_device_id, instance);
 +	DEVID_FIELD(ssam_device_id, function);
 +
+ 	DEVID(dfl_device_id);
+ 	DEVID_FIELD(dfl_device_id, type);
+ 	DEVID_FIELD(dfl_device_id, feature_id);
+ 
  	return 0;
  }
diff --cc scripts/mod/file2alias.c
index d21d2871387b,7ebabeb1e9c9..000000000000
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
@@@ -1375,28 -1375,18 +1375,40 @@@ static int do_auxiliary_entry(const cha
  	return 1;
  }
  
 +/*
 + * Looks like: ssam:dNcNtNiNfN
 + *
 + * N is exactly 2 digits, where each is an upper-case hex digit.
 + */
 +static int do_ssam_entry(const char *filename, void *symval, char *alias)
 +{
 +	DEF_FIELD(symval, ssam_device_id, match_flags);
 +	DEF_FIELD(symval, ssam_device_id, domain);
 +	DEF_FIELD(symval, ssam_device_id, category);
 +	DEF_FIELD(symval, ssam_device_id, target);
 +	DEF_FIELD(symval, ssam_device_id, instance);
 +	DEF_FIELD(symval, ssam_device_id, function);
 +
 +	sprintf(alias, "ssam:d%02Xc%02X", domain, category);
 +	ADD(alias, "t", match_flags & SSAM_MATCH_TARGET, target);
 +	ADD(alias, "i", match_flags & SSAM_MATCH_INSTANCE, instance);
 +	ADD(alias, "f", match_flags & SSAM_MATCH_FUNCTION, function);
 +
 +	return 1;
 +}
 +
+ /* Looks like: dfl:tNfN */
+ static int do_dfl_entry(const char *filename, void *symval, char *alias)
+ {
+ 	DEF_FIELD(symval, dfl_device_id, type);
+ 	DEF_FIELD(symval, dfl_device_id, feature_id);
+ 
+ 	sprintf(alias, "dfl:t%04Xf%04X", type, feature_id);
+ 
+ 	add_wildcard(alias);
+ 	return 1;
+ }
+ 
  /* Does namelen bytes of name exactly match the symbol? */
  static bool sym_is(const char *name, unsigned namelen, const char *symbol)
  {
@@@ -1472,7 -1462,7 +1484,8 @@@ static const struct devtable devtable[
  	{"wmi", SIZE_wmi_device_id, do_wmi_entry},
  	{"mhi", SIZE_mhi_device_id, do_mhi_entry},
  	{"auxiliary", SIZE_auxiliary_device_id, do_auxiliary_entry},
 +	{"ssam", SIZE_ssam_device_id, do_ssam_entry},
+ 	{"dfl", SIZE_dfl_device_id, do_dfl_entry},
  };
  
  /* Create MODULE_ALIAS() statements.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: linux-next: manual merge of the char-misc tree with the drivers-x86 tree
  2021-01-11  2:08 linux-next: manual merge of the char-misc tree with the drivers-x86 tree Stephen Rothwell
@ 2021-01-11  7:25 ` Greg KH
  2021-02-14 20:44 ` Stephen Rothwell
  1 sibling, 0 replies; 5+ messages in thread
From: Greg KH @ 2021-01-11  7:25 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Arnd Bergmann, Hans de Goede, Mark Gross,
	Linux Kernel Mailing List, Linux Next Mailing List,
	Matthew Gerlach, Maximilian Luz, Moritz Fischer, Russ Weight,
	Wu Hao, Xu Yilun

On Mon, Jan 11, 2021 at 01:08:51PM +1100, Stephen Rothwell wrote:
> Hi all,
> 
> Today's linux-next merge of the char-misc tree got conflicts in:
> 
>   include/linux/mod_devicetable.h
>   scripts/mod/devicetable-offsets.c
>   scripts/mod/file2alias.c
> 
> between commit:
> 
>   eb0e90a82098 ("platform/surface: aggregator: Add dedicated bus and device type")
> 
> from the drivers-x86 tree and commits:
> 
>   9326eecd9365 ("fpga: dfl: move dfl_device_id to mod_devicetable.h")
>   4a224acec597 ("fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE()")
> 
> from the char-misc tree.
> 
> I fixed it up (see below) 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.

Thanks, this looks correct, and expected as new subsystems add
auto-loading capabilities at the same time.

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: linux-next: manual merge of the char-misc tree with the drivers-x86 tree
  2021-01-11  2:08 linux-next: manual merge of the char-misc tree with the drivers-x86 tree Stephen Rothwell
  2021-01-11  7:25 ` Greg KH
@ 2021-02-14 20:44 ` Stephen Rothwell
  2021-02-23  3:28   ` Stephen Rothwell
  1 sibling, 1 reply; 5+ messages in thread
From: Stephen Rothwell @ 2021-02-14 20:44 UTC (permalink / raw)
  To: Greg KH, Arnd Bergmann, Hans de Goede, Mark Gross
  Cc: Greg Kroah-Hartman, Linux Kernel Mailing List,
	Linux Next Mailing List, Matthew Gerlach, Maximilian Luz,
	Moritz Fischer, Russ Weight, Wu Hao, Xu Yilun

[-- Attachment #1: Type: text/plain, Size: 5512 bytes --]

Hi all,

On Mon, 11 Jan 2021 13:08:51 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the char-misc tree got conflicts in:
> 
>   include/linux/mod_devicetable.h
>   scripts/mod/devicetable-offsets.c
>   scripts/mod/file2alias.c
> 
> between commit:
> 
>   eb0e90a82098 ("platform/surface: aggregator: Add dedicated bus and device type")
> 
> from the drivers-x86 tree and commits:
> 
>   9326eecd9365 ("fpga: dfl: move dfl_device_id to mod_devicetable.h")
>   4a224acec597 ("fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE()")
> 
> from the char-misc tree.
> 
> I fixed it up (see below) 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.
> 
> -- 
> Cheers,
> Stephen Rothwell
> 
> diff --cc include/linux/mod_devicetable.h
> index 935060955152,b8dae34eca10..000000000000
> --- a/include/linux/mod_devicetable.h
> +++ b/include/linux/mod_devicetable.h
> @@@ -846,22 -846,28 +846,46 @@@ struct auxiliary_device_id 
>   	kernel_ulong_t driver_data;
>   };
>   
>  +/* Surface System Aggregator Module */
>  +
>  +#define SSAM_MATCH_TARGET	0x1
>  +#define SSAM_MATCH_INSTANCE	0x2
>  +#define SSAM_MATCH_FUNCTION	0x4
>  +
>  +struct ssam_device_id {
>  +	__u8 match_flags;
>  +
>  +	__u8 domain;
>  +	__u8 category;
>  +	__u8 target;
>  +	__u8 instance;
>  +	__u8 function;
>  +
>  +	kernel_ulong_t driver_data;
>  +};
>  +
> + /*
> +  * DFL (Device Feature List)
> +  *
> +  * DFL defines a linked list of feature headers within the device MMIO space to
> +  * provide an extensible way of adding features. Software can walk through these
> +  * predefined data structures to enumerate features. It is now used in the FPGA.
> +  * See Documentation/fpga/dfl.rst for more information.
> +  *
> +  * The dfl bus type is introduced to match the individual feature devices (dfl
> +  * devices) for specific dfl drivers.
> +  */
> + 
> + /**
> +  * struct dfl_device_id -  dfl device identifier
> +  * @type: DFL FIU type of the device. See enum dfl_id_type.
> +  * @feature_id: feature identifier local to its DFL FIU type.
> +  * @driver_data: driver specific data.
> +  */
> + struct dfl_device_id {
> + 	__u16 type;
> + 	__u16 feature_id;
> + 	kernel_ulong_t driver_data;
> + };
> + 
>   #endif /* LINUX_MOD_DEVICETABLE_H */
> diff --cc scripts/mod/devicetable-offsets.c
> index f078eeb0a961,1b14f3cde4e5..000000000000
> --- a/scripts/mod/devicetable-offsets.c
> +++ b/scripts/mod/devicetable-offsets.c
> @@@ -246,13 -246,9 +246,17 @@@ int main(void
>   	DEVID(auxiliary_device_id);
>   	DEVID_FIELD(auxiliary_device_id, name);
>   
>  +	DEVID(ssam_device_id);
>  +	DEVID_FIELD(ssam_device_id, match_flags);
>  +	DEVID_FIELD(ssam_device_id, domain);
>  +	DEVID_FIELD(ssam_device_id, category);
>  +	DEVID_FIELD(ssam_device_id, target);
>  +	DEVID_FIELD(ssam_device_id, instance);
>  +	DEVID_FIELD(ssam_device_id, function);
>  +
> + 	DEVID(dfl_device_id);
> + 	DEVID_FIELD(dfl_device_id, type);
> + 	DEVID_FIELD(dfl_device_id, feature_id);
> + 
>   	return 0;
>   }
> diff --cc scripts/mod/file2alias.c
> index d21d2871387b,7ebabeb1e9c9..000000000000
> --- a/scripts/mod/file2alias.c
> +++ b/scripts/mod/file2alias.c
> @@@ -1375,28 -1375,18 +1375,40 @@@ static int do_auxiliary_entry(const cha
>   	return 1;
>   }
>   
>  +/*
>  + * Looks like: ssam:dNcNtNiNfN
>  + *
>  + * N is exactly 2 digits, where each is an upper-case hex digit.
>  + */
>  +static int do_ssam_entry(const char *filename, void *symval, char *alias)
>  +{
>  +	DEF_FIELD(symval, ssam_device_id, match_flags);
>  +	DEF_FIELD(symval, ssam_device_id, domain);
>  +	DEF_FIELD(symval, ssam_device_id, category);
>  +	DEF_FIELD(symval, ssam_device_id, target);
>  +	DEF_FIELD(symval, ssam_device_id, instance);
>  +	DEF_FIELD(symval, ssam_device_id, function);
>  +
>  +	sprintf(alias, "ssam:d%02Xc%02X", domain, category);
>  +	ADD(alias, "t", match_flags & SSAM_MATCH_TARGET, target);
>  +	ADD(alias, "i", match_flags & SSAM_MATCH_INSTANCE, instance);
>  +	ADD(alias, "f", match_flags & SSAM_MATCH_FUNCTION, function);
>  +
>  +	return 1;
>  +}
>  +
> + /* Looks like: dfl:tNfN */
> + static int do_dfl_entry(const char *filename, void *symval, char *alias)
> + {
> + 	DEF_FIELD(symval, dfl_device_id, type);
> + 	DEF_FIELD(symval, dfl_device_id, feature_id);
> + 
> + 	sprintf(alias, "dfl:t%04Xf%04X", type, feature_id);
> + 
> + 	add_wildcard(alias);
> + 	return 1;
> + }
> + 
>   /* Does namelen bytes of name exactly match the symbol? */
>   static bool sym_is(const char *name, unsigned namelen, const char *symbol)
>   {
> @@@ -1472,7 -1462,7 +1484,8 @@@ static const struct devtable devtable[
>   	{"wmi", SIZE_wmi_device_id, do_wmi_entry},
>   	{"mhi", SIZE_mhi_device_id, do_mhi_entry},
>   	{"auxiliary", SIZE_auxiliary_device_id, do_auxiliary_entry},
>  +	{"ssam", SIZE_ssam_device_id, do_ssam_entry},
> + 	{"dfl", SIZE_dfl_device_id, do_dfl_entry},
>   };
>   
>   /* Create MODULE_ALIAS() statements.

With the merge window about to open, this is a reminder that this
conflict still exists.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: linux-next: manual merge of the char-misc tree with the drivers-x86 tree
  2021-02-14 20:44 ` Stephen Rothwell
@ 2021-02-23  3:28   ` Stephen Rothwell
  2021-02-25  7:00     ` Greg KH
  0 siblings, 1 reply; 5+ messages in thread
From: Stephen Rothwell @ 2021-02-23  3:28 UTC (permalink / raw)
  To: Greg KH, Arnd Bergmann
  Cc: Hans de Goede, Mark Gross, Greg Kroah-Hartman,
	Linux Kernel Mailing List, Linux Next Mailing List,
	Matthew Gerlach, Maximilian Luz, Moritz Fischer, Russ Weight,
	Wu Hao, Xu Yilun

[-- Attachment #1: Type: text/plain, Size: 5940 bytes --]

Hi all,

On Mon, 15 Feb 2021 07:44:31 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> On Mon, 11 Jan 2021 13:08:51 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> >
> > Today's linux-next merge of the char-misc tree got conflicts in:
> > 
> >   include/linux/mod_devicetable.h
> >   scripts/mod/devicetable-offsets.c
> >   scripts/mod/file2alias.c
> > 
> > between commit:
> > 
> >   eb0e90a82098 ("platform/surface: aggregator: Add dedicated bus and device type")
> > 
> > from the drivers-x86 tree and commits:
> > 
> >   9326eecd9365 ("fpga: dfl: move dfl_device_id to mod_devicetable.h")
> >   4a224acec597 ("fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE()")
> > 
> > from the char-misc tree.
> > 
> > I fixed it up (see below) 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.
> > 
> > diff --cc include/linux/mod_devicetable.h
> > index 935060955152,b8dae34eca10..000000000000
> > --- a/include/linux/mod_devicetable.h
> > +++ b/include/linux/mod_devicetable.h
> > @@@ -846,22 -846,28 +846,46 @@@ struct auxiliary_device_id 
> >   	kernel_ulong_t driver_data;
> >   };
> >   
> >  +/* Surface System Aggregator Module */
> >  +
> >  +#define SSAM_MATCH_TARGET	0x1
> >  +#define SSAM_MATCH_INSTANCE	0x2
> >  +#define SSAM_MATCH_FUNCTION	0x4
> >  +
> >  +struct ssam_device_id {
> >  +	__u8 match_flags;
> >  +
> >  +	__u8 domain;
> >  +	__u8 category;
> >  +	__u8 target;
> >  +	__u8 instance;
> >  +	__u8 function;
> >  +
> >  +	kernel_ulong_t driver_data;
> >  +};
> >  +
> > + /*
> > +  * DFL (Device Feature List)
> > +  *
> > +  * DFL defines a linked list of feature headers within the device MMIO space to
> > +  * provide an extensible way of adding features. Software can walk through these
> > +  * predefined data structures to enumerate features. It is now used in the FPGA.
> > +  * See Documentation/fpga/dfl.rst for more information.
> > +  *
> > +  * The dfl bus type is introduced to match the individual feature devices (dfl
> > +  * devices) for specific dfl drivers.
> > +  */
> > + 
> > + /**
> > +  * struct dfl_device_id -  dfl device identifier
> > +  * @type: DFL FIU type of the device. See enum dfl_id_type.
> > +  * @feature_id: feature identifier local to its DFL FIU type.
> > +  * @driver_data: driver specific data.
> > +  */
> > + struct dfl_device_id {
> > + 	__u16 type;
> > + 	__u16 feature_id;
> > + 	kernel_ulong_t driver_data;
> > + };
> > + 
> >   #endif /* LINUX_MOD_DEVICETABLE_H */
> > diff --cc scripts/mod/devicetable-offsets.c
> > index f078eeb0a961,1b14f3cde4e5..000000000000
> > --- a/scripts/mod/devicetable-offsets.c
> > +++ b/scripts/mod/devicetable-offsets.c
> > @@@ -246,13 -246,9 +246,17 @@@ int main(void
> >   	DEVID(auxiliary_device_id);
> >   	DEVID_FIELD(auxiliary_device_id, name);
> >   
> >  +	DEVID(ssam_device_id);
> >  +	DEVID_FIELD(ssam_device_id, match_flags);
> >  +	DEVID_FIELD(ssam_device_id, domain);
> >  +	DEVID_FIELD(ssam_device_id, category);
> >  +	DEVID_FIELD(ssam_device_id, target);
> >  +	DEVID_FIELD(ssam_device_id, instance);
> >  +	DEVID_FIELD(ssam_device_id, function);
> >  +
> > + 	DEVID(dfl_device_id);
> > + 	DEVID_FIELD(dfl_device_id, type);
> > + 	DEVID_FIELD(dfl_device_id, feature_id);
> > + 
> >   	return 0;
> >   }
> > diff --cc scripts/mod/file2alias.c
> > index d21d2871387b,7ebabeb1e9c9..000000000000
> > --- a/scripts/mod/file2alias.c
> > +++ b/scripts/mod/file2alias.c
> > @@@ -1375,28 -1375,18 +1375,40 @@@ static int do_auxiliary_entry(const cha
> >   	return 1;
> >   }
> >   
> >  +/*
> >  + * Looks like: ssam:dNcNtNiNfN
> >  + *
> >  + * N is exactly 2 digits, where each is an upper-case hex digit.
> >  + */
> >  +static int do_ssam_entry(const char *filename, void *symval, char *alias)
> >  +{
> >  +	DEF_FIELD(symval, ssam_device_id, match_flags);
> >  +	DEF_FIELD(symval, ssam_device_id, domain);
> >  +	DEF_FIELD(symval, ssam_device_id, category);
> >  +	DEF_FIELD(symval, ssam_device_id, target);
> >  +	DEF_FIELD(symval, ssam_device_id, instance);
> >  +	DEF_FIELD(symval, ssam_device_id, function);
> >  +
> >  +	sprintf(alias, "ssam:d%02Xc%02X", domain, category);
> >  +	ADD(alias, "t", match_flags & SSAM_MATCH_TARGET, target);
> >  +	ADD(alias, "i", match_flags & SSAM_MATCH_INSTANCE, instance);
> >  +	ADD(alias, "f", match_flags & SSAM_MATCH_FUNCTION, function);
> >  +
> >  +	return 1;
> >  +}
> >  +
> > + /* Looks like: dfl:tNfN */
> > + static int do_dfl_entry(const char *filename, void *symval, char *alias)
> > + {
> > + 	DEF_FIELD(symval, dfl_device_id, type);
> > + 	DEF_FIELD(symval, dfl_device_id, feature_id);
> > + 
> > + 	sprintf(alias, "dfl:t%04Xf%04X", type, feature_id);
> > + 
> > + 	add_wildcard(alias);
> > + 	return 1;
> > + }
> > + 
> >   /* Does namelen bytes of name exactly match the symbol? */
> >   static bool sym_is(const char *name, unsigned namelen, const char *symbol)
> >   {
> > @@@ -1472,7 -1462,7 +1484,8 @@@ static const struct devtable devtable[
> >   	{"wmi", SIZE_wmi_device_id, do_wmi_entry},
> >   	{"mhi", SIZE_mhi_device_id, do_mhi_entry},
> >   	{"auxiliary", SIZE_auxiliary_device_id, do_auxiliary_entry},
> >  +	{"ssam", SIZE_ssam_device_id, do_ssam_entry},
> > + 	{"dfl", SIZE_dfl_device_id, do_dfl_entry},
> >   };
> >   
> >   /* Create MODULE_ALIAS() statements.  
> 
> With the merge window about to open, this is a reminder that this
> conflict still exists.

This is now a conflict between the char-misc tree and Linus' tree.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: linux-next: manual merge of the char-misc tree with the drivers-x86 tree
  2021-02-23  3:28   ` Stephen Rothwell
@ 2021-02-25  7:00     ` Greg KH
  0 siblings, 0 replies; 5+ messages in thread
From: Greg KH @ 2021-02-25  7:00 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Arnd Bergmann, Hans de Goede, Mark Gross,
	Linux Kernel Mailing List, Linux Next Mailing List,
	Matthew Gerlach, Maximilian Luz, Moritz Fischer, Russ Weight,
	Wu Hao, Xu Yilun

On Tue, Feb 23, 2021 at 02:28:33PM +1100, Stephen Rothwell wrote:
> Hi all,
> 
> On Mon, 15 Feb 2021 07:44:31 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> >
> > On Mon, 11 Jan 2021 13:08:51 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> > >
> > > Today's linux-next merge of the char-misc tree got conflicts in:
> > > 
> > >   include/linux/mod_devicetable.h
> > >   scripts/mod/devicetable-offsets.c
> > >   scripts/mod/file2alias.c
> > > 
> > > between commit:
> > > 
> > >   eb0e90a82098 ("platform/surface: aggregator: Add dedicated bus and device type")
> > > 
> > > from the drivers-x86 tree and commits:
> > > 
> > >   9326eecd9365 ("fpga: dfl: move dfl_device_id to mod_devicetable.h")
> > >   4a224acec597 ("fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE()")
> > > 
> > > from the char-misc tree.
> > > 
> > > I fixed it up (see below) 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.
> > > 
> > > diff --cc include/linux/mod_devicetable.h
> > > index 935060955152,b8dae34eca10..000000000000
> > > --- a/include/linux/mod_devicetable.h
> > > +++ b/include/linux/mod_devicetable.h
> > > @@@ -846,22 -846,28 +846,46 @@@ struct auxiliary_device_id 
> > >   	kernel_ulong_t driver_data;
> > >   };
> > >   
> > >  +/* Surface System Aggregator Module */
> > >  +
> > >  +#define SSAM_MATCH_TARGET	0x1
> > >  +#define SSAM_MATCH_INSTANCE	0x2
> > >  +#define SSAM_MATCH_FUNCTION	0x4
> > >  +
> > >  +struct ssam_device_id {
> > >  +	__u8 match_flags;
> > >  +
> > >  +	__u8 domain;
> > >  +	__u8 category;
> > >  +	__u8 target;
> > >  +	__u8 instance;
> > >  +	__u8 function;
> > >  +
> > >  +	kernel_ulong_t driver_data;
> > >  +};
> > >  +
> > > + /*
> > > +  * DFL (Device Feature List)
> > > +  *
> > > +  * DFL defines a linked list of feature headers within the device MMIO space to
> > > +  * provide an extensible way of adding features. Software can walk through these
> > > +  * predefined data structures to enumerate features. It is now used in the FPGA.
> > > +  * See Documentation/fpga/dfl.rst for more information.
> > > +  *
> > > +  * The dfl bus type is introduced to match the individual feature devices (dfl
> > > +  * devices) for specific dfl drivers.
> > > +  */
> > > + 
> > > + /**
> > > +  * struct dfl_device_id -  dfl device identifier
> > > +  * @type: DFL FIU type of the device. See enum dfl_id_type.
> > > +  * @feature_id: feature identifier local to its DFL FIU type.
> > > +  * @driver_data: driver specific data.
> > > +  */
> > > + struct dfl_device_id {
> > > + 	__u16 type;
> > > + 	__u16 feature_id;
> > > + 	kernel_ulong_t driver_data;
> > > + };
> > > + 
> > >   #endif /* LINUX_MOD_DEVICETABLE_H */
> > > diff --cc scripts/mod/devicetable-offsets.c
> > > index f078eeb0a961,1b14f3cde4e5..000000000000
> > > --- a/scripts/mod/devicetable-offsets.c
> > > +++ b/scripts/mod/devicetable-offsets.c
> > > @@@ -246,13 -246,9 +246,17 @@@ int main(void
> > >   	DEVID(auxiliary_device_id);
> > >   	DEVID_FIELD(auxiliary_device_id, name);
> > >   
> > >  +	DEVID(ssam_device_id);
> > >  +	DEVID_FIELD(ssam_device_id, match_flags);
> > >  +	DEVID_FIELD(ssam_device_id, domain);
> > >  +	DEVID_FIELD(ssam_device_id, category);
> > >  +	DEVID_FIELD(ssam_device_id, target);
> > >  +	DEVID_FIELD(ssam_device_id, instance);
> > >  +	DEVID_FIELD(ssam_device_id, function);
> > >  +
> > > + 	DEVID(dfl_device_id);
> > > + 	DEVID_FIELD(dfl_device_id, type);
> > > + 	DEVID_FIELD(dfl_device_id, feature_id);
> > > + 
> > >   	return 0;
> > >   }
> > > diff --cc scripts/mod/file2alias.c
> > > index d21d2871387b,7ebabeb1e9c9..000000000000
> > > --- a/scripts/mod/file2alias.c
> > > +++ b/scripts/mod/file2alias.c
> > > @@@ -1375,28 -1375,18 +1375,40 @@@ static int do_auxiliary_entry(const cha
> > >   	return 1;
> > >   }
> > >   
> > >  +/*
> > >  + * Looks like: ssam:dNcNtNiNfN
> > >  + *
> > >  + * N is exactly 2 digits, where each is an upper-case hex digit.
> > >  + */
> > >  +static int do_ssam_entry(const char *filename, void *symval, char *alias)
> > >  +{
> > >  +	DEF_FIELD(symval, ssam_device_id, match_flags);
> > >  +	DEF_FIELD(symval, ssam_device_id, domain);
> > >  +	DEF_FIELD(symval, ssam_device_id, category);
> > >  +	DEF_FIELD(symval, ssam_device_id, target);
> > >  +	DEF_FIELD(symval, ssam_device_id, instance);
> > >  +	DEF_FIELD(symval, ssam_device_id, function);
> > >  +
> > >  +	sprintf(alias, "ssam:d%02Xc%02X", domain, category);
> > >  +	ADD(alias, "t", match_flags & SSAM_MATCH_TARGET, target);
> > >  +	ADD(alias, "i", match_flags & SSAM_MATCH_INSTANCE, instance);
> > >  +	ADD(alias, "f", match_flags & SSAM_MATCH_FUNCTION, function);
> > >  +
> > >  +	return 1;
> > >  +}
> > >  +
> > > + /* Looks like: dfl:tNfN */
> > > + static int do_dfl_entry(const char *filename, void *symval, char *alias)
> > > + {
> > > + 	DEF_FIELD(symval, dfl_device_id, type);
> > > + 	DEF_FIELD(symval, dfl_device_id, feature_id);
> > > + 
> > > + 	sprintf(alias, "dfl:t%04Xf%04X", type, feature_id);
> > > + 
> > > + 	add_wildcard(alias);
> > > + 	return 1;
> > > + }
> > > + 
> > >   /* Does namelen bytes of name exactly match the symbol? */
> > >   static bool sym_is(const char *name, unsigned namelen, const char *symbol)
> > >   {
> > > @@@ -1472,7 -1462,7 +1484,8 @@@ static const struct devtable devtable[
> > >   	{"wmi", SIZE_wmi_device_id, do_wmi_entry},
> > >   	{"mhi", SIZE_mhi_device_id, do_mhi_entry},
> > >   	{"auxiliary", SIZE_auxiliary_device_id, do_auxiliary_entry},
> > >  +	{"ssam", SIZE_ssam_device_id, do_ssam_entry},
> > > + 	{"dfl", SIZE_dfl_device_id, do_dfl_entry},
> > >   };
> > >   
> > >   /* Create MODULE_ALIAS() statements.  
> > 
> > With the merge window about to open, this is a reminder that this
> > conflict still exists.
> 
> This is now a conflict between the char-misc tree and Linus' tree.

Linus resolved this now.

thnaks,

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-02-25  7:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-11  2:08 linux-next: manual merge of the char-misc tree with the drivers-x86 tree Stephen Rothwell
2021-01-11  7:25 ` Greg KH
2021-02-14 20:44 ` Stephen Rothwell
2021-02-23  3:28   ` Stephen Rothwell
2021-02-25  7:00     ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).