mirror of
https://github.com/unraid/webgui.git
synced 2026-04-24 19:29:13 -05:00
Merge pull request #907 from SimonFair/SystemDevicesAdditions
System devices additions
This commit is contained in:
@@ -17,6 +17,22 @@ $_SERVER['REQUEST_URI'] = 'tools';
|
||||
require_once "$docroot/webGui/include/Translations.php";
|
||||
require_once "$docroot/webGui/include/Helpers.php";
|
||||
|
||||
function usb_physical_port($usbbusdev) {
|
||||
if (preg_match('/^Bus (?P<bus>\S+) Device (?P<dev>\S+): ID (?P<id>\S+)(?P<name>.*)$/', $usbbusdev, $usbMatch)) {
|
||||
//udevadm info -a --name=/dev/bus/usb/003/002 | grep KERNEL==
|
||||
$udevcmd = "udevadm info -a --name=/dev/bus/usb/".$usbMatch['bus']."/".$usbMatch['dev']." | grep KERNEL==" ;
|
||||
$physical_busid = _("None") ;
|
||||
exec($udevcmd , $udev);
|
||||
if (isset($udev)) {
|
||||
$physical_busid = trim(substr($udev[0], 13) , '"') ;
|
||||
if (substr($physical_busid,0,3) =='usb') {
|
||||
$physical_busid = substr($physical_busid,3).'-0' ;
|
||||
}
|
||||
}
|
||||
}
|
||||
return($physical_busid) ;
|
||||
}
|
||||
|
||||
switch ($_POST['table']) {
|
||||
case 't1':
|
||||
exec('for group in $(ls /sys/kernel/iommu_groups/ -1|sort -n);do echo "IOMMU group $group";for device in $(ls -1 "/sys/kernel/iommu_groups/$group"/devices/);do echo -n $\'\t\';lspci -ns "$device"|awk \'BEGIN{ORS=" "}{print "["$3"]"}\';lspci -s "$device";done;done',$groups);
|
||||
@@ -136,7 +152,9 @@ case 't1':
|
||||
} else {
|
||||
exec('for usb_ctrl in $(find /sys/bus/usb/devices/usb* -maxdepth 0 -type l);do path="$(realpath "${usb_ctrl}")";if [[ $path == *'.$pciaddress.'* ]];then bus="$(cat "${usb_ctrl}/busnum")";lsusb -s $bus:|sort;fi;done',$getusb);
|
||||
foreach($getusb as $usbdevice) {
|
||||
echo "<tr><td></td><td></td><td></td><td></td><td style=\"padding-left: 50px;\">$usbdevice</td></tr>";
|
||||
[$bus,$id] = my_explode(':',$usbdevice);
|
||||
$usbport = usb_physical_port($usbdevice) ;
|
||||
echo "<tr><td></td><td></td><td></td><td></td><td style=\"padding-left: 50px;\">$bus Port $usbport\t\t".trim($id)."</td></tr>";
|
||||
}
|
||||
unset($getusb);
|
||||
}
|
||||
@@ -200,7 +218,8 @@ case 't3':
|
||||
exec('lsusb|sort',$lsusb);
|
||||
foreach ($lsusb as $line) {
|
||||
[$bus,$id] = my_explode(':',$line);
|
||||
echo "<tr><td>$bus:</td><td>".trim($id)."</td></tr>";
|
||||
$usbport = usb_physical_port($line) ;
|
||||
echo "<tr><td>$bus Port $usbport</td><td> ".trim($id)."</td></tr>";
|
||||
}
|
||||
break;
|
||||
case 't4':
|
||||
|
||||
Reference in New Issue
Block a user