Files
infix/doc/hardware.md
2024-03-22 05:34:36 +01:00

1.6 KiB

Hardware Information and Status

The hardware infomation and status is handled by the YANG model IETF hardware, with deviations and augmentations in infix-hardware.

USB Ports

For Infix to be able to control USB port(s), a device tree modification is needed (see alder.dtsi for full example).

 chosen {
   infix {
     usb-ports = <&cp0_usb3_1>;
	 usb-port-names = "USB";
   };
 };

Two USB ports are also exposed in QEMU for test purpose.

All USB ports in the system will be disabled during boot due to the file board/common/rootfs/etc/modprobe.d/usbcore.conf. If you do not want Infix to control USB port(s), remove the file or manually enable the USB bus, here is an example:

# Enable the bus
 echo 1 > /sys/bus/usb/devices/usb1/authorized

And then enable sub-devices (e.g. USB memory)

 # Enable a device plugged into usb1
 echo 1 >  /sys/bus/usb/devices/usb1/1-1/authorized

Current status

 admin@example:/> show hardware
 USB PORTS
 NAME                STATE
 USB                 unlocked

An USB port can be in two states unlocked and locked. When a port is locked, all connected devices will get power, but never authorized by Linux to use.

Configure USB port

Note: You can only configure USB ports known to the system. See show hardware in admin-exec context. (Use do prefix in configure context.)

 root@example:/> configure
 root@example:/config/> set hardware component USB state admin-state unlocked
 root@example:/config/> leave
 root@example:/>