Usbahcicore.ko
| AVM Wiki >> Shell-Befehle >> usbahcicore.ko | @ whmf - IRC-Chat - hu nl it English |
| Community | Modelle | Zubehör | Environment | Konfiguration | Shell-Befehle | Software | Freetz | Lexikon | Tipps+Tricks | Bilder |
| Startup-Scripts | AVM-Befehle | BusyBox-Befehle | Linux-Befehle | Shared Libraries | Kernel-Module | Listings | Todo |
Contents |
Modul
| Modul: | usbahcicore.ko | Man | Code | Wiki | Freetz | IPPF | whmf | AVM | Web |
| Pfad: | /lib/modules/*/kernel | ||||||||
| Typ: | Kernel-Modul | ||||||||
| Status: | Open Source (GPL) (nur im 4.29 Source) - Source: .06 .29 .49 .76 7170.80 .87 7270.86 .05 7390.91 .05 .20 | ||||||||
| Pakete: | AVM_USB_HOST_AVM (CONFIG) | ||||||||
| Modelle: | 7170 4.80 (Listing) | ||||||||
| Remove: | TODO | ||||||||
| Funktion: | AVM USB-Host Kernel-Treiber für AR7-Modelle mit FPGA AHCI-Controller | ||||||||
Dieses Modul bedient den USB-Host-Controller den AVM bei neueren AR7-Modellen mit Microvoip-Stack wie z.B. der 7170 im Spartan FPGA realisiert hat. Es hat komplexe Zusammenhänge zu anderen Modulen die nicht aus den Dependencies ersichtlich sind.
Das FPGA stellt einen Registerbereich im EMIF-Adressraum des AR7 bereit, daher muss das BitFile microvoip_isdn_top.bit (7150: microvoip_top.bit) mit der EMIF-Variante Piglet.ko geladen sein. Dazu muss das Modul ubik2.ko geladen sein, das wiederum tiatm.ko benötigt, mit laufender microvoip-dsl.bin Firmware. Die Adresse des vom FPGA eingeblendeten AHCI-Controllers findet man so:
$ grep piglet /proc/iomem be000000-be000068 : piglet_emifreg
Diese Adresse wird usbahcicore.so beim Laden übergeben.
Das Hotplugging wird vom USB-Subsystem im Kernel gesteuert. Dieses ruft bei Veränderungen das in /proc/sys/kernel/hotplug eingetragene Script hotplug auf, das die vom Kernel übermittelten Angaben für usb.pandu aufbereitet. Zusätzlich wird ctlmgr über libavm_event.so durch ein usb_status Event getriggert, und ruft dann usbhostchanged auf, das wiederum "storage reload" ausführt. Neuere AR7-Modelle mit WLAN (7141, 7150, 7170) triggern das hotplug Script auch über tiap.ko. Dies ist wohl der Aufruf von Stick & Surf durch FRITZ! Mini.
Als minimalistischste Anwendung dieser USB-Host-Lösung ist die 2170 ohne Telefonie und WLAN interessant. In ihrer Firmware befindet sich eine weitaus kleinere Version von ubik2.ko, da ohne Telefonie der Upper Layer nicht benötigt wird, auch genügt das kleinste in der FRITZ!Box verbaute FPGA (XC3S100E).
Aufgerufen von
- rc.usbhost (modprobe / rmmod)
Aufruf
$ modinfo usbahcicore filename: /lib/modules/2.6.13.1-ohio/kernel/drivers/usb/ahci/usbahcicore.ko description: AVM Host Controller Interface Driver author: AVM GmbH license: GPL depends: usbcore vermagic: 2.6.13.1-ohio gcc-3.4 parm: AHCI_BaseAddress: i parm: AHCI_RegisterOffset: i parm: AHCI_IntLine: i
Beispiele
Aus rc.usbhost einer 7170 fw 4.80:
modprobe usbahcicore AHCI_BaseAddress=0xbe008000 AHCI_RegisterOffset=0x4000 AHCI_IntLine=1
Symbole
$ grep " usbahcicore" /lib/modules/`uname -r`/modules.symbols | sed 's/symbol://' | awk '{ print " " $2 }' | sort nix
Abhängigkeiten
Siehe auch
Dateisystem: (156)
- Lexikon: Device, Partition, Label, UUID, Partitionierung
- Lexikon: Dateisystem, Verzeichnisstruktur, Daten-Verzeichnisse
- Lexikon: SCSI, MTD, SquashFS, TFFS, JFFS2, YAFFS2, FAT, NTFS, EXT, ReiserFS, ProcFS
- Software: e2fsprogs, NBD
- Urlader: flashsize, mtd0, mtd1, mtd2, mtd3, mtd4, mtd5, mtd6, mtd7, jffs2_size
- CONFIG_: JFFS2, NTFS, EXT2, EXT3, YAFFS2
- WebCM: isNtfs
- Konfig: filesystems, fstab, mtab, e2fsck.conf, mke2fs.conf
- Tempfiles: jffs2.image
- Daten: FRITZ/, data/, cache/, faxbox/, fonpix/, fonring/, rec/, tam/, voicebox/, webdav/
- Plugin: plugin-ntfs.image
- Befehle: S15-filesys, reinit_jffs2, run_clock, mount, umount, ntfs-3g, fs_error
- Befehle: chattr (bb), lsattr (bb), e2fsck (bb), mke2fs (bb), e2label (bb), fsck (bb), tune2fs (bb), findfs, hdparm
- Befehle: blkid, e2fsck, fsck.ext2, fsck.ext3, fsck.ext4, fsck.ext4dev, fsck, mke2fs, mkfs.ext2, mkfs.ext3
- Befehle: chattr, lsattr, e2label, tune2fs, dumpe2fs, e2image, e2undo, debugfs, logsave, badblocks, filefrag, uuidd, uuidgen
- Befehle: resize2fs, test_extent, e2freefrag
- Befehle: mkswap (ul), lsblk, mkfs
- Libraries: libtffs.so, libfuse.so, libntfs-3g.so
- Libraries: libblkid.so, libcom_err.so, libe2p.so, libext2fs.so, libuuid.so, libss.so
- Libraries: libblkid.so (ul), libuuid.so (ul)
- Kernel: mtd.ko, squashfs.ko, tffs.ko, ext2.ko, ext3.ko, fat.ko, isofs.ko, jffs2.ko, vfat.ko, msdos.ko
- Kernel: loop.ko, nand.ko, yaffs2.ko, nfs.ko
- Kernel: nls_cp437.ko, nls_cp850.ko, nls_iso8859-1.ko, nls_iso8859-15.ko, nls_utf8.ko, nls_ascii.ko
- Kernel: fuse.ko, jbd.ko, mbcache.ko, scsi_mod.ko, sd_mod.ko, sg.ko, scsi_tgt.ko
- Kernel: usb-storage.ko, usbahcicore.ko, usbcore.ko, nbd.ko
- Devices: mtdblock, mtd, tffs, sd, loop, nand, nbd
- ProcFS: filesystems (proc), mounts, partitions, tffs (proc), mtd (proc)
- Freetz: PACKAGE_E2FSPROGS, REMOVE_AVM_E2FSPROGS
USB-Host: (89)
- Lexikon: USB, USB-Host, Hotplugging, Dateisystem
- Dienste: Printserver, UMTS, AURA, Media-Server, NAS, FTP, Stick & Surf
- Bauteile: Spartan, ISP1106, TNETV115
- Geräte: USB-Host-Modelle
- CONFIG_USB_: HOST, HOST_AVM, HOST_INTERNAL, HOST_TI, INTERNAL_HUB
- CONFIG_USB_: STORAGE, STORAGE_SPINDOWN, STORAGE_USERS
- CONFIG_USB_: GSM, GSM_VOICE, LTE, PRINT_SERV, WLAN_AUTH
- UI-Module: ctlusb, storageusers, storagedirectories, usbdevices
- Konfig: usb.cfg, usb.cfg (etc), usbdesc.xml, usbSCPD.xml
- Tempfiles: passwd.tmp. users.acl.tmp, users.acl, users.map, usbhostup, ctlusb_unplug_ok, NEW_LINK/
- Befehle: usbcfgconv, usbcfgctl, S46-usb, rc.usbhost, usb_host.sh, hd-idle, lsusb, pause, rc.USB, supportdata.usb
- Libraries: libusbcfg.so, libctlusb.so, libupnpdevusb.so, libacgenusb.so, libwebusb.so, libavmacl.so
- Kernel: usb-storage.ko, usbcore.ko, usbmon.ko, usbohcicore.ko, usbahcicore.ko
- Kernel: musb_hdrc.ko, ifxusb_host.ko, ehci-hcd.ko, ohci-hcd.ko
- Kernel: scsi_mod.ko, sd_mod.ko, sg.ko, scsi_wait_scan.ko
- Kernel: usblp.ko, printer.ko, option.ko, usbserial.ko, usbauth.ko, cdc-acm.ko, ftdi_sio.ko
- Kernel: usbnet.ko, cdc_ether.ko, ue_lte.ko, ueservice.ko
- Devices: sd, ttyACM
- Puffer: .SHMUSBDEVICES
- ProcFS: ohci_HcRev, usb_host_driver_ver
- Freetz: REMOVE_USB_HOST