
Dear nerwusek,
On 09.08.2012 22:34, Marek Vasut wrote:
Dear Łukasz Dałek,
This patch starts series of patches adding support for USB support on PXA255 chips.
Signed-off-by: Łukasz Dałekluk0104@gmail.com
arch/arm/include/asm/arch-pxa/pxa-regs.h | 247
++++++++++++++++++++++++++++++ 1 files changed, 247 insertions(+), 0 deletions(-)
diff --git a/arch/arm/include/asm/arch-pxa/pxa-regs.h b/arch/arm/include/asm/arch-pxa/pxa-regs.h index b81b42c..114e9a2 100644 --- a/arch/arm/include/asm/arch-pxa/pxa-regs.h +++ b/arch/arm/include/asm/arch-pxa/pxa-regs.h @@ -2498,6 +2498,253 @@ typedef void (*ExcpHndlr) (void) ;
#endif /* CONFIG_CPU_PXA27X */
+#if defined(CONFIG_CPU_PXA25X)
+#ifdef CONFIG_PXA25X_UDC_LINUX +# define UDCCR *((volatile u32 *)0x40600000)
NAK, drop this #define altogether, use writel() readl() IO accessors, see below.
+#else +# define UDCCR 0x40600000
Ok ... so this is a register address, right? Can you rework this to use the struct-based access?
aka:
struct pxa2xx_udc_regs {
uint32_t udccr;
uint32_t uicr0;
....
};
And then when used, do:
struct pxa2xx_udc_regs *udc_regs;
writel(value,&udc_regs->udccr);
etc.
Ok, I'll rework this.
btw. you'll usually get better results (and faster review) by CCing me directly, I found your patches accidentally now.
Ok.
btw2. it'd be cool if someone reworked the PXA stuff to use struct based access altogerther ... see arch/arm/include/mach-mx28/regs*.h for some hints too.
Hmm, first of all I will fix my patches. Then we can talk about this but you will have to explain me what exactly should be reworked.
Did you study the files already? They should give you quite clear idea ... besides, I think I dumped further hints in the subsequent patches.
Łukasz Dałek
Best regards, Marek Vasut