From: Zhang Rui <rui.zhang@intel.com>
To: Len Brown <lenb@kernel.org>
Cc: "linux-acpi@vger" <linux-acpi@vger.kernel.org>,
Li Shaohua <shaohua.li@intel.com>
Subject: Re: [PATCH 13/13] ACPI: use unique number as bus_id of ACPI device in sysfs
Date: Fri, 24 Nov 2006 17:40:31 +0800 [thread overview]
Message-ID: <1164361231.5768.93.camel@localhost.localdomain> (raw)
In-Reply-To: <200611240136.04511.len.brown@intel.com>
On Fri, 2006-11-24 at 01:36 -0500, Len Brown wrote:
> On Friday 24 November 2006 00:17, Len Brown wrote:
> > From: Zhang Rui <rui.zhang@intel.com>
> >
> > Previously we used the device name in the DSDT, but would
> > crash upon encountering a duplicate. Also, exposing
> > the DSDT device name to the user in a path isn't a
> > good idea, becauase it is arbitrary.
> > So just add two attributes for each device,
> > the full pathname in ACPI namespace and hardware_id.
>
> While this addresses the potential name conflict of the previous version,
> I think this needs some work.
>
> $ ls /sys/devices/0
> 1 10 2 3 4 5 57 6 7 8 9 bus hid path power subsystem uevent
>
> Assigning the unique numbers in a depth-first search
> leaves irritating gaps -- (see 10 and 57 above).
That's true.
But you know, ACPI namespace is a tree in nature. Depth-first is the
fastest way to traverse the ACPI namespace.
> Instance numbers need to be per-directory.
>
instance numbers should be unique in the whole ACPI bus, as all of them
are linked to /sys/bus/acpi/devices/.
> Also, IMHO, the numbers by themselves look a little strange,
> maybe dev0, dev1, dev%d etc. wouldn't look so strange?
>
Yes, I can do that. :)
> Also, the ACPI spec has some pre-defined root name-spaces, and I think
> it makes sense to look up the device name against a small table of
> those reserved names and print something more interesting than
> a number.
>
> eg.
> _SB system_bus
> _PR processors
> _TZ thermal_zones
> _SI system_indicators
> _GPE events
>
Yeah. I can do that. But few devices can benefit from this. :(.
BTW: Maybe I can generate a patch to get the following result:
Five devices with the fixed name shown above if they are declared in the
BIOS
And add a prefix for every devices, the prefix is one of fixed names,
_SB _PR _TZ _SI _GPE. So devices are shown like _SB:dev001, _TZ:dev001,
_PR:dev033 etc.
But does this make sense? :(
The best way is to define a unique and meaning rule to name all the ACPI
devices. Unfortunately we haven't reached an agreement until now, but I
think we can leave this for further discussion.
> thanks,
> -Len
next prev parent reply other threads:[~2006-11-24 9:37 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-11-24 5:17 contents of sysfs branch Len Brown
[not found] ` <bd119392c453771fdb994728a2568c2e3f17705d.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 1/13] ACPI: clean up scan.c Len Brown
[not found] ` <1b3d821f47ae0d8393851c4ff82f6dd667868ead.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 2/13] ACPI: rename some functions Len Brown
[not found] ` <5b4e67afe03abecbba9eb45805f4e14214fc65a6.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 3/13] ACPI: add device_driver and helper functions Len Brown
[not found] ` <1a01fe8f75dc4b96707ebdac366121e772063b96.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 4/13] ACPI: add ACPI bus_type for driver model Len Brown
[not found] ` <eb3ec2290520985fd3a9392342ab586fba1e33c3.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 5/13] ACPI: change registration interface to follow " Len Brown
[not found] ` <b4ade865912166d7657e5f2a5af4c546c7fe2959.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 6/13] ACPI: adjust init order Len Brown
[not found] ` <d190142cedf99bb444dfa27164686904773a7051.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 7/13] ACPI: convert to sysfs framework Len Brown
[not found] ` <b23b4763ca902ef393e87c81177a0b6d6f8388ae.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 8/13] ACPI: add acpi_bus_ops in acpi_device Len Brown
[not found] ` <68d72528fc25d05d0f6fc17212ea5f695448bee2.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 9/13] ACPI: add acpi_bus_removal_type " Len Brown
[not found] ` <46d1ee2fc5b8924aa5bb56c34f2205e6fc329b1b.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 10/13] ACPI: consolidate two motherboard drivers into one Len Brown
[not found] ` <e3eb7f2f2601e00fd34cf1e0b1f0c7cd324e0b6b.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 11/13] ACPI: Convert ACPI PCI .bind/.unbind to use PCI bridge driver Len Brown
[not found] ` <76e919d87de4de773fc728ecfb02f307b02c5f79.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 12/13] ACPI: Set fake hid for non-PNPID ACPI devices Len Brown
[not found] ` <d1f75c71119c62e4a399c5108250248213adfda6.1164343921.git.len.brown@intel.com>
2006-11-24 5:17 ` [PATCH 13/13] ACPI: use unique number as bus_id of ACPI device in sysfs Len Brown
2006-11-24 6:36 ` Len Brown
2006-11-24 9:40 ` Zhang Rui [this message]
2006-11-26 5:10 ` Zhang Rui
2006-11-27 6:10 ` Len Brown
2006-11-27 6:35 ` Zhang Rui
2006-11-27 6:06 ` Len Brown
2006-12-01 8:55 ` updated patches of sysfs branch Zhang Rui
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1164361231.5768.93.camel@localhost.localdomain \
--to=rui.zhang@intel.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=shaohua.li@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox