* [PATCH] document sysfs rom file interface
@ 2005-12-09 19:55 Jesse Barnes
0 siblings, 0 replies; only message in thread
From: Jesse Barnes @ 2005-12-09 19:55 UTC (permalink / raw)
To: gregkh, linux-kernel, Ian Romanick
[-- Attachment #1: Type: text/plain, Size: 404 bytes --]
idr gently pointed out today that not only is the sysfs rom file
interface somewhat unintuitive (despite my efforts and initial
implementation), but it's also undocumented! This patch to
Documentation/filesystems/sysfs-pci.txt corrects the latter problem; the
former is a userland ABI now though, so we're stuck with it for awhile
at least.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
[-- Attachment #2: sysfs-rom-file-documentation.patch --]
[-- Type: text/x-diff, Size: 2432 bytes --]
diff --git a/Documentation/filesystems/sysfs-pci.txt b/Documentation/filesystems/sysfs-pci.txt
index 988a62f..7ba2baa 100644
--- a/Documentation/filesystems/sysfs-pci.txt
+++ b/Documentation/filesystems/sysfs-pci.txt
@@ -1,4 +1,5 @@
Accessing PCI device resources through sysfs
+--------------------------------------------
sysfs, usually mounted at /sys, provides access to PCI resources on platforms
that support it. For example, a given bus might look like this:
@@ -47,14 +48,21 @@ files, each with their own function.
binary - file contains binary data
cpumask - file contains a cpumask type
-The read only files are informational, writes to them will be ignored.
-Writable files can be used to perform actions on the device (e.g. changing
-config space, detaching a device). mmapable files are available via an
-mmap of the file at offset 0 and can be used to do actual device programming
-from userspace. Note that some platforms don't support mmapping of certain
-resources, so be sure to check the return value from any attempted mmap.
+The read only files are informational, writes to them will be ignored, with
+the exception of the 'rom' file. Writable files can be used to perform
+actions on the device (e.g. changing config space, detaching a device).
+mmapable files are available via an mmap of the file at offset 0 and can be
+used to do actual device programming from userspace. Note that some platforms
+don't support mmapping of certain resources, so be sure to check the return
+value from any attempted mmap.
+
+The 'rom' file is special in that it provides read-only access to the device's
+ROM file, if available. It's disabled by default, however, so applications
+should write the string "1" to the file to enable it before attempting a read
+call, and disable it following the access by writing "0" to the file.
Accessing legacy resources through sysfs
+----------------------------------------
Legacy I/O port and ISA memory resources are also provided in sysfs if the
underlying platform supports them. They're located in the PCI class heirarchy,
@@ -75,6 +83,7 @@ simply dereference the returned pointer
to access legacy memory space.
Supporting PCI access on new platforms
+--------------------------------------
In order to support PCI resource mapping as described above, Linux platform
code must define HAVE_PCI_MMAP and provide a pci_mmap_page_range function.
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2005-12-09 19:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-09 19:55 [PATCH] document sysfs rom file interface Jesse Barnes
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox