Rafał Miłecki | 0f24762 | 2016-09-16 16:13:48 +0200 | [diff] [blame] | 1 | USB port LED trigger |
| 2 | ==================== |
| 3 | |
| 4 | This LED trigger can be used for signalling to the user a presence of USB device |
| 5 | in a given port. It simply turns on LED when device appears and turns it off |
| 6 | when it disappears. |
| 7 | |
| 8 | It requires selecting USB ports that should be observed. All available ones are |
| 9 | listed as separated entries in a "ports" subdirectory. Selecting is handled by |
| 10 | echoing "1" to a chosen port. |
| 11 | |
| 12 | Please note that this trigger allows selecting multiple USB ports for a single |
| 13 | LED. This can be useful in two cases: |
| 14 | |
| 15 | 1) Device with single USB LED and few physical ports |
| 16 | |
| 17 | In such a case LED will be turned on as long as there is at least one connected |
| 18 | USB device. |
| 19 | |
| 20 | 2) Device with a physical port handled by few controllers |
| 21 | |
| 22 | Some devices may have one controller per PHY standard. E.g. USB 3.0 physical |
| 23 | port may be handled by ohci-platform, ehci-platform and xhci-hcd. If there is |
| 24 | only one LED user will most likely want to assign ports from all 3 hubs. |
| 25 | |
| 26 | |
| 27 | This trigger can be activated from user space on led class devices as shown |
| 28 | below: |
| 29 | |
| 30 | echo usbport > trigger |
| 31 | |
| 32 | This adds sysfs attributes to the LED that are documented in: |
| 33 | Documentation/ABI/testing/sysfs-class-led-trigger-usbport |
| 34 | |
| 35 | Example use-case: |
| 36 | |
| 37 | echo usbport > trigger |
| 38 | echo 1 > ports/usb1-port1 |
| 39 | echo 1 > ports/usb2-port1 |
| 40 | cat ports/usb1-port1 |
| 41 | echo 0 > ports/usb1-port1 |