summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorIlya Yanok <ilya.yanok@cogentembedded.com>2012-11-06 13:48:25 +0000
committerMarek Vasut <marex@denx.de>2012-11-20 00:16:07 +0100
commit833a53c627b839a28b5925ba283109b141f6cff0 (patch)
treefb0f303fa61f432e1d2f27323ed2729626cb2527 /arch/arm
parentd2aa1154b95a211416c1511005451dfcf076dd97 (diff)
downloadu-boot-imx-833a53c627b839a28b5925ba283109b141f6cff0.zip
u-boot-imx-833a53c627b839a28b5925ba283109b141f6cff0.tar.gz
u-boot-imx-833a53c627b839a28b5925ba283109b141f6cff0.tar.bz2
musb-new: am35x backend driver
Backend driver for MUSB OTG controllers found on TI AM35x. It seems that on AM35X interrupt status registers can be updated _before_ core registers. As we don't use true interrupts in U-Boot and poll interrupt status registers instead this can result in interrupt handler being called with non-updated core registers. This confuses the code and result in hanged transfers. Add a small delay in am35x_interrupt as a workaround. Signed-off-by: Ilya Yanok <ilya.yanok@cogentembedded.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/include/asm/omap_musb.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/include/asm/omap_musb.h b/arch/arm/include/asm/omap_musb.h
index 0081a68..46c8578 100644
--- a/arch/arm/include/asm/omap_musb.h
+++ b/arch/arm/include/asm/omap_musb.h
@@ -18,8 +18,11 @@
#define __ASM_ARM_OMAP_MUSB_H
extern struct musb_platform_ops musb_dsps_ops;
+extern const struct musb_platform_ops am35x_ops;
struct omap_musb_board_data {
void (*set_phy_power)(u8 on);
+ void (*clear_irq)(void);
+ void (*reset)(void);
};
#endif /* __ASM_ARM_OMAP_MUSB_H */