12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- Notes on the the generic USB-OHCI driver
- ========================================
- This driver (drivers/usb_ohci.[ch]) is the result of the merge of
- various existing OHCI drivers that were basically identical beside
- cpu/board dependant initalization. This initalization has been moved
- into cpu/board directories and are called via the hooks below.
- Configuration options
- ----------------------
- CONFIG_USB_OHCI_NEW: enable the new OHCI driver
- CFG_USB_OHCI_BOARD_INIT: call the board dependant hooks:
- - extern int usb_board_init(void);
- - extern int usb_board_stop(void);
- - extern int usb_cpu_init_fail(void);
- CFG_USB_OHCI_CPU_INIT: call the cpu dependant hooks:
- - extern int usb_cpu_init(void);
- - extern int usb_cpu_stop(void);
- - extern int usb_cpu_init_fail(void);
- CFG_USB_OHCI_REGS_BASE: defines the base address of the OHCI registers
- CFG_USB_OHCI_SLOT_NAME: slot name
- CFG_USB_OHCI_MAX_ROOT_PORTS: maximal number of ports of the root hub.
- Endianness issues
- ------------------
- The LITTLEENDIAN #define determines if the 'swap_16' and 'swap_32'
- macros do byte swapping or not. But some cpus OHCI-controllers such as
- ppc4xx and mpc5xxx operate in little endian mode, so some extra ifdefs
- were necessary to make this work.
|