android_kernel_xiaomi_sm8350/drivers
Kay Sievers fbf82fd2e1 [PATCH] USB: real nodes instead of usbfs
This patch introduces a /sys/class/usb_device/ class
where every connected usb-device will show up:

  tree /sys/class/usb_device/
  /sys/class/usb_device/
  |-- usb1.1
  |   |-- dev
  |   `-- device -> ../../../devices/pci0000:00/0000:00:1d.0/usb1
  |-- usb2.1
  |   |-- dev
  |   `-- device -> ../../../devices/pci0000:00/0000:00:1d.1/usb2
  ...

The presence of the "dev" file lets udev create real device nodes.
  kay@pim:~/src/linux-2.6> tree /dev/bus/usb/
  /dev/bus/usb/
  |-- 1
  |   `-- 1
  |-- 2
  |   `-- 1
  ...

udev rule:
  SUBSYSTEM="usb_device", PROGRAM="/sbin/usb_device %k", NAME="%c"
  (echo $1 | /bin/sed 's/usb\([0-9]*\)\.\([0-9]*\)/bus\/usb\/\1\/\2/')

This makes libusb pick up the real nodes instead of the mounted usbfs:
  export USB_DEVFS_PATH=/dev/bus/usb

Background:
  All this makes it possible to manage usb devices with udev instead of
  the devfs solution. We are currently working on a pam_console/resmgr
  replacement driven by udev and a pam-helper. It applies ACL's to device
  nodes, which is required for modern desktop functionalty like
  "Fast User Switching" or multiple local login support.

New patch with its own major. I've succesfully disabled usbfs and use real
nodes only on my box. With: "export USB_DEVFS_PATH=/dev/bus/usb" libusb picks
up the udev managed nodes instead of reading usbfs files.

This makes udev to provide symlinks for libusb to pick up:
  SUBSYSTEM="usb_device", PROGRAM="/sbin/usbdevice %k", SYMLINK="%c"

/sbin/usbdevice:
  #!/bin/sh
  echo $1 | /bin/sed 's/usbdev\([0-9]*\)\.\([0-9]*\)/bus\/usb\/\1\/\2/'

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-09-08 16:22:29 -07:00
..
acorn
acpi [ACPI] revert bad processor_core.c patch for bug 5128 2005-09-03 12:41:12 -04:00
atm [ATM]: Fix dereference of uninitialized pointer in zatm 2005-09-02 12:18:03 -07:00
base [SCSI] Re-do "final klist fixes" 2005-09-07 18:44:33 -07:00
block Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-09-07 17:31:27 -07:00
bluetooth
cdrom Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-09-07 17:31:27 -07:00
char Merge linux-2.6 with linux-acpi-2.6 2005-09-08 01:45:47 -04:00
cpufreq
crypto
dio
eisa
fc4
firmware [PATCH] dcdbas: add Dell Systems Management Base Driver with sysfs support 2005-09-07 16:57:27 -07:00
hwmon [PATCH] hwmon: (3/3) pc87360 driver update 2005-09-05 09:26:55 -07:00
i2c [PATCH] drivers: convert kcalloc to kzalloc 2005-09-07 16:57:46 -07:00
ide Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-09-07 17:31:27 -07:00
ieee1394 [PATCH] provide MODALIAS= enviroment variable to autoload ieee1394 modules via udev 2005-09-07 16:57:41 -07:00
infiniband [PATCH] drivers: convert kcalloc to kzalloc 2005-09-07 16:57:46 -07:00
input [PATCH] Input: Add a new switch event type 2005-09-07 16:57:54 -07:00
isdn [PATCH] -Wundef fixes (hisax) 2005-09-07 17:17:33 -07:00
macintosh [PATCH] swsusp: switch pm_message_t to struct 2005-09-05 00:06:16 -07:00
mca
md [PATCH] kill bio->bi_set 2005-09-07 16:57:20 -07:00
media [PATCH] DVB: lgdt330x check callback fix 2005-09-07 16:58:02 -07:00
message Merge by hand (conflicts in sd.c) 2005-09-06 17:52:54 -05:00
mfd
misc [SERIAL] Update ibmasm driver for death of register_serial&co 2005-09-07 21:37:00 +01:00
mmc [PATCH] mmc: conditional scr sysfs entry 2005-09-07 16:57:52 -07:00
mtd [PATCH] detect soft lockups 2005-09-07 16:57:17 -07:00
net Merge branch 'upstream' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6 2005-09-07 17:28:25 -07:00
nubus
oprofile
parisc
parport [PATCH] parport: add NetMOS 9805 support 2005-09-07 16:57:28 -07:00
pci Merge linux-2.6 with linux-acpi-2.6 2005-09-08 01:45:47 -04:00
pcmcia [PATCH] yenta: make ToPIC95 bridges work with 16bit cards 2005-09-07 16:57:21 -07:00
pnp Merge linux-2.6 with linux-acpi-2.6 2005-09-08 01:45:47 -04:00
s390 [PATCH] s390: claw driver fixes 2005-09-06 22:15:20 -04:00
sbus [SPARC64]: Use drivers/Kconfig 2005-08-30 21:46:19 -07:00
scsi [PATCH] scan all enabled ports on ata_piix 2005-09-08 05:57:23 -04:00
serial Merge linux-2.6 with linux-acpi-2.6 2005-09-08 01:45:47 -04:00
sh
sn
tc
telephony
usb [PATCH] USB: real nodes instead of usbfs 2005-09-08 16:22:29 -07:00
video [PATCH] w100fb: Rewrite for platform independence 2005-09-07 16:57:53 -07:00
w1
zorro
Kconfig
Makefile