
On 12/11/09 15:39, Ajay Kumar Gupta wrote:
Tested USB host functionality on DA830 EVM.
Signed-off-by: Ajay Kumar Gupta ajay.gupta@ti.com Signed-off-by: Swaminathan S swami.iyer@ti.com
drivers/usb/musb/Makefile | 1 + drivers/usb/musb/da8xx.c | 143
+++++++++++++++++++++++++++++++++++++++++++++
drivers/usb/musb/da8xx.h | 83 ++++++++++++++++++++++++++ include/usb.h | 3 +- 4 files changed, 229 insertions(+), 1 deletions(-) create mode 100644 drivers/usb/musb/da8xx.c create mode 100644 drivers/usb/musb/da8xx.h
+static void enable_vbus(void) +{
- u32 value;
- /* configure GPIO bank4 pin 15 in output direction */
- value = readl(DAVINCI_GPIO_BASE + BANK4_REG_DIR_ADDR);
- writel((value & (~USB_VBUS_GPIO)),
(DAVINCI_GPIO_BASE + BANK4_REG_DIR_ADDR));
And there is now a gpio_defs.h in /include/asm-arm/arch-davinci
So please use that.
Ideally a GPIO driver would be nice but it is not yet part of u-boot.
In general you should be using C structure pointers for all readl/writel accessors in new code. #defines are no longer considered acceptable, but occur through this patch. In case there is a compatibility issue with existing code, I think the legacy form is acceptable.
Indentation is also wrong here (and elsewhere) I believe. Using underscores to illustrate spaces, this should be:
writel((value | USB_VBUS_GPIO), _______(DAVINCI_GPIO_BASE + BANK4_REG_SET_ADDR));
This is a mix of tabs (8) and spaces (<= 7). Indentation should use tabs only, alignment uses spaces as required.
+static u8 phy_on(void) +{
- u32 timeout;
- u32 cfgchip2;
- cfgchip2 = readl(DAVINCI_BOOTCFG_BASE + CFGCHIP2);
C structures again, but in this case the initial da8xx patches provide the C structure and pointer already, so you can already replace this with:
cfgchip2 = readl(&davinci_syscfg_regs->cfgchip2);
Please take a look at hardware.h after the initial da8xx patches are in.
Thanks, Nick. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot