Skip to content

Commit

Permalink
Merge tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linu…
Browse files Browse the repository at this point in the history
…x/kernel/git/gregkh/driver-core

Pull driver core and documentation fixes from Greg KH:
 "Here is one tiny debugfs change to fix up an API where the last user
  was successfully fixed up in 5.10-rc1 (so it couldn't be merged
  earlier), and a much larger Documentation/ABI/ update to the files so
  they can be automatically parsed by our tools.

  The Documentation/ABI/ updates are just formatting issues, small ones
  to bring the files into parsable format, and have been acked by
  numerous subsystem maintainers and the documentation maintainer. I
  figured it was good to get this into 5.10-rc2 to help wih the merge
  issues that would arise if these were to stick in linux-next until
  5.11-rc1.

  The debugfs change has been in linux-next for a long time, and the
  Documentation updates only for the last linux-next release"

* tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (40 commits)
  scripts: get_abi.pl: assume ReST format by default
  docs: ABI: sysfs-class-led-trigger-pattern: remove hw_pattern duplication
  docs: ABI: sysfs-class-backlight: unify ABI documentation
  docs: ABI: sysfs-c2port: remove a duplicated entry
  docs: ABI: sysfs-class-power: unify duplicated properties
  docs: ABI: unify /sys/class/leds/<led>/brightness documentation
  docs: ABI: stable: remove a duplicated documentation
  docs: ABI: change read/write attributes
  docs: ABI: cleanup several ABI documents
  docs: ABI: sysfs-bus-nvdimm: use the right format for ABI
  docs: ABI: vdso: use the right format for ABI
  docs: ABI: fix syntax to be parsed using ReST notation
  docs: ABI: convert testing/configfs-acpi to ReST
  docs: Kconfig/Makefile: add a check for broken ABI files
  docs: abi-testing.rst: enable --rst-sources when building docs
  docs: ABI: don't escape ReST-incompatible chars from obsolete and removed
  docs: ABI: create a 2-depth index for ABI
  docs: ABI: make it parse ABI/stable as ReST-compatible files
  docs: ABI: sysfs-uevent: make it compatible with ReST output
  docs: ABI: testing: make the files compatible with ReST output
  ...
  • Loading branch information
torvalds committed Nov 1, 2020
2 parents 2376cca + 2fcce37 commit 9c75b68
Show file tree
Hide file tree
Showing 250 changed files with 4,134 additions and 2,493 deletions.
10 changes: 9 additions & 1 deletion Documentation/ABI/README
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ The different levels of stability are:
layout of the files below for details on how to do this.)

obsolete/
This directory documents interfaces that are still remaining in
This directory documents interfaces that are still remaining in
the kernel, but are marked to be removed at some later point in
time. The description of the interface will document the reason
why it is obsolete and when it can be expected to be removed.
Expand All @@ -58,6 +58,14 @@ Users: All users of this interface who wish to be notified when
be changed further.


Note:
The fields should be use a simple notation, compatible with ReST markup.
Also, the file **should not** have a top-level index, like::

===
foo
===

How things move between levels:

Interfaces in stable may move to obsolete, as long as the proper
Expand Down
8 changes: 4 additions & 4 deletions Documentation/ABI/obsolete/sysfs-class-dax
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ Description: Device DAX is the device-centric analogue of Filesystem
system. Device DAX is strict, precise and predictable.
Specifically this interface:

1/ Guarantees fault granularity with respect to a given
page size (pte, pmd, or pud) set at configuration time.
1. Guarantees fault granularity with respect to a given
page size (pte, pmd, or pud) set at configuration time.

2/ Enforces deterministic behavior by being strict about
what fault scenarios are supported.
2. Enforces deterministic behavior by being strict about
what fault scenarios are supported.

The /sys/class/dax/ interface enumerates all the
device-dax instances in the system. The ABI is
Expand Down
3 changes: 3 additions & 0 deletions Documentation/ABI/obsolete/sysfs-driver-hid-roccat-pyra
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@ Description: It is possible to switch the cpi setting of the mouse with the
setting reported by the mouse. This number has to be further
processed to receive the real dpi value:

===== ====
VALUE DPI
===== ====
1 400
2 800
4 1600
===== ====

This file is readonly.
Has never been used. If bookkeeping is done, it's done in userland tools.
Expand Down
2 changes: 2 additions & 0 deletions Documentation/ABI/obsolete/sysfs-gpio
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Description:
GPIOs are identified as they are inside the kernel, using integers in
the range 0..INT_MAX. See Documentation/admin-guide/gpio for more information.

::

/sys/class/gpio
/export ... asks the kernel to export a GPIO to userspace
/unexport ... to return a GPIO to the kernel
Expand Down
1 change: 1 addition & 0 deletions Documentation/ABI/removed/devfs
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Description:
devfs has been unmaintained for a number of years, has unfixable
races, contains a naming policy within the kernel that is
against the LSB, and can be replaced by using udev.

The files fs/devfs/*, include/linux/devfs_fs*.h were removed,
along with the assorted devfs function calls throughout the
kernel tree.
Expand Down
1 change: 1 addition & 0 deletions Documentation/ABI/removed/raw1394
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Description:
to implement sensible device security policies, and its low level
of abstraction that required userspace clients to duplicate much
of the kernel's ieee1394 core functionality.

Replaced by /dev/fw*, i.e. the <linux/firewire-cdev.h> ABI of
firewire-core.

Expand Down
2 changes: 1 addition & 1 deletion Documentation/ABI/removed/sysfs-class-rfkill
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ Description: This file was deprecated because there no longer was a way to
claim just control over a single rfkill instance.
This file was scheduled to be removed in 2012, and was removed
in 2016.
Values: 0: Kernel handles events
Values: 0: Kernel handles events
1 change: 1 addition & 0 deletions Documentation/ABI/removed/video1394
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Description:
performance issues in its first generation. Any video1394 user had
to use raw1394 + libraw1394 too because video1394 did not provide
asynchronous I/O for device discovery and configuration.

Replaced by /dev/fw*, i.e. the <linux/firewire-cdev.h> ABI of
firewire-core.

Expand Down
69 changes: 38 additions & 31 deletions Documentation/ABI/stable/firewire-cdev
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,17 @@ Description:
Each /dev/fw* is associated with one IEEE 1394 node, which can
be remote or local nodes. Operations on a /dev/fw* file have
different scope:

- The 1394 node which is associated with the file:

- Asynchronous request transmission
- Get the Configuration ROM
- Query node ID
- Query maximum speed of the path between this node
and local node

- The 1394 bus (i.e. "card") to which the node is attached to:

- Isochronous stream transmission and reception
- Asynchronous stream transmission and reception
- Asynchronous broadcast request transmission
Expand All @@ -31,7 +35,9 @@ Description:
manager
- Query cycle time
- Bus reset initiation, bus reset event reception

- All 1394 buses:

- Allocation of IEEE 1212 address ranges on the local
link layers, reception of inbound requests to such
an address range, asynchronous response transmission
Expand All @@ -43,6 +49,7 @@ Description:
userland implement different access permission models, some
operations are restricted to /dev/fw* files that are associated
with a local node:

- Addition of descriptors or directories to the local
nodes' Configuration ROM
- PHY packet transmission and reception
Expand All @@ -55,50 +62,50 @@ Description:
The following file operations are supported:

open(2)
Currently the only useful flags are O_RDWR.
Currently the only useful flags are O_RDWR.

ioctl(2)
Initiate various actions. Some take immediate effect, others
are performed asynchronously while or after the ioctl returns.
See the inline documentation in <linux/firewire-cdev.h> for
descriptions of all ioctls.
Initiate various actions. Some take immediate effect, others
are performed asynchronously while or after the ioctl returns.
See the inline documentation in <linux/firewire-cdev.h> for
descriptions of all ioctls.

poll(2), select(2), epoll_wait(2) etc.
Watch for events to become available to be read.
Watch for events to become available to be read.

read(2)
Receive various events. There are solicited events like
outbound asynchronous transaction completion or isochronous
buffer completion, and unsolicited events such as bus resets,
request reception, or PHY packet reception. Always use a read
buffer which is large enough to receive the largest event that
could ever arrive. See <linux/firewire-cdev.h> for descriptions
of all event types and for which ioctls affect reception of
events.
Receive various events. There are solicited events like
outbound asynchronous transaction completion or isochronous
buffer completion, and unsolicited events such as bus resets,
request reception, or PHY packet reception. Always use a read
buffer which is large enough to receive the largest event that
could ever arrive. See <linux/firewire-cdev.h> for descriptions
of all event types and for which ioctls affect reception of
events.

mmap(2)
Allocate a DMA buffer for isochronous reception or transmission
and map it into the process address space. The arguments should
be used as follows: addr = NULL, length = the desired buffer
size, i.e. number of packets times size of largest packet,
prot = at least PROT_READ for reception and at least PROT_WRITE
for transmission, flags = MAP_SHARED, fd = the handle to the
/dev/fw*, offset = 0.
Allocate a DMA buffer for isochronous reception or transmission
and map it into the process address space. The arguments should
be used as follows: addr = NULL, length = the desired buffer
size, i.e. number of packets times size of largest packet,
prot = at least PROT_READ for reception and at least PROT_WRITE
for transmission, flags = MAP_SHARED, fd = the handle to the
/dev/fw*, offset = 0.

Isochronous reception works in packet-per-buffer fashion except
for multichannel reception which works in buffer-fill mode.

munmap(2)
Unmap the isochronous I/O buffer from the process address space.
Unmap the isochronous I/O buffer from the process address space.

close(2)
Besides stopping and freeing I/O contexts that were associated
with the file descriptor, back out any changes to the local
nodes' Configuration ROM. Deallocate isochronous channels and
bandwidth at the IRM that were marked for kernel-assisted
re- and deallocation.

Users: libraw1394
libdc1394
libhinawa
Besides stopping and freeing I/O contexts that were associated
with the file descriptor, back out any changes to the local
nodes' Configuration ROM. Deallocate isochronous channels and
bandwidth at the IRM that were marked for kernel-assisted
re- and deallocation.

Users: libraw1394;
libdc1394;
libhinawa;
tools like linux-firewire-utils, fwhack, ...
26 changes: 15 additions & 11 deletions Documentation/ABI/stable/sysfs-acpi-pmprofile
Original file line number Diff line number Diff line change
@@ -1,22 +1,26 @@
What: /sys/firmware/acpi/pm_profile
What: /sys/firmware/acpi/pm_profile
Date: 03-Nov-2011
KernelVersion: v3.2
Contact: [email protected]
Description: The ACPI pm_profile sysfs interface exports the platform
Description: The ACPI pm_profile sysfs interface exports the platform
power management (and performance) requirement expectations
as provided by BIOS. The integer value is directly passed as
retrieved from the FADT ACPI table.
Values: For possible values see ACPI specification:

Values: For possible values see ACPI specification:
5.2.9 Fixed ACPI Description Table (FADT)
Field: Preferred_PM_Profile

Currently these values are defined by spec:
0 Unspecified
1 Desktop
2 Mobile
3 Workstation
4 Enterprise Server
5 SOHO Server
6 Appliance PC
7 Performance Server

== =================
0 Unspecified
1 Desktop
2 Mobile
3 Workstation
4 Enterprise Server
5 SOHO Server
6 Appliance PC
7 Performance Server
>7 Reserved
== =================
3 changes: 3 additions & 0 deletions Documentation/ABI/stable/sysfs-bus-firewire
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ Description:
IEEE 1394 node device attribute.
Read-only and immutable.
Values: 1: The sysfs entry represents a local node (a controller card).

0: The sysfs entry represents a remote node.


Expand Down Expand Up @@ -125,7 +126,9 @@ Description:
Read-only attribute, immutable during the target's lifetime.
Format, as exposed by firewire-sbp2 since 2.6.22, May 2007:
Colon-separated hexadecimal string representations of

u64 EUI-64 : u24 directory_ID : u16 LUN

without 0x prefixes, without whitespace. The former sbp2 driver
(removed in 2.6.37 after being superseded by firewire-sbp2) used
a somewhat shorter format which was not as close to SAM.
Expand Down
19 changes: 10 additions & 9 deletions Documentation/ABI/stable/sysfs-bus-nvmem
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,14 @@ Description:
Note: This file is only present if CONFIG_NVMEM_SYSFS
is enabled

ex:
hexdump /sys/bus/nvmem/devices/qfprom0/nvmem
ex::

0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
00000a0 db10 2240 0000 e000 0c00 0c00 0000 0c00
0000000 0000 0000 0000 0000 0000 0000 0000 0000
...
*
0001000
hexdump /sys/bus/nvmem/devices/qfprom0/nvmem

0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
00000a0 db10 2240 0000 e000 0c00 0c00 0000 0c00
0000000 0000 0000 0000 0000 0000 0000 0000 0000
...
*
0001000
6 changes: 4 additions & 2 deletions Documentation/ABI/stable/sysfs-bus-usb
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,10 @@ Description:

Tools can use this file and the connected_duration file to
compute the percentage of time that a device has been active.
For example,
echo $((100 * `cat active_duration` / `cat connected_duration`))
For example::

echo $((100 * `cat active_duration` / `cat connected_duration`))

will give an integer percentage. Note that this does not
account for counter wrap.
Users:
Expand Down
7 changes: 0 additions & 7 deletions Documentation/ABI/stable/sysfs-bus-vmbus
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,6 @@ Contact: Stephen Hemminger <[email protected]>
Description: VCPU (sub)channel is affinitized to
Users: tools/hv/lsvmbus and other debugging tools

What: /sys/bus/vmbus/devices/<UUID>/channels/<N>/cpu
Date: September. 2017
KernelVersion: 4.14
Contact: Stephen Hemminger <[email protected]>
Description: VCPU (sub)channel is affinitized to
Users: tools/hv/lsvmbus and other debugging tools

What: /sys/bus/vmbus/devices/<UUID>/channels/<N>/in_mask
Date: September. 2017
KernelVersion: 4.14
Expand Down
1 change: 1 addition & 0 deletions Documentation/ABI/stable/sysfs-bus-w1
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Description: Bus scanning interval, microseconds component.
control systems are attached/generate presence for as short as
100 ms - hence the tens-to-hundreds milliseconds scan intervals
are required.

see Documentation/w1/w1-generic.rst for detailed information.
Users: any user space application which wants to know bus scanning
interval
1 change: 1 addition & 0 deletions Documentation/ABI/stable/sysfs-class-backlight
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ KernelVersion: 2.6.12
Contact: Richard Purdie <[email protected]>
Description:
Control BACKLIGHT power, values are FB_BLANK_* from fb.h

- FB_BLANK_UNBLANK (0) : power on.
- FB_BLANK_POWERDOWN (4) : power off
Users: HAL
Expand Down
Loading

0 comments on commit 9c75b68

Please sign in to comment.