Is there any way to add an attribute under sysfs at the “platform” level?

Roman Storozhenko romeusmeister at gmail.com
Mon Jun 19 11:09:28 EDT 2017


On Mon, Jun 19, 2017 at 08:55:22AM +0800, Greg KH wrote:
> On Sun, Jun 18, 2017 at 05:38:36PM +0300, Roman Storozhenko wrote:
> > Hello everybody!
> > 
> > I am trying to modify "pcspkr" driver undere linux kernel source tree. I added a new line there:
> > 
> > sample_id_dir = kobject_create_and_add("devices/platform/pcspkr/sample", NULL);
> 
> Ick, really?  What are you trying to do with "raw" kobjects?

I am trying to add "read/write" attribute under
"devices/platform/pcspkr". Just for educational purposes. Didn't find another way to do it.

> 
> > It works and creates kobject without errors. I checked this in the driver code and in the dmesg output. But "sample" catalog isn't appear under "/sys/devices/platform/pcspkr/".
> 
> Are you sure?  Odds are you really did create a kobject with that name,
> but note, the name will have '/' characters in it :)
> 
> If you want a kobject in a specific directory, you have to give it the
> parent kobject directory directly, you can not give a "path" to the
> kobject name, sorry, that's not how it works.
> 
> The kobject documentation should help you out here, have you read it?
> 
> good luck!

I have read documentation about sysfs and kobject. Now I am going to
re-read it again.

Thanks, Greg.
> 
> greg k-h



More information about the Kernelnewbies mailing list