From 1640d141913367827ab442276a943b0a3bba2e20 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 26 Jan 2017 00:08:43 +0100 Subject: [PATCH] luci-mod-admin-full: support configuring usbport LED triggers Signed-off-by: Jo-Philipp Wich --- .../luasrc/model/cbi/admin_system/leds.lua | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua index 8d9bcb137..4b6f397e6 100644 --- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua +++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_system/leds.lua @@ -109,6 +109,13 @@ function usbdev.remove(self, section) end end + +usbport = s:option(MultiValue, "ports", translate("USB Ports")) +usbport:depends("trigger", "usbport") +usbport.rmempty = true +usbport.widget = "checkbox" +usbport.size = 1 + for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*/manufacturer") do local id = p:match("%d+-%d+") local mf = nixio.fs.readfile("/sys/bus/usb/devices/" .. id .. "/manufacturer") or "?" @@ -116,4 +123,12 @@ for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*/manufacturer") do usbdev:value(id, "%s (%s - %s)" %{ id, mf, pr }) end +for p in nixio.fs.glob("/sys/bus/usb/devices/[0-9]*") do + local bus, port = p:match("(%d+)-(%d+)") + if bus and port then + usbport:value("usb%u-port%u" %{ tonumber(bus), tonumber(port) }, + "Hub %u, Port %u" %{ tonumber(bus), tonumber(port) }) + end +end + return m -- 2.11.0