Re: [PATCH] leds: Document standard LED functions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 20 Sep 2020 18:26:25 +0200
Jacek Anaszewski <jacek.anaszewski@xxxxxxxxx> wrote:

> Add a documentation for standard LED functions with regard
> to differences in meaning between cases when devicename section
> of an LED name is present or not.
> 
> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@xxxxxxxxx>
> ---
>  Documentation/leds/led-functions.rst | 226 +++++++++++++++++++++++++++++++++++
>  1 file changed, 226 insertions(+)
>  create mode 100644 Documentation/leds/led-functions.rst
> 
> diff --git a/Documentation/leds/led-functions.rst b/Documentation/leds/led-functions.rst
> new file mode 100644
> index 000000000000..42621dd81235
> --- /dev/null
> +++ b/Documentation/leds/led-functions.rst
> @@ -0,0 +1,226 @@
> +============================================
> +Standardized LED functions and their meaning
> +============================================
> +
> +Each LED function is described using below template:
> +
> +LED function name
> +-----------------
> +
> +    NDEV : <function meaning when LED devicename section is absent>
> +    DEV  : <function meaning when LED devicename section is present>
> +    DEVICENAME : <expected LED devicename for DEV case>
> +    TRIGGER: <matching LED trigger>
> +
> +LED functions with corresponding LED trigger support
> +----------------------------------------------------
> +
> +- activity
> +    NDEV : system activity
> +    DEV  : n/a
> +    TRIGGER : "activity"
> +

Hi Jacek,
as I wrote in another discussion, but maybe we should discuss this here.
Are your opinions on this matter final or are you open for discussion?

For activity: the thing is that activity is sometimes interpreted as
the union of rx and tx, or read and write. I think the pair (device,function)
could be used better to infer the actual trigger and its settings, than
just (function,). For example:
	device	function		trigger
        ------  --------                -------
	system	activity		cpu activity
	(empty)	activity		cpu activity
	eth0	activity		netdev rx/tx
	sda	activity		disk read/write on sda
	wlan0	activity		phy rx/tx

> +- backlight
> +    NDEV : when there is a single one on the platform
> +    DEV  : backlight of a frame buffer device
> +    DEVICENAME : associated frame buffer device, e.g. fb0
> +    TRIGGER: "backlight"
> +
> +- disk
> +    NDEV : rw activity on any disk in the system
> +    DEV  : rw activity on specified disk
> +    DEVICENAME : associated disk, e.g.: hda, sdb
> +    TRIGGER : "disk-activity", applies only to NDEV case
> +
> +- disk-read / disk-write
> +    NDEV : read / write activity on any disk in the system
> +    DEV  : read / write  activity on specified disk
> +    DEVICENAME : associted disk, e.g.: hda, sdb
> +    TRIGGER : "disk-read" / "disk-write" , applies only to NDEV case
> +

Currently the disk trigger blinks on events for any device, user cannot
specify just one. If we implemented this, I think the trigger name
should be just "disk", and whether it is read/write/both should be
decided by sysfs files "read" and "write" as is in netdev trigger files
"rx" and "tx".

Moreover I think it would make more sense (but other people can of
course disagree) if the LED function for LED associated with a disk
could be "activity", "read" or "write",

	device	function		trigger
        ------  --------                -------
	sda	activity		disk read/write on sda
	sda	read			disk read on sda
	sda	write			disk write on sda

Marek

> +- flash
> +    NDEV : flash LED (if there is single available on the platform)
> +    DEV  : flash LED related to the specified video device
> +    DEVICENAME : associated video device, e.g. v4l2-subdev3
> +    TRIGGER : "flash"; this LED can be also controlled by v4l2-flash framework
> +
> +- flash-front
> +    NDEV : n/a
> +    DEV  : front flash LED related to the specified video device
> +    DEVICENAME : associated video device, e.g. v4l2-subdev3
> +    TRIGGER : "flash"; this LED can be also controlled by v4l2-flash framework
> +
> +- flash-rear
> +    NDEV : n/a
> +    DEV  : rear flash LED related to the specified video device
> +    DEVICENAME : associated video device, e.g. v4l2-subdev3
> +    TRIGGER : "flash"; this LED can be also controlled by v4l2-flash framework
> +
> +- heartbeat
> +    NDEV : cpu load average expressed as heartbeat-fashion blink frequency
> +    DEV  : n/a
> +    TRIGGER : "heartbeat"
> +
> +- lan
> +    NDEV : n/a
> +    DEV  : network traffic on selected network device
> +    DEVICENAME : associated phy, e.g. phy1
> +    TRIGGER : "netdev"
>
> +- wlan
> +    NDEV : activity on any wlan device
> +    DEV  : activity on a specified wlan device
> +    DEVICENAME: associated phy, e.g. phy1
> +    TRIGGER: wlan device drivers may implement their own triggers
> +             using phyN-function naming
> +
> +- mute
> +    NDEV : platform audio output mute state
> +    DEV  : mute state of specified audio device output
> +    DEVICENAME : associated audio device
> +    TRIGGER : "audio-mute"
> +
> +- micmute
> +    NDEV : plaform microphone input mute state
> +    DEV  : mute state of a microphone belonging to the specified device
> +    DEVICENAME : associated audio device
> +    TRIGGER : "audio-micmute"
> +
> +- mtd
> +    NDEV : rw actvity on any mtd device in the system
> +    DEV  : rw actvity on specified mtd device
> +    DEVICENAME : associated mtd device, e.g mtdN
> +    TRIGGER : "mtd"
> +
> +- panic
> +    NDEV : signals kernel panic
> +    DEV  : n/a
> +    TRIGGER : "panic"
> +
> +- torch
> +    NDEV : torch LED (if there is single available on the platform)
> +    DEV  : torch LED related to the specified video device
> +    DEVICENAME : associated video device, e.g. video1, v4l2-subdev3
> +    TRIGGER : "torch"; this LED can be also controlled by v4l2-flash framework
> +
> +- usb
> +    NDEV : activity on any USB port
> +    DEV  : activity on a specified USB port
> +    DEVICENAME: associated USB device identifier
> +    TRIGGER : "usbport"
> +
> +- numlock
> +    NDEV : n/a
> +    DEV  : keyboard numlock state related to the specified input device
> +    DEVICENAME : associated input device, e.g. input1
> +    TRIGGER : "kbd-numlock"
> +
> +- capslock
> +    NDEV : n/a
> +    DEV  : keyboard capslock state related to the specified input device
> +    DEVICENAME : associated input device, e.g. input1
> +    TRIGGER : "kbd-capslock"
> +
> +- scrolllock
> +    NDEV : n/a
> +    DEV  : keyboard scrollock state related to the specified input device
> +    DEVICENAME : associated input device, e.g. input1
> +    TRIGGER : "kbd-scrolllock"
> +
> +
> +LED functions without corresponding trigger support
> +---------------------------------------------------
> +
> +- alarm
> +    NDEV : system wide alarm
> +    DEV  : n/a
> +
> +- bluetooth
> +    NDEV : activity on platform bluetooth adapter
> +    DEV  : activity on bluetooth adapter related to the specified device
> +    DEVICENAME : associated device
> +
> +- boot
> +    NDEV : when lit indicates system boot
> +    DEV  : n/a
> +
> +- charging
> +    NDEV : battery charging status
> +    DEV  : n/a
> +
> +- debug
> +    NDEV : signals if device runs in debug mode
> +    DEV  : n/a
> +
> +- disk-err
> +    NDEV : failure on any disk in the system
> +    DEV  : failure on specified disk
> +    DEVICENAME : associted disk, e.g.: hda, sdb
> +
> +- fault
> +    NDEV : general system fault
> +    DEV  : fault on specified system device
> +    DEVICENAME : related device name
> +
> +- indicator
> +    NDEV : signals if platform camera sensor is active
> +    DEV  : signals if camera sensor related to the specified video device is active
> +    DEVICENAME : associated video device, e.g.: v4l2-subdev3
> +
> +- kbd_backlight
> +    NDEV : platform keyboard backlight state
> +    DEV  : backlight state related to the specified device
> +    DEVICENAME : associated device, e.g. input1
> +
> +- mail
> +    NDEV : signals a new massage in mailbox
> +    DEV  : n/a
> +
> +- programming
> +    NDEV : platform firmware update is in progress
> +    DEV  : n/a
> +
> +- power
> +    NDEV : power plug presence indicator
> +    DEV  : n/a
> +
> +- rx
> +    NDEV : n/a
> +    DEV  : activity on rx line of serial port related to the specified tty device
> +    DEVICENAME: associated tty device, e.g.: tty1, ttyUSB2
> +
> +- tx
> +    NDEV : n/a
> +    DEV  : activity on tx line of serial port related to the specified tty device
> +    DEVICENAME: associated tty device, e.g.: tty1, ttyUSB2
> +
> +- sd
> +    NDEV : n/a
> +    DEV  : activity on sd card related to the specified device
> +    DEVICENAME: associated disk, e.g. sdb
> +
> +- sleep
> +    NDEV : signals any variant of system hibernation or suspend state
> +    DEV  : n/a
> +
> +- standby
> +    NDEV : device standby status
> +    DEV  : n/a
> +
> +- status
> +    NDEV : system wide status LED
> +    DEV  : n/a
> +
> +- system
> +    NDEV : system is fully operating
> +    DEV  : n/a
> +
> +- wan
> +    NDEV : activity on any WAN device
> +    DEV  : activity on a specified WAN device
> +    DEVICENAME: associated WAN device identifier
> +
> +- wps
> +    NDEV : n/a
> +    DEV  : wps functionality activation state related to the specified device
> +    DEVICENAME : associated device name




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux