All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 12:48 ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 12:48 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel
  Cc: kernel-janitors, Quentin Lambert

You should use dev_groups instead of the dev_attrs field of struct
bus_type. This converts the MDIO bus code to use the correct field.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 sound/aoa/soundbus/core.c     |    3 ++-
 sound/aoa/soundbus/soundbus.h |    2 +-
 sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
 3 files changed, 11 insertions(+), 7 deletions(-)

--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,7 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+ATTRIBUTE_GROUPS(soundbus_dev);
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +161,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,6 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
+extern struct attribute *soundbus_dev_attrs[];
 
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ b/sound/aoa/soundbus/sysfs.c
@@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
 
 	return length;
 }
+static DEVICE_ATTR_RO(modalias);
 
 soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
 soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
 
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
 };

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

* [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 12:48 ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 12:48 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel
  Cc: kernel-janitors, Quentin Lambert

You should use dev_groups instead of the dev_attrs field of struct
bus_type. This converts the MDIO bus code to use the correct field.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 sound/aoa/soundbus/core.c     |    3 ++-
 sound/aoa/soundbus/soundbus.h |    2 +-
 sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
 3 files changed, 11 insertions(+), 7 deletions(-)

--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,7 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+ATTRIBUTE_GROUPS(soundbus_dev);
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +161,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,6 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
+extern struct attribute *soundbus_dev_attrs[];
 
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ b/sound/aoa/soundbus/sysfs.c
@@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
 
 	return length;
 }
+static DEVICE_ATTR_RO(modalias);
 
 soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
 soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
 
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
 };

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 12:48 ` Quentin Lambert
@ 2015-05-28 13:52   ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 13:52 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 14:48:27 +0200,
Quentin Lambert wrote:
> 
> You should use dev_groups instead of the dev_attrs field of struct
> bus_type. This converts the MDIO bus code to use the correct field.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>

What's wrong with dev_attrs?
(Not offending, I'm just curious where the preference for dev_groups
 is referred...)


thanks,

Takashi

> ---
>  sound/aoa/soundbus/core.c     |    3 ++-
>  sound/aoa/soundbus/soundbus.h |    2 +-
>  sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
>  3 files changed, 11 insertions(+), 7 deletions(-)
> 
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,7 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +ATTRIBUTE_GROUPS(soundbus_dev);
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +161,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,6 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> +extern struct attribute *soundbus_dev_attrs[];
>  
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ b/sound/aoa/soundbus/sysfs.c
> @@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
>  
>  	return length;
>  }
> +static DEVICE_ATTR_RO(modalias);
>  
>  soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
>  soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
>  
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
>  };
> 

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 13:52   ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 13:52 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 14:48:27 +0200,
Quentin Lambert wrote:
> 
> You should use dev_groups instead of the dev_attrs field of struct
> bus_type. This converts the MDIO bus code to use the correct field.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>

What's wrong with dev_attrs?
(Not offending, I'm just curious where the preference for dev_groups
 is referred...)


thanks,

Takashi

> ---
>  sound/aoa/soundbus/core.c     |    3 ++-
>  sound/aoa/soundbus/soundbus.h |    2 +-
>  sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
>  3 files changed, 11 insertions(+), 7 deletions(-)
> 
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,7 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +ATTRIBUTE_GROUPS(soundbus_dev);
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +161,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,6 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> +extern struct attribute *soundbus_dev_attrs[];
>  
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ b/sound/aoa/soundbus/sysfs.c
> @@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
>  
>  	return length;
>  }
> +static DEVICE_ATTR_RO(modalias);
>  
>  soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
>  soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
>  
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
>  };
> 

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 13:52   ` Takashi Iwai
@ 2015-05-28 13:59     ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 13:59 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 15:52, Takashi Iwai wrote:
> At Thu, 28 May 2015 14:48:27 +0200,
> Quentin Lambert wrote:
>> You should use dev_groups instead of the dev_attrs field of struct
>> bus_type. This converts the MDIO bus code to use the correct field.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> What's wrong with dev_attrs?
> (Not offending, I'm just curious where the preference for dev_groups
>   is referred...)

This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
its message indicates that dev_attrs is going away.

Quentin


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 13:59     ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 13:59 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 15:52, Takashi Iwai wrote:
> At Thu, 28 May 2015 14:48:27 +0200,
> Quentin Lambert wrote:
>> You should use dev_groups instead of the dev_attrs field of struct
>> bus_type. This converts the MDIO bus code to use the correct field.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> What's wrong with dev_attrs?
> (Not offending, I'm just curious where the preference for dev_groups
>   is referred...)

This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
its message indicates that dev_attrs is going away.

Quentin


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 13:52   ` Takashi Iwai
@ 2015-05-28 13:59     ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 13:59 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 15:52, Takashi Iwai wrote:
> At Thu, 28 May 2015 14:48:27 +0200,
> Quentin Lambert wrote:
>> You should use dev_groups instead of the dev_attrs field of struct
>> bus_type. This converts the MDIO bus code to use the correct field.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> What's wrong with dev_attrs?
> (Not offending, I'm just curious where the preference for dev_groups
>   is referred...)

This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
its message indicates that dev_attrs is going away.

Quentin


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 13:59     ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 13:59 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 15:52, Takashi Iwai wrote:
> At Thu, 28 May 2015 14:48:27 +0200,
> Quentin Lambert wrote:
>> You should use dev_groups instead of the dev_attrs field of struct
>> bus_type. This converts the MDIO bus code to use the correct field.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> What's wrong with dev_attrs?
> (Not offending, I'm just curious where the preference for dev_groups
>   is referred...)

This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
its message indicates that dev_attrs is going away.

Quentin


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 13:59     ` Quentin Lambert
@ 2015-05-28 14:09       ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 14:09 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 15:59:50 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 28/05/2015 15:52, Takashi Iwai wrote:
> > At Thu, 28 May 2015 14:48:27 +0200,
> > Quentin Lambert wrote:
> >> You should use dev_groups instead of the dev_attrs field of struct
> >> bus_type. This converts the MDIO bus code to use the correct field.
> >>
> >> These modifications were made using Coccinelle.
> >>
> >> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> > What's wrong with dev_attrs?
> > (Not offending, I'm just curious where the preference for dev_groups
> >   is referred...)
> 
> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
> its message indicates that dev_attrs is going away.

OK, makes sense.  Then please keep such information in the changelog.
BTW, the code in question isn't MDIO at all.

Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
soundbus/sysfs.c, and make it this global instead of
soundbus_dev_attrs[].


Takashi

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 14:09       ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 14:09 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 15:59:50 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 28/05/2015 15:52, Takashi Iwai wrote:
> > At Thu, 28 May 2015 14:48:27 +0200,
> > Quentin Lambert wrote:
> >> You should use dev_groups instead of the dev_attrs field of struct
> >> bus_type. This converts the MDIO bus code to use the correct field.
> >>
> >> These modifications were made using Coccinelle.
> >>
> >> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> > What's wrong with dev_attrs?
> > (Not offending, I'm just curious where the preference for dev_groups
> >   is referred...)
> 
> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
> its message indicates that dev_attrs is going away.

OK, makes sense.  Then please keep such information in the changelog.
BTW, the code in question isn't MDIO at all.

Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
soundbus/sysfs.c, and make it this global instead of
soundbus_dev_attrs[].


Takashi

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 14:09       ` Takashi Iwai
@ 2015-05-28 14:43         ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 14:43 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

On 28/05/2015 16:09, Takashi Iwai wrote:
> At Thu, 28 May 2015 15:59:50 +0200,
> Quentin Lambert wrote:
>>
>>
>> On 28/05/2015 15:52, Takashi Iwai wrote:
>>> At Thu, 28 May 2015 14:48:27 +0200,
>>> Quentin Lambert wrote:
>>>> You should use dev_groups instead of the dev_attrs field of struct
>>>> bus_type. This converts the MDIO bus code to use the correct field.
>>>>
>>>> These modifications were made using Coccinelle.
>>>>
>>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>>> What's wrong with dev_attrs?
>>> (Not offending, I'm just curious where the preference for dev_groups
>>>    is referred...)
>> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
>> its message indicates that dev_attrs is going away.
> OK, makes sense.  Then please keep such information in the changelog.
> BTW, the code in question isn't MDIO at all.
Sorry, about that!
>
> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> soundbus/sysfs.c, and make it this global instead of
> soundbus_dev_attrs[].
Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS 
declares the
structure as static. I will send a second version with a better solution.

Quentin
>
>
> Takashi


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 14:43         ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-28 14:43 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

On 28/05/2015 16:09, Takashi Iwai wrote:
> At Thu, 28 May 2015 15:59:50 +0200,
> Quentin Lambert wrote:
>>
>>
>> On 28/05/2015 15:52, Takashi Iwai wrote:
>>> At Thu, 28 May 2015 14:48:27 +0200,
>>> Quentin Lambert wrote:
>>>> You should use dev_groups instead of the dev_attrs field of struct
>>>> bus_type. This converts the MDIO bus code to use the correct field.
>>>>
>>>> These modifications were made using Coccinelle.
>>>>
>>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>>> What's wrong with dev_attrs?
>>> (Not offending, I'm just curious where the preference for dev_groups
>>>    is referred...)
>> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
>> its message indicates that dev_attrs is going away.
> OK, makes sense.  Then please keep such information in the changelog.
> BTW, the code in question isn't MDIO at all.
Sorry, about that!
>
> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> soundbus/sysfs.c, and make it this global instead of
> soundbus_dev_attrs[].
Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS 
declares the
structure as static. I will send a second version with a better solution.

Quentin
>
>
> Takashi


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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 14:43         ` Quentin Lambert
@ 2015-05-28 15:01           ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 15:01 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 16:43:12 +0200,
Quentin Lambert wrote:
> 
> On 28/05/2015 16:09, Takashi Iwai wrote:
> > At Thu, 28 May 2015 15:59:50 +0200,
> > Quentin Lambert wrote:
> >>
> >>
> >> On 28/05/2015 15:52, Takashi Iwai wrote:
> >>> At Thu, 28 May 2015 14:48:27 +0200,
> >>> Quentin Lambert wrote:
> >>>> You should use dev_groups instead of the dev_attrs field of struct
> >>>> bus_type. This converts the MDIO bus code to use the correct field.
> >>>>
> >>>> These modifications were made using Coccinelle.
> >>>>
> >>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> >>> What's wrong with dev_attrs?
> >>> (Not offending, I'm just curious where the preference for dev_groups
> >>>    is referred...)
> >> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
> >> its message indicates that dev_attrs is going away.
> > OK, makes sense.  Then please keep such information in the changelog.
> > BTW, the code in question isn't MDIO at all.
> Sorry, about that!
> >
> > Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> > soundbus/sysfs.c, and make it this global instead of
> > soundbus_dev_attrs[].
> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS 
> declares the
> structure as static.

Ah, right.  I fell to the same pintfall in the past, too :)

>I will send a second version with a better solution.

If it results in an ungly code, it's fine with the original code,
too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
defined in xxx.c.


thanks,

Takashi

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-28 15:01           ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-28 15:01 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Thu, 28 May 2015 16:43:12 +0200,
Quentin Lambert wrote:
> 
> On 28/05/2015 16:09, Takashi Iwai wrote:
> > At Thu, 28 May 2015 15:59:50 +0200,
> > Quentin Lambert wrote:
> >>
> >>
> >> On 28/05/2015 15:52, Takashi Iwai wrote:
> >>> At Thu, 28 May 2015 14:48:27 +0200,
> >>> Quentin Lambert wrote:
> >>>> You should use dev_groups instead of the dev_attrs field of struct
> >>>> bus_type. This converts the MDIO bus code to use the correct field.
> >>>>
> >>>> These modifications were made using Coccinelle.
> >>>>
> >>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> >>> What's wrong with dev_attrs?
> >>> (Not offending, I'm just curious where the preference for dev_groups
> >>>    is referred...)
> >> This patch is based on commit 4192c74940e23da727eb02b7b4ee779dde2f670,
> >> its message indicates that dev_attrs is going away.
> > OK, makes sense.  Then please keep such information in the changelog.
> > BTW, the code in question isn't MDIO at all.
> Sorry, about that!
> >
> > Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> > soundbus/sysfs.c, and make it this global instead of
> > soundbus_dev_attrs[].
> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS 
> declares the
> structure as static.

Ah, right.  I fell to the same pintfall in the past, too :)

>I will send a second version with a better solution.

If it results in an ungly code, it's fine with the original code,
too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
defined in xxx.c.


thanks,

Takashi

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 15:01           ` Takashi Iwai
@ 2015-05-29 15:49             ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-29 15:49 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 17:01, Takashi Iwai wrote:
>>> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
>>> soundbus/sysfs.c, and make it this global instead of
>>> soundbus_dev_attrs[].
>> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS
>> declares the
>> structure as static.
>
> If it results in an ungly code, it's fine with the original code,
> too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
> defined in xxx.c.
>
>
Since sound/aoa/soundbus/sysfs is small, a solution would be
to merge sound/aoa/soundbus/sysfs.c and sound/aoa/soundus/core.c.
Moreover all 172 other usages of the ATTRIBUTE_GROUPS macro
define the struct attribute *xxx_attrs[] in the same file
they assign the .dev_groups field.

I'm not sure about this change as it seems way more important than
adding a comment line as you suggested.

Should I send a patch merging these two files?

Quentin

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-29 15:49             ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-05-29 15:49 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors



On 28/05/2015 17:01, Takashi Iwai wrote:
>>> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
>>> soundbus/sysfs.c, and make it this global instead of
>>> soundbus_dev_attrs[].
>> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS
>> declares the
>> structure as static.
>
> If it results in an ungly code, it's fine with the original code,
> too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
> defined in xxx.c.
>
>
Since sound/aoa/soundbus/sysfs is small, a solution would be
to merge sound/aoa/soundbus/sysfs.c and sound/aoa/soundus/core.c.
Moreover all 172 other usages of the ATTRIBUTE_GROUPS macro
define the struct attribute *xxx_attrs[] in the same file
they assign the .dev_groups field.

I'm not sure about this change as it seems way more important than
adding a comment line as you suggested.

Should I send a patch merging these two files?

Quentin

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
  2015-05-29 15:49             ` Quentin Lambert
@ 2015-05-29 15:53               ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-29 15:53 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Fri, 29 May 2015 17:49:06 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 28/05/2015 17:01, Takashi Iwai wrote:
> >>> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> >>> soundbus/sysfs.c, and make it this global instead of
> >>> soundbus_dev_attrs[].
> >> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS
> >> declares the
> >> structure as static.
> >
> > If it results in an ungly code, it's fine with the original code,
> > too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
> > defined in xxx.c.
> >
> >
> Since sound/aoa/soundbus/sysfs is small, a solution would be
> to merge sound/aoa/soundbus/sysfs.c and sound/aoa/soundus/core.c.
> Moreover all 172 other usages of the ATTRIBUTE_GROUPS macro
> define the struct attribute *xxx_attrs[] in the same file
> they assign the .dev_groups field.
> 
> I'm not sure about this change as it seems way more important than
> adding a comment line as you suggested.

Not "important" but more "radical", I'd say.

> Should I send a patch merging these two files?

I don't think it's worth.  This is a fairly old hardware, thus the
code isn't so actively used/maintained.  Unless it looks too ugly, we
shouldn't touch too many things just for refactoring.

So, go for the way to have a minimum change.


thanks,

Takashi

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

* Re: [PATCH] ALSA: aoa: convert bus code to use dev_groups
@ 2015-05-29 15:53               ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-05-29 15:53 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linuxppc-dev, alsa-devel,
	linux-kernel, kernel-janitors

At Fri, 29 May 2015 17:49:06 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 28/05/2015 17:01, Takashi Iwai wrote:
> >>> Also, it'd be better to move ATTRIBUTE_GROUPS(soundbus_dev) into
> >>> soundbus/sysfs.c, and make it this global instead of
> >>> soundbus_dev_attrs[].
> >> Ok, I need to find a nice way to do that because ATTRIBUTE_GROUPS
> >> declares the
> >> structure as static.
> >
> > If it results in an ungly code, it's fine with the original code,
> > too.  But, maybe with a comment indicating that xxx_dev_attrs[] is
> > defined in xxx.c.
> >
> >
> Since sound/aoa/soundbus/sysfs is small, a solution would be
> to merge sound/aoa/soundbus/sysfs.c and sound/aoa/soundus/core.c.
> Moreover all 172 other usages of the ATTRIBUTE_GROUPS macro
> define the struct attribute *xxx_attrs[] in the same file
> they assign the .dev_groups field.
> 
> I'm not sure about this change as it seems way more important than
> adding a comment line as you suggested.

Not "important" but more "radical", I'd say.

> Should I send a patch merging these two files?

I don't think it's worth.  This is a fairly old hardware, thus the
code isn't so actively used/maintained.  Unless it looks too ugly, we
shouldn't touch too many things just for refactoring.

So, go for the way to have a minimum change.


thanks,

Takashi

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

* [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 12:48 ` Quentin Lambert
@ 2015-06-11  8:03   ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11  8:03 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel
  Cc: kernel-janitors, Quentin Lambert


The dev_attrs field of struct bus_type is going away, use dev_groups instead.
This converts the soundbus code to use the correct field.

Given that all other usages of the macro define the struct attribute
*xxx_attrs[] in the same file they assign the .dev_groups field, this patch
merges sysfs.c into core.c.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 Changes since v1:
  - Fix the commit message to actually talk about soundbus rather than MDIO
  - This version attempt to fix a problem resulting from the macro
    ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
    core.c. I understand that this may not be the prefered solution since 
    Takashi suggested that adding a comment line to the previous version could
    be acceptable. 

 sound/aoa/soundbus/Makefile   |    2 -
 sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
 sound/aoa/soundbus/soundbus.h |    2 -
 sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
 4 files changed, 44 insertions(+), 46 deletions(-)

--- a/sound/aoa/soundbus/Makefile
+++ b/sound/aoa/soundbus/Makefile
@@ -1,3 +1,3 @@
 obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
-snd-aoa-soundbus-objs := core.o sysfs.o
+snd-aoa-soundbus-objs := core.o
 obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+#define soundbus_config_of_attr(field, format_string)			\
+static ssize_t								\
+field##_show (struct device *dev, struct device_attribute *attr,	\
+              char *buf)						\
+{									\
+	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
+	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
+}
+
+static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
+			     char *buf)
+{
+	struct soundbus_dev *sdev = to_soundbus_device(dev);
+	struct platform_device *of = &sdev->ofdev;
+	int length;
+
+	if (*sdev->modalias) {
+		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
+		strcat(buf, "\n");
+		length = strlen(buf);
+	} else {
+		length = sprintf(buf, "of:N%sT%s\n",
+				 of->dev.of_node->name, of->dev.of_node->type);
+	}
+
+	return length;
+}
+static DEVICE_ATTR_RO(modalias);
+
+soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
+soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
+
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
+};
+ATTRIBUTE_GROUPS(soundbus_dev);
+
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,4 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
-
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ /dev/null
@@ -1,42 +0,0 @@
-#include <linux/kernel.h>
-#include <linux/stat.h>
-/* FIX UP */
-#include "soundbus.h"
-
-#define soundbus_config_of_attr(field, format_string)			\
-static ssize_t								\
-field##_show (struct device *dev, struct device_attribute *attr,	\
-              char *buf)						\
-{									\
-	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
-	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
-}
-
-static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
-			     char *buf)
-{
-	struct soundbus_dev *sdev = to_soundbus_device(dev);
-	struct platform_device *of = &sdev->ofdev;
-	int length;
-
-	if (*sdev->modalias) {
-		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
-		strcat(buf, "\n");
-		length = strlen(buf);
-	} else {
-		length = sprintf(buf, "of:N%sT%s\n",
-				 of->dev.of_node->name, of->dev.of_node->type);
-	}
-
-	return length;
-}
-
-soundbus_config_of_attr (name, "%s\n");
-soundbus_config_of_attr (type, "%s\n");
-
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
-};

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

* [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11  8:03   ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11  8:03 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel
  Cc: kernel-janitors, Quentin Lambert


The dev_attrs field of struct bus_type is going away, use dev_groups instead.
This converts the soundbus code to use the correct field.

Given that all other usages of the macro define the struct attribute
*xxx_attrs[] in the same file they assign the .dev_groups field, this patch
merges sysfs.c into core.c.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 Changes since v1:
  - Fix the commit message to actually talk about soundbus rather than MDIO
  - This version attempt to fix a problem resulting from the macro
    ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
    core.c. I understand that this may not be the prefered solution since 
    Takashi suggested that adding a comment line to the previous version could
    be acceptable. 

 sound/aoa/soundbus/Makefile   |    2 -
 sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
 sound/aoa/soundbus/soundbus.h |    2 -
 sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
 4 files changed, 44 insertions(+), 46 deletions(-)

--- a/sound/aoa/soundbus/Makefile
+++ b/sound/aoa/soundbus/Makefile
@@ -1,3 +1,3 @@
 obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
-snd-aoa-soundbus-objs := core.o sysfs.o
+snd-aoa-soundbus-objs := core.o
 obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+#define soundbus_config_of_attr(field, format_string)			\
+static ssize_t								\
+field##_show (struct device *dev, struct device_attribute *attr,	\
+              char *buf)						\
+{									\
+	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
+	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
+}
+
+static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
+			     char *buf)
+{
+	struct soundbus_dev *sdev = to_soundbus_device(dev);
+	struct platform_device *of = &sdev->ofdev;
+	int length;
+
+	if (*sdev->modalias) {
+		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
+		strcat(buf, "\n");
+		length = strlen(buf);
+	} else {
+		length = sprintf(buf, "of:N%sT%s\n",
+				 of->dev.of_node->name, of->dev.of_node->type);
+	}
+
+	return length;
+}
+static DEVICE_ATTR_RO(modalias);
+
+soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
+soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
+
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
+};
+ATTRIBUTE_GROUPS(soundbus_dev);
+
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,4 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
-
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ /dev/null
@@ -1,42 +0,0 @@
-#include <linux/kernel.h>
-#include <linux/stat.h>
-/* FIX UP */
-#include "soundbus.h"
-
-#define soundbus_config_of_attr(field, format_string)			\
-static ssize_t								\
-field##_show (struct device *dev, struct device_attribute *attr,	\
-              char *buf)						\
-{									\
-	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
-	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
-}
-
-static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
-			     char *buf)
-{
-	struct soundbus_dev *sdev = to_soundbus_device(dev);
-	struct platform_device *of = &sdev->ofdev;
-	int length;
-
-	if (*sdev->modalias) {
-		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
-		strcat(buf, "\n");
-		length = strlen(buf);
-	} else {
-		length = sprintf(buf, "of:N%sT%s\n",
-				 of->dev.of_node->name, of->dev.of_node->type);
-	}
-
-	return length;
-}
-
-soundbus_config_of_attr (name, "%s\n");
-soundbus_config_of_attr (type, "%s\n");
-
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
-};

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11  8:03   ` Quentin Lambert
@ 2015-06-11 10:02     ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-11 10:02 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors

At Thu, 11 Jun 2015 10:03:38 +0200,
Quentin Lambert wrote:
> 
> 
> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> This converts the soundbus code to use the correct field.
> 
> Given that all other usages of the macro define the struct attribute
> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> merges sysfs.c into core.c.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> ---
>  Changes since v1:
>   - Fix the commit message to actually talk about soundbus rather than MDIO
>   - This version attempt to fix a problem resulting from the macro
>     ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>     core.c. I understand that this may not be the prefered solution since 
>     Takashi suggested that adding a comment line to the previous version could
>     be acceptable. 

Hmm, the patch doesn't look as mentioned here.
It's rather bigger than the previous patch.  Is this intentional?


Takashi

> 
>  sound/aoa/soundbus/Makefile   |    2 -
>  sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>  sound/aoa/soundbus/soundbus.h |    2 -
>  sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>  4 files changed, 44 insertions(+), 46 deletions(-)
> 
> --- a/sound/aoa/soundbus/Makefile
> +++ b/sound/aoa/soundbus/Makefile
> @@ -1,3 +1,3 @@
>  obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
> -snd-aoa-soundbus-objs := core.o sysfs.o
> +snd-aoa-soundbus-objs := core.o
>  obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +#define soundbus_config_of_attr(field, format_string)			\
> +static ssize_t								\
> +field##_show (struct device *dev, struct device_attribute *attr,	\
> +              char *buf)						\
> +{									\
> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> +}
> +
> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> +			     char *buf)
> +{
> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
> +	struct platform_device *of = &sdev->ofdev;
> +	int length;
> +
> +	if (*sdev->modalias) {
> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> +		strcat(buf, "\n");
> +		length = strlen(buf);
> +	} else {
> +		length = sprintf(buf, "of:N%sT%s\n",
> +				 of->dev.of_node->name, of->dev.of_node->type);
> +	}
> +
> +	return length;
> +}
> +static DEVICE_ATTR_RO(modalias);
> +
> +soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
> +soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
> +
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
> +};
> +ATTRIBUTE_GROUPS(soundbus_dev);
> +
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,4 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> -
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -#include <linux/kernel.h>
> -#include <linux/stat.h>
> -/* FIX UP */
> -#include "soundbus.h"
> -
> -#define soundbus_config_of_attr(field, format_string)			\
> -static ssize_t								\
> -field##_show (struct device *dev, struct device_attribute *attr,	\
> -              char *buf)						\
> -{									\
> -	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> -	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> -}
> -
> -static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> -			     char *buf)
> -{
> -	struct soundbus_dev *sdev = to_soundbus_device(dev);
> -	struct platform_device *of = &sdev->ofdev;
> -	int length;
> -
> -	if (*sdev->modalias) {
> -		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> -		strcat(buf, "\n");
> -		length = strlen(buf);
> -	} else {
> -		length = sprintf(buf, "of:N%sT%s\n",
> -				 of->dev.of_node->name, of->dev.of_node->type);
> -	}
> -
> -	return length;
> -}
> -
> -soundbus_config_of_attr (name, "%s\n");
> -soundbus_config_of_attr (type, "%s\n");
> -
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> -};
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 10:02     ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-11 10:02 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors

At Thu, 11 Jun 2015 10:03:38 +0200,
Quentin Lambert wrote:
> 
> 
> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> This converts the soundbus code to use the correct field.
> 
> Given that all other usages of the macro define the struct attribute
> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> merges sysfs.c into core.c.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> ---
>  Changes since v1:
>   - Fix the commit message to actually talk about soundbus rather than MDIO
>   - This version attempt to fix a problem resulting from the macro
>     ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>     core.c. I understand that this may not be the prefered solution since 
>     Takashi suggested that adding a comment line to the previous version could
>     be acceptable. 

Hmm, the patch doesn't look as mentioned here.
It's rather bigger than the previous patch.  Is this intentional?


Takashi

> 
>  sound/aoa/soundbus/Makefile   |    2 -
>  sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>  sound/aoa/soundbus/soundbus.h |    2 -
>  sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>  4 files changed, 44 insertions(+), 46 deletions(-)
> 
> --- a/sound/aoa/soundbus/Makefile
> +++ b/sound/aoa/soundbus/Makefile
> @@ -1,3 +1,3 @@
>  obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
> -snd-aoa-soundbus-objs := core.o sysfs.o
> +snd-aoa-soundbus-objs := core.o
>  obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +#define soundbus_config_of_attr(field, format_string)			\
> +static ssize_t								\
> +field##_show (struct device *dev, struct device_attribute *attr,	\
> +              char *buf)						\
> +{									\
> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> +}
> +
> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> +			     char *buf)
> +{
> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
> +	struct platform_device *of = &sdev->ofdev;
> +	int length;
> +
> +	if (*sdev->modalias) {
> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> +		strcat(buf, "\n");
> +		length = strlen(buf);
> +	} else {
> +		length = sprintf(buf, "of:N%sT%s\n",
> +				 of->dev.of_node->name, of->dev.of_node->type);
> +	}
> +
> +	return length;
> +}
> +static DEVICE_ATTR_RO(modalias);
> +
> +soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
> +soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
> +
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
> +};
> +ATTRIBUTE_GROUPS(soundbus_dev);
> +
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,4 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> -
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -#include <linux/kernel.h>
> -#include <linux/stat.h>
> -/* FIX UP */
> -#include "soundbus.h"
> -
> -#define soundbus_config_of_attr(field, format_string)			\
> -static ssize_t								\
> -field##_show (struct device *dev, struct device_attribute *attr,	\
> -              char *buf)						\
> -{									\
> -	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> -	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> -}
> -
> -static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> -			     char *buf)
> -{
> -	struct soundbus_dev *sdev = to_soundbus_device(dev);
> -	struct platform_device *of = &sdev->ofdev;
> -	int length;
> -
> -	if (*sdev->modalias) {
> -		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> -		strcat(buf, "\n");
> -		length = strlen(buf);
> -	} else {
> -		length = sprintf(buf, "of:N%sT%s\n",
> -				 of->dev.of_node->name, of->dev.of_node->type);
> -	}
> -
> -	return length;
> -}
> -
> -soundbus_config_of_attr (name, "%s\n");
> -soundbus_config_of_attr (type, "%s\n");
> -
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> -};
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 

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

* Re: [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11  8:03   ` Quentin Lambert
@ 2015-06-11 11:55     ` walter harms
  -1 siblings, 0 replies; 41+ messages in thread
From: walter harms @ 2015-06-11 11:55 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel, kernel-janitors



Am 11.06.2015 10:03, schrieb Quentin Lambert:
> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> This converts the soundbus code to use the correct field.
> 
> Given that all other usages of the macro define the struct attribute
> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> merges sysfs.c into core.c.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> ---
>  Changes since v1:
>   - Fix the commit message to actually talk about soundbus rather than MDIO
>   - This version attempt to fix a problem resulting from the macro
>     ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>     core.c. I understand that this may not be the prefered solution since 
>     Takashi suggested that adding a comment line to the previous version could
>     be acceptable. 
> 
>  sound/aoa/soundbus/Makefile   |    2 -
>  sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>  sound/aoa/soundbus/soundbus.h |    2 -
>  sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>  4 files changed, 44 insertions(+), 46 deletions(-)
> 
> --- a/sound/aoa/soundbus/Makefile
> +++ b/sound/aoa/soundbus/Makefile
> @@ -1,3 +1,3 @@
>  obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
> -snd-aoa-soundbus-objs := core.o sysfs.o
> +snd-aoa-soundbus-objs := core.o
>  obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +#define soundbus_config_of_attr(field, format_string)			\
> +static ssize_t								\
> +field##_show (struct device *dev, struct device_attribute *attr,	\
> +              char *buf)						\
> +{									\
> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> +}
> +
> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> +			     char *buf)
> +{
> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
> +	struct platform_device *of = &sdev->ofdev;
> +	int length;
> +
> +	if (*sdev->modalias) {
> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> +		strcat(buf, "\n");
> +		length = strlen(buf);


for my curiosity:
why not sprintf() ? almost any other code seems to use sprintf().

re,
 wh


> +	} else {
> +		length = sprintf(buf, "of:N%sT%s\n",
> +				 of->dev.of_node->name, of->dev.of_node->type);
> +	}
> +
> +	return length;
> +}
> +static DEVICE_ATTR_RO(modalias);
> +
> +soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
> +soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
> +
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
> +};
> +ATTRIBUTE_GROUPS(soundbus_dev);
> +
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,4 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> -
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -#include <linux/kernel.h>
> -#include <linux/stat.h>
> -/* FIX UP */
> -#include "soundbus.h"
> -
> -#define soundbus_config_of_attr(field, format_string)			\
> -static ssize_t								\
> -field##_show (struct device *dev, struct device_attribute *attr,	\
> -              char *buf)						\
> -{									\
> -	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> -	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> -}
> -
> -static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> -			     char *buf)
> -{
> -	struct soundbus_dev *sdev = to_soundbus_device(dev);
> -	struct platform_device *of = &sdev->ofdev;
> -	int length;
> -
> -	if (*sdev->modalias) {
> -		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> -		strcat(buf, "\n");
> -		length = strlen(buf);
> -	} else {
> -		length = sprintf(buf, "of:N%sT%s\n",
> -				 of->dev.of_node->name, of->dev.of_node->type);
> -	}
> -
> -	return length;
> -}
> -
> -soundbus_config_of_attr (name, "%s\n");
> -soundbus_config_of_attr (type, "%s\n");
> -
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> -};
> --
> To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

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

* Re: [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 11:55     ` walter harms
  0 siblings, 0 replies; 41+ messages in thread
From: walter harms @ 2015-06-11 11:55 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel, kernel-janitors



Am 11.06.2015 10:03, schrieb Quentin Lambert:
> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> This converts the soundbus code to use the correct field.
> 
> Given that all other usages of the macro define the struct attribute
> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> merges sysfs.c into core.c.
> 
> These modifications were made using Coccinelle.
> 
> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> ---
>  Changes since v1:
>   - Fix the commit message to actually talk about soundbus rather than MDIO
>   - This version attempt to fix a problem resulting from the macro
>     ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>     core.c. I understand that this may not be the prefered solution since 
>     Takashi suggested that adding a comment line to the previous version could
>     be acceptable. 
> 
>  sound/aoa/soundbus/Makefile   |    2 -
>  sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>  sound/aoa/soundbus/soundbus.h |    2 -
>  sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>  4 files changed, 44 insertions(+), 46 deletions(-)
> 
> --- a/sound/aoa/soundbus/Makefile
> +++ b/sound/aoa/soundbus/Makefile
> @@ -1,3 +1,3 @@
>  obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
> -snd-aoa-soundbus-objs := core.o sysfs.o
> +snd-aoa-soundbus-objs := core.o
>  obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
> --- a/sound/aoa/soundbus/core.c
> +++ b/sound/aoa/soundbus/core.c
> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>  
>  #endif /* CONFIG_PM */
>  
> +#define soundbus_config_of_attr(field, format_string)			\
> +static ssize_t								\
> +field##_show (struct device *dev, struct device_attribute *attr,	\
> +              char *buf)						\
> +{									\
> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> +}
> +
> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> +			     char *buf)
> +{
> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
> +	struct platform_device *of = &sdev->ofdev;
> +	int length;
> +
> +	if (*sdev->modalias) {
> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> +		strcat(buf, "\n");
> +		length = strlen(buf);


for my curiosity:
why not sprintf() ? almost any other code seems to use sprintf().

re,
 wh


> +	} else {
> +		length = sprintf(buf, "of:N%sT%s\n",
> +				 of->dev.of_node->name, of->dev.of_node->type);
> +	}
> +
> +	return length;
> +}
> +static DEVICE_ATTR_RO(modalias);
> +
> +soundbus_config_of_attr (name, "%s\n");
> +static DEVICE_ATTR_RO(name);
> +soundbus_config_of_attr (type, "%s\n");
> +static DEVICE_ATTR_RO(type);
> +
> +struct attribute *soundbus_dev_attrs[] = {
> +	&dev_attr_name.attr,
> +	&dev_attr_type.attr,
> +	&dev_attr_modalias.attr,
> +	NULL,
> +};
> +ATTRIBUTE_GROUPS(soundbus_dev);
> +
>  static struct bus_type soundbus_bus_type = {
>  	.name		= "aoa-soundbus",
>  	.probe		= soundbus_probe,
> @@ -160,7 +202,7 @@ static struct bus_type soundbus_bus_type
>  	.suspend	= soundbus_device_suspend,
>  	.resume		= soundbus_device_resume,
>  #endif
> -	.dev_attrs	= soundbus_dev_attrs,
> +	.dev_groups	= soundbus_dev_groups,
>  };
>  
>  int soundbus_add_one(struct soundbus_dev *dev)
> --- a/sound/aoa/soundbus/soundbus.h
> +++ b/sound/aoa/soundbus/soundbus.h
> @@ -199,6 +199,4 @@ struct soundbus_driver {
>  extern int soundbus_register_driver(struct soundbus_driver *drv);
>  extern void soundbus_unregister_driver(struct soundbus_driver *drv);
>  
> -extern struct device_attribute soundbus_dev_attrs[];
> -
>  #endif /* __SOUNDBUS_H */
> --- a/sound/aoa/soundbus/sysfs.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -#include <linux/kernel.h>
> -#include <linux/stat.h>
> -/* FIX UP */
> -#include "soundbus.h"
> -
> -#define soundbus_config_of_attr(field, format_string)			\
> -static ssize_t								\
> -field##_show (struct device *dev, struct device_attribute *attr,	\
> -              char *buf)						\
> -{									\
> -	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
> -	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
> -}
> -
> -static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
> -			     char *buf)
> -{
> -	struct soundbus_dev *sdev = to_soundbus_device(dev);
> -	struct platform_device *of = &sdev->ofdev;
> -	int length;
> -
> -	if (*sdev->modalias) {
> -		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
> -		strcat(buf, "\n");
> -		length = strlen(buf);
> -	} else {
> -		length = sprintf(buf, "of:N%sT%s\n",
> -				 of->dev.of_node->name, of->dev.of_node->type);
> -	}
> -
> -	return length;
> -}
> -
> -soundbus_config_of_attr (name, "%s\n");
> -soundbus_config_of_attr (type, "%s\n");
> -
> -struct device_attribute soundbus_dev_attrs[] = {
> -	__ATTR_RO(name),
> -	__ATTR_RO(type),
> -	__ATTR_RO(modalias),
> -	__ATTR_NULL
> -};
> --
> To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11 10:02     ` Takashi Iwai
@ 2015-06-11 12:04       ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11 12:04 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors



On 11/06/2015 12:02, Takashi Iwai wrote:
> At Thu, 11 Jun 2015 10:03:38 +0200,
> Quentin Lambert wrote:
>>
>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>> This converts the soundbus code to use the correct field.
>>
>> Given that all other usages of the macro define the struct attribute
>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>> merges sysfs.c into core.c.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>> ---
>>   Changes since v1:
>>    - Fix the commit message to actually talk about soundbus rather than MDIO
>>    - This version attempt to fix a problem resulting from the macro
>>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>      core.c. I understand that this may not be the prefered solution since
>>      Takashi suggested that adding a comment line to the previous version could
>>      be acceptable.
> Hmm, the patch doesn't look as mentioned here.
> It's rather bigger than the previous patch.  Is this intentional?
>
Well as mentionned in the change log it is bigger because it moves the 
code from sysfs.c to
core.c. I realise as I am writing this that this patch should have 
really been two patches.
The first one removing sysfs.c and the second one removing the use of 
the dev_attrs.

> Takashi
>
Quentin

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 12:04       ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11 12:04 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors



On 11/06/2015 12:02, Takashi Iwai wrote:
> At Thu, 11 Jun 2015 10:03:38 +0200,
> Quentin Lambert wrote:
>>
>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>> This converts the soundbus code to use the correct field.
>>
>> Given that all other usages of the macro define the struct attribute
>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>> merges sysfs.c into core.c.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>> ---
>>   Changes since v1:
>>    - Fix the commit message to actually talk about soundbus rather than MDIO
>>    - This version attempt to fix a problem resulting from the macro
>>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>      core.c. I understand that this may not be the prefered solution since
>>      Takashi suggested that adding a comment line to the previous version could
>>      be acceptable.
> Hmm, the patch doesn't look as mentioned here.
> It's rather bigger than the previous patch.  Is this intentional?
>
Well as mentionned in the change log it is bigger because it moves the 
code from sysfs.c to
core.c. I realise as I am writing this that this patch should have 
really been two patches.
The first one removing sysfs.c and the second one removing the use of 
the dev_attrs.

> Takashi
>
Quentin

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

* Re: [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11 11:55     ` walter harms
@ 2015-06-11 12:06       ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11 12:06 UTC (permalink / raw)
  To: wharms
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel, kernel-janitors



On 11/06/2015 13:55, walter harms wrote:
>
> Am 11.06.2015 10:03, schrieb Quentin Lambert:
>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>> This converts the soundbus code to use the correct field.
>>
>> Given that all other usages of the macro define the struct attribute
>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>> merges sysfs.c into core.c.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>> ---
>>   Changes since v1:
>>    - Fix the commit message to actually talk about soundbus rather than MDIO
>>    - This version attempt to fix a problem resulting from the macro
>>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>      core.c. I understand that this may not be the prefered solution since
>>      Takashi suggested that adding a comment line to the previous version could
>>      be acceptable.
>>
>>   sound/aoa/soundbus/Makefile   |    2 -
>>   sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>>   sound/aoa/soundbus/soundbus.h |    2 -
>>   sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>>   4 files changed, 44 insertions(+), 46 deletions(-)
>>
>> --- a/sound/aoa/soundbus/Makefile
>> +++ b/sound/aoa/soundbus/Makefile
>> @@ -1,3 +1,3 @@
>>   obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
>> -snd-aoa-soundbus-objs := core.o sysfs.o
>> +snd-aoa-soundbus-objs := core.o
>>   obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
>> --- a/sound/aoa/soundbus/core.c
>> +++ b/sound/aoa/soundbus/core.c
>> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>>   
>>   #endif /* CONFIG_PM */
>>   
>> +#define soundbus_config_of_attr(field, format_string)			\
>> +static ssize_t								\
>> +field##_show (struct device *dev, struct device_attribute *attr,	\
>> +              char *buf)						\
>> +{									\
>> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
>> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
>> +}
>> +
>> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
>> +			     char *buf)
>> +{
>> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
>> +	struct platform_device *of = &sdev->ofdev;
>> +	int length;
>> +
>> +	if (*sdev->modalias) {
>> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
>> +		strcat(buf, "\n");
>> +		length = strlen(buf);
>
> for my curiosity:
> why not sprintf() ? almost any other code seems to use sprintf().
I wouldn't be able to justify that as this is part is simply a copy 
paste from sysfs.c to core.c

Quentin

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

* Re: [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 12:06       ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-11 12:06 UTC (permalink / raw)
  To: wharms
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linux-kernel,
	linuxppc-dev, alsa-devel, kernel-janitors



On 11/06/2015 13:55, walter harms wrote:
>
> Am 11.06.2015 10:03, schrieb Quentin Lambert:
>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>> This converts the soundbus code to use the correct field.
>>
>> Given that all other usages of the macro define the struct attribute
>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>> merges sysfs.c into core.c.
>>
>> These modifications were made using Coccinelle.
>>
>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>> ---
>>   Changes since v1:
>>    - Fix the commit message to actually talk about soundbus rather than MDIO
>>    - This version attempt to fix a problem resulting from the macro
>>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>      core.c. I understand that this may not be the prefered solution since
>>      Takashi suggested that adding a comment line to the previous version could
>>      be acceptable.
>>
>>   sound/aoa/soundbus/Makefile   |    2 -
>>   sound/aoa/soundbus/core.c     |   44 +++++++++++++++++++++++++++++++++++++++++-
>>   sound/aoa/soundbus/soundbus.h |    2 -
>>   sound/aoa/soundbus/sysfs.c    |   42 ----------------------------------------
>>   4 files changed, 44 insertions(+), 46 deletions(-)
>>
>> --- a/sound/aoa/soundbus/Makefile
>> +++ b/sound/aoa/soundbus/Makefile
>> @@ -1,3 +1,3 @@
>>   obj-$(CONFIG_SND_AOA_SOUNDBUS) += snd-aoa-soundbus.o
>> -snd-aoa-soundbus-objs := core.o sysfs.o
>> +snd-aoa-soundbus-objs := core.o
>>   obj-$(CONFIG_SND_AOA_SOUNDBUS_I2S) += i2sbus/
>> --- a/sound/aoa/soundbus/core.c
>> +++ b/sound/aoa/soundbus/core.c
>> @@ -150,6 +150,48 @@ static int soundbus_device_resume(struct
>>   
>>   #endif /* CONFIG_PM */
>>   
>> +#define soundbus_config_of_attr(field, format_string)			\
>> +static ssize_t								\
>> +field##_show (struct device *dev, struct device_attribute *attr,	\
>> +              char *buf)						\
>> +{									\
>> +	struct soundbus_dev *mdev = to_soundbus_device (dev);		\
>> +	return sprintf (buf, format_string, mdev->ofdev.dev.of_node->field); \
>> +}
>> +
>> +static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
>> +			     char *buf)
>> +{
>> +	struct soundbus_dev *sdev = to_soundbus_device(dev);
>> +	struct platform_device *of = &sdev->ofdev;
>> +	int length;
>> +
>> +	if (*sdev->modalias) {
>> +		strlcpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
>> +		strcat(buf, "\n");
>> +		length = strlen(buf);
>
> for my curiosity:
> why not sprintf() ? almost any other code seems to use sprintf().
I wouldn't be able to justify that as this is part is simply a copy 
paste from sysfs.c to core.c

Quentin

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11 12:04       ` Quentin Lambert
  (?)
@ 2015-06-11 12:25         ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-11 12:25 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors

At Thu, 11 Jun 2015 14:04:45 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 11/06/2015 12:02, Takashi Iwai wrote:
> > At Thu, 11 Jun 2015 10:03:38 +0200,
> > Quentin Lambert wrote:
> >>
> >> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> >> This converts the soundbus code to use the correct field.
> >>
> >> Given that all other usages of the macro define the struct attribute
> >> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> >> merges sysfs.c into core.c.
> >>
> >> These modifications were made using Coccinelle.
> >>
> >> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> >> ---
> >>   Changes since v1:
> >>    - Fix the commit message to actually talk about soundbus rather than MDIO
> >>    - This version attempt to fix a problem resulting from the macro
> >>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
> >>      core.c. I understand that this may not be the prefered solution since
> >>      Takashi suggested that adding a comment line to the previous version could
> >>      be acceptable.
> > Hmm, the patch doesn't look as mentioned here.
> > It's rather bigger than the previous patch.  Is this intentional?
> >
> Well as mentionned in the change log it is bigger because it moves the 
> code from sysfs.c to
> core.c. I realise as I am writing this that this patch should have 
> really been two patches.
> The first one removing sysfs.c and the second one removing the use of 
> the dev_attrs.

Yes, that'd be better.  OTOH, do we really need to copy many codes at
all?  I really prefer shorter changes, if possible.


Takashi

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 12:25         ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-11 12:25 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: alsa-devel, kernel-janitors, linux-kernel, Johannes Berg, linuxppc-dev

At Thu, 11 Jun 2015 14:04:45 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 11/06/2015 12:02, Takashi Iwai wrote:
> > At Thu, 11 Jun 2015 10:03:38 +0200,
> > Quentin Lambert wrote:
> >>
> >> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> >> This converts the soundbus code to use the correct field.
> >>
> >> Given that all other usages of the macro define the struct attribute
> >> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> >> merges sysfs.c into core.c.
> >>
> >> These modifications were made using Coccinelle.
> >>
> >> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> >> ---
> >>   Changes since v1:
> >>    - Fix the commit message to actually talk about soundbus rather than MDIO
> >>    - This version attempt to fix a problem resulting from the macro
> >>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
> >>      core.c. I understand that this may not be the prefered solution since
> >>      Takashi suggested that adding a comment line to the previous version could
> >>      be acceptable.
> > Hmm, the patch doesn't look as mentioned here.
> > It's rather bigger than the previous patch.  Is this intentional?
> >
> Well as mentionned in the change log it is bigger because it moves the 
> code from sysfs.c to
> core.c. I realise as I am writing this that this patch should have 
> really been two patches.
> The first one removing sysfs.c and the second one removing the use of 
> the dev_attrs.

Yes, that'd be better.  OTOH, do we really need to copy many codes at
all?  I really prefer shorter changes, if possible.


Takashi

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

* Re: [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-11 12:25         ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-11 12:25 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: alsa-devel, kernel-janitors, linux-kernel, Johannes Berg, linuxppc-dev

At Thu, 11 Jun 2015 14:04:45 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 11/06/2015 12:02, Takashi Iwai wrote:
> > At Thu, 11 Jun 2015 10:03:38 +0200,
> > Quentin Lambert wrote:
> >>
> >> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
> >> This converts the soundbus code to use the correct field.
> >>
> >> Given that all other usages of the macro define the struct attribute
> >> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
> >> merges sysfs.c into core.c.
> >>
> >> These modifications were made using Coccinelle.
> >>
> >> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
> >> ---
> >>   Changes since v1:
> >>    - Fix the commit message to actually talk about soundbus rather than MDIO
> >>    - This version attempt to fix a problem resulting from the macro
> >>      ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
> >>      core.c. I understand that this may not be the prefered solution since
> >>      Takashi suggested that adding a comment line to the previous version could
> >>      be acceptable.
> > Hmm, the patch doesn't look as mentioned here.
> > It's rather bigger than the previous patch.  Is this intentional?
> >
> Well as mentionned in the change log it is bigger because it moves the 
> code from sysfs.c to
> core.c. I realise as I am writing this that this patch should have 
> really been two patches.
> The first one removing sysfs.c and the second one removing the use of 
> the dev_attrs.

Yes, that'd be better.  OTOH, do we really need to copy many codes at
all?  I really prefer shorter changes, if possible.


Takashi

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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
  2015-06-11 12:25         ` [alsa-devel] " Takashi Iwai
@ 2015-06-12  7:55           ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12  7:55 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors



On 11/06/2015 14:25, Takashi Iwai wrote:
> At Thu, 11 Jun 2015 14:04:45 +0200,
> Quentin Lambert wrote:
>>
>>
>> On 11/06/2015 12:02, Takashi Iwai wrote:
>>> At Thu, 11 Jun 2015 10:03:38 +0200,
>>> Quentin Lambert wrote:
>>>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>>>> This converts the soundbus code to use the correct field.
>>>>
>>>> Given that all other usages of the macro define the struct attribute
>>>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>>>> merges sysfs.c into core.c.
>>>>
>>>> These modifications were made using Coccinelle.
>>>>
>>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>>>> ---
>>>>    Changes since v1:
>>>>     - Fix the commit message to actually talk about soundbus rather than MDIO
>>>>     - This version attempt to fix a problem resulting from the macro
>>>>       ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>>>       core.c. I understand that this may not be the prefered solution since
>>>>       Takashi suggested that adding a comment line to the previous version could
>>>>       be acceptable.
>>> Hmm, the patch doesn't look as mentioned here.
>>> It's rather bigger than the previous patch.  Is this intentional?
>>>
>> Well as mentionned in the change log it is bigger because it moves the
>> code from sysfs.c to
>> core.c. I realise as I am writing this that this patch should have
>> really been two patches.
>> The first one removing sysfs.c and the second one removing the use of
>> the dev_attrs.
> Yes, that'd be better.  OTOH, do we really need to copy many codes at
> all?  I really prefer shorter changes, if possible.
All right, I will send a third version following the comments you made 
on the fist version. I just wanted to propose this idea in case it 
suited you.

Quentin


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

* Re: [alsa-devel] [PATCH v2] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-12  7:55           ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12  7:55 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Johannes Berg, Jaroslav Kysela, linux-kernel, linuxppc-dev,
	alsa-devel, kernel-janitors



On 11/06/2015 14:25, Takashi Iwai wrote:
> At Thu, 11 Jun 2015 14:04:45 +0200,
> Quentin Lambert wrote:
>>
>>
>> On 11/06/2015 12:02, Takashi Iwai wrote:
>>> At Thu, 11 Jun 2015 10:03:38 +0200,
>>> Quentin Lambert wrote:
>>>> The dev_attrs field of struct bus_type is going away, use dev_groups instead.
>>>> This converts the soundbus code to use the correct field.
>>>>
>>>> Given that all other usages of the macro define the struct attribute
>>>> *xxx_attrs[] in the same file they assign the .dev_groups field, this patch
>>>> merges sysfs.c into core.c.
>>>>
>>>> These modifications were made using Coccinelle.
>>>>
>>>> Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
>>>> ---
>>>>    Changes since v1:
>>>>     - Fix the commit message to actually talk about soundbus rather than MDIO
>>>>     - This version attempt to fix a problem resulting from the macro
>>>>       ATTRIBUTE_GROUPS declaring the structure as static by merging sysfs.c into
>>>>       core.c. I understand that this may not be the prefered solution since
>>>>       Takashi suggested that adding a comment line to the previous version could
>>>>       be acceptable.
>>> Hmm, the patch doesn't look as mentioned here.
>>> It's rather bigger than the previous patch.  Is this intentional?
>>>
>> Well as mentionned in the change log it is bigger because it moves the
>> code from sysfs.c to
>> core.c. I realise as I am writing this that this patch should have
>> really been two patches.
>> The first one removing sysfs.c and the second one removing the use of
>> the dev_attrs.
> Yes, that'd be better.  OTOH, do we really need to copy many codes at
> all?  I really prefer shorter changes, if possible.
All right, I will send a third version following the comments you made 
on the fist version. I just wanted to propose this idea in case it 
suited you.

Quentin


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

* [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
  2015-05-28 12:48 ` Quentin Lambert
@ 2015-06-12  8:38   ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12  8:38 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel
  Cc: kernel-janitors, Quentin Lambert

The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
This converts the soundbus code to use the correct field.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 Changes since v2:
  - Revert to the version of the patch where the files weren't merge.
  - Add a comment line to explain where xxx_attrs is defined as suggested by
    Takashi. 
 sound/aoa/soundbus/core.c     |    4 +++-
 sound/aoa/soundbus/soundbus.h |    2 +-
 sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
 3 files changed, 12 insertions(+), 7 deletions(-)

--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,8 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+/* soundbus_dev_attrs is declared in sysfs.c */
+ATTRIBUTE_GROUPS(soundbus_dev);
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +162,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,6 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
+extern struct attribute *soundbus_dev_attrs[];
 
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ b/sound/aoa/soundbus/sysfs.c
@@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
 
 	return length;
 }
+static DEVICE_ATTR_RO(modalias);
 
 soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
 soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
 
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
 };

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

* [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-12  8:38   ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12  8:38 UTC (permalink / raw)
  To: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel
  Cc: kernel-janitors, Quentin Lambert

The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
This converts the soundbus code to use the correct field.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
---
 Changes since v2:
  - Revert to the version of the patch where the files weren't merge.
  - Add a comment line to explain where xxx_attrs is defined as suggested by
    Takashi. 
 sound/aoa/soundbus/core.c     |    4 +++-
 sound/aoa/soundbus/soundbus.h |    2 +-
 sound/aoa/soundbus/sysfs.c    |   13 ++++++++-----
 3 files changed, 12 insertions(+), 7 deletions(-)

--- a/sound/aoa/soundbus/core.c
+++ b/sound/aoa/soundbus/core.c
@@ -150,6 +150,8 @@ static int soundbus_device_resume(struct
 
 #endif /* CONFIG_PM */
 
+/* soundbus_dev_attrs is declared in sysfs.c */
+ATTRIBUTE_GROUPS(soundbus_dev);
 static struct bus_type soundbus_bus_type = {
 	.name		= "aoa-soundbus",
 	.probe		= soundbus_probe,
@@ -160,7 +162,7 @@ static struct bus_type soundbus_bus_type
 	.suspend	= soundbus_device_suspend,
 	.resume		= soundbus_device_resume,
 #endif
-	.dev_attrs	= soundbus_dev_attrs,
+	.dev_groups	= soundbus_dev_groups,
 };
 
 int soundbus_add_one(struct soundbus_dev *dev)
--- a/sound/aoa/soundbus/soundbus.h
+++ b/sound/aoa/soundbus/soundbus.h
@@ -199,6 +199,6 @@ struct soundbus_driver {
 extern int soundbus_register_driver(struct soundbus_driver *drv);
 extern void soundbus_unregister_driver(struct soundbus_driver *drv);
 
-extern struct device_attribute soundbus_dev_attrs[];
+extern struct attribute *soundbus_dev_attrs[];
 
 #endif /* __SOUNDBUS_H */
--- a/sound/aoa/soundbus/sysfs.c
+++ b/sound/aoa/soundbus/sysfs.c
@@ -30,13 +30,16 @@ static ssize_t modalias_show(struct devi
 
 	return length;
 }
+static DEVICE_ATTR_RO(modalias);
 
 soundbus_config_of_attr (name, "%s\n");
+static DEVICE_ATTR_RO(name);
 soundbus_config_of_attr (type, "%s\n");
+static DEVICE_ATTR_RO(type);
 
-struct device_attribute soundbus_dev_attrs[] = {
-	__ATTR_RO(name),
-	__ATTR_RO(type),
-	__ATTR_RO(modalias),
-	__ATTR_NULL
+struct attribute *soundbus_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_modalias.attr,
+	NULL,
 };

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
  2015-06-12  8:38   ` Quentin Lambert
@ 2015-06-12  9:59     ` Andreas Schwab
  -1 siblings, 0 replies; 41+ messages in thread
From: Andreas Schwab @ 2015-06-12  9:59 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors

Quentin Lambert <lambert.quentin@gmail.com> writes:

> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.

s/sue/use/

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-12  9:59     ` Andreas Schwab
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Schwab @ 2015-06-12  9:59 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors

Quentin Lambert <lambert.quentin@gmail.com> writes:

> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.

s/sue/use/

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
  2015-06-12  9:59     ` Andreas Schwab
@ 2015-06-12 10:01       ` Quentin Lambert
  -1 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12 10:01 UTC (permalink / raw)
  To: Andreas Schwab
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors



On 12/06/2015 11:59, Andreas Schwab wrote:
> Quentin Lambert <lambert.quentin@gmail.com> writes:
>
>> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
> s/sue/use/
I meant use do you need to fix something else or should I resend with 
the typo correction ?

Quentin

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-12 10:01       ` Quentin Lambert
  0 siblings, 0 replies; 41+ messages in thread
From: Quentin Lambert @ 2015-06-12 10:01 UTC (permalink / raw)
  To: Andreas Schwab
  Cc: Johannes Berg, Jaroslav Kysela, Takashi Iwai, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors



On 12/06/2015 11:59, Andreas Schwab wrote:
> Quentin Lambert <lambert.quentin@gmail.com> writes:
>
>> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
> s/sue/use/
I meant use do you need to fix something else or should I resend with 
the typo correction ?

Quentin

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
  2015-06-12 10:01       ` Quentin Lambert
@ 2015-06-12 18:50         ` Takashi Iwai
  -1 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-12 18:50 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Andreas Schwab, Johannes Berg, Jaroslav Kysela, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors

At Fri, 12 Jun 2015 12:01:42 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 12/06/2015 11:59, Andreas Schwab wrote:
> > Quentin Lambert <lambert.quentin@gmail.com> writes:
> >
> >> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
> > s/sue/use/
> I meant use do you need to fix something else or should I resend with 
> the typo correction ?

I applied the corrected patch, so that you won't need to start lawsuit
:)

thanks,


Takashi

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

* Re: [PATCH v3] ALSA: aoa: convert bus code to use dev_groups
@ 2015-06-12 18:50         ` Takashi Iwai
  0 siblings, 0 replies; 41+ messages in thread
From: Takashi Iwai @ 2015-06-12 18:50 UTC (permalink / raw)
  To: Quentin Lambert
  Cc: Andreas Schwab, Johannes Berg, Jaroslav Kysela, linuxppc-dev,
	alsa-devel, linux-kernel, kernel-janitors

At Fri, 12 Jun 2015 12:01:42 +0200,
Quentin Lambert wrote:
> 
> 
> 
> On 12/06/2015 11:59, Andreas Schwab wrote:
> > Quentin Lambert <lambert.quentin@gmail.com> writes:
> >
> >> The dev_attrs field of struct bus_type is going away, sue dev_groups instead.
> > s/sue/use/
> I meant use do you need to fix something else or should I resend with 
> the typo correction ?

I applied the corrected patch, so that you won't need to start lawsuit
:)

thanks,


Takashi

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

end of thread, other threads:[~2015-06-12 18:50 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-28 12:48 [PATCH] ALSA: aoa: convert bus code to use dev_groups Quentin Lambert
2015-05-28 12:48 ` Quentin Lambert
2015-05-28 13:52 ` Takashi Iwai
2015-05-28 13:52   ` Takashi Iwai
2015-05-28 13:59   ` Quentin Lambert
2015-05-28 13:59     ` Quentin Lambert
2015-05-28 14:09     ` Takashi Iwai
2015-05-28 14:09       ` Takashi Iwai
2015-05-28 14:43       ` Quentin Lambert
2015-05-28 14:43         ` Quentin Lambert
2015-05-28 15:01         ` Takashi Iwai
2015-05-28 15:01           ` Takashi Iwai
2015-05-29 15:49           ` Quentin Lambert
2015-05-29 15:49             ` Quentin Lambert
2015-05-29 15:53             ` Takashi Iwai
2015-05-29 15:53               ` Takashi Iwai
2015-05-28 13:59   ` Quentin Lambert
2015-05-28 13:59     ` Quentin Lambert
2015-06-11  8:03 ` [PATCH v2] " Quentin Lambert
2015-06-11  8:03   ` Quentin Lambert
2015-06-11 10:02   ` [alsa-devel] " Takashi Iwai
2015-06-11 10:02     ` Takashi Iwai
2015-06-11 12:04     ` Quentin Lambert
2015-06-11 12:04       ` Quentin Lambert
2015-06-11 12:25       ` Takashi Iwai
2015-06-11 12:25         ` Takashi Iwai
2015-06-11 12:25         ` [alsa-devel] " Takashi Iwai
2015-06-12  7:55         ` Quentin Lambert
2015-06-12  7:55           ` Quentin Lambert
2015-06-11 11:55   ` walter harms
2015-06-11 11:55     ` walter harms
2015-06-11 12:06     ` Quentin Lambert
2015-06-11 12:06       ` Quentin Lambert
2015-06-12  8:38 ` [PATCH v3] " Quentin Lambert
2015-06-12  8:38   ` Quentin Lambert
2015-06-12  9:59   ` Andreas Schwab
2015-06-12  9:59     ` Andreas Schwab
2015-06-12 10:01     ` Quentin Lambert
2015-06-12 10:01       ` Quentin Lambert
2015-06-12 18:50       ` Takashi Iwai
2015-06-12 18:50         ` Takashi Iwai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.