1Notes on the the generic USB-OHCI driver 2======================================== 3 4This driver (drivers/usb/usb_ohci.[ch]) is the result of the merge of 5various existing OHCI drivers that were basically identical beside 6cpu/board dependant initalization. This initalization has been moved 7into cpu/board directories and are called via the hooks below. 8 9Configuration options 10---------------------- 11 12 CONFIG_USB_OHCI_NEW: enable the new OHCI driver 13 14 CFG_USB_OHCI_BOARD_INIT: call the board dependant hooks: 15 16 - extern int usb_board_init(void); 17 - extern int usb_board_stop(void); 18 - extern int usb_cpu_init_fail(void); 19 20 CFG_USB_OHCI_CPU_INIT: call the cpu dependant hooks: 21 22 - extern int usb_cpu_init(void); 23 - extern int usb_cpu_stop(void); 24 - extern int usb_cpu_init_fail(void); 25 26 CFG_USB_OHCI_REGS_BASE: defines the base address of the OHCI 27 registers 28 29 CFG_USB_OHCI_SLOT_NAME: slot name 30 31 CFG_USB_OHCI_MAX_ROOT_PORTS: maximal number of ports of the 32 root hub. 33 34 35Endianness issues 36------------------ 37 38The USB bus operates in little endian, but unfortunately there are 39OHCI controllers that operate in big endian such as ppc4xx and 40mpc5xxx. For these the config option 41 42 CFG_OHCI_BE_CONTROLLER 43 44needs to be defined. 45 46 47PCI Controllers 48---------------- 49 50You'll need to define 51 52 CONFIG_PCI_OHCI 53 54If you have several USB PCI controllers, define 55 56 CONFIG_PCI_OHCI_DEVNO: number of the OHCI device in PCI list 57 58If undefined, the first instance found in PCI space will be used. 59 60PCI Controllers need to do byte swapping on register accesses, so they 61should to define: 62 63 CFG_OHCI_SWAP_REG_ACCESS 64