[lkml]   [2011]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[RFC PATCHv2 0/2] Export SoC info through sysfs
Here is the second version of the proposal to export SoC related information to user-space through sysFS interface.

The first patch introduces the common part, which provides an interface to the platform to export platform-defined IDs to user-space.
The IDs strings can be provided in two ways: either with a pointer to the string, or by a callback fullfilling the sysfs's "show" callback buffer.

The second patch is given as example for the ux500 architecture. It registers the socinfo interface, and exports 5 values (Family name, machine name, silicon process, silicon revision, and serial number).

Here is the output for DB8500:
root@ME:/sys/socinfo ls -l
-r--r--r-- 1 root root 4096 Jan 2 03:35 family
-r--r--r-- 1 root root 4096 Jan 2 03:35 machine
-r--r--r-- 1 root root 4096 Jan 2 03:35 process
-r--r--r-- 1 root root 4096 Jan 2 03:35 revision
-r--r--r-- 1 root root 4096 Jan 2 03:35 soc_id
root@ME:/sys/socinfo cat machine
root@ME:/sys/socinfo cat family
root@ME:/sys/socinfo cat process
root@ME:/sys/socinfo cat revision
root@ME:/sys/socinfo cat soc_id

Conclusion about first version :
* /sys/devices/system is not right place for this interface.
* "mach_name" should be declared as other attributes to simplify code.
* The get_info callback should use directly the "show" callback buffer.
* Documentation was missing (ABI description required)
* Errors were not reported at registration time.
* Macros should be used to create attributes.
* Some kernel coding rules not followed.


Any comments are welcome.

Note that I will be off from 13th to 21th of March.



Maxime Coquelin (2):
Export SoC info through sysfs
ux500: Export U8500 SoC info through sysfs

Documentation/ABI/testing/sysfs-socinfo | 16 ++++++
arch/arm/mach-ux500/Kconfig | 1 +
arch/arm/mach-ux500/id.c | 70 +++++++++++++++++++++++++++
drivers/base/Kconfig | 3 +
drivers/base/Makefile | 1 +
drivers/base/soc.c | 79 +++++++++++++++++++++++++++++++
include/linux/sys_soc.h | 50 +++++++++++++++++++
7 files changed, 220 insertions(+), 0 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-socinfo
create mode 100644 drivers/base/soc.c
create mode 100644 include/linux/sys_soc.h

 \ /
  Last update: 2011-03-11 13:43    [W:0.065 / U:1.744 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site