Re: [U-Boot] [PATCH 2/3] DA8xx: Add MUSB host support
On 12/11/09 15:39, Ajay Kumar Gupta wrote: Tested USB host functionality on DA830 EVM. Signed-off-by: Ajay Kumar Gupta ajay.gu...@ti.com Signed-off-by: Swaminathan S swami.i...@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)); 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
Re: [U-Boot] [PATCH 2/3] DA8xx: Add MUSB host support
On 12/11/09 15:39, Ajay Kumar Gupta wrote: Tested USB host functionality on DA830 EVM. Signed-off-by: Ajay Kumar Gupta ajay.gu...@ti.com Signed-off-by: Swaminathan S swami.i...@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 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot