From ac7c88b9356754c42fa667b4c59c140ee8f2c8f8 Mon Sep 17 00:00:00 2001 From: Frank Gevaerts Date: Tue, 17 Mar 2009 20:24:55 +0000 Subject: Make USB on sansas more reliable (FS#10026). Both fixes by Toni Hellmann git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20344 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/usb-drv-arc.c | 2 +- firmware/target/arm/usb-fw-pp502x.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'firmware') diff --git a/firmware/target/arm/usb-drv-arc.c b/firmware/target/arm/usb-drv-arc.c index af97e3e174..aafdbd1f2a 100644 --- a/firmware/target/arm/usb-drv-arc.c +++ b/firmware/target/arm/usb-drv-arc.c @@ -410,7 +410,7 @@ void usb_drv_reset(void) udelay(10); outl(inl(0x70000028) | 0x800, 0x70000028); outl(inl(0x70000028) & ~0x800, 0x70000028); - while (inl(0x70000028) & 0x80); + while ((inl(0x70000028) & 0x80) == 0); #endif } diff --git a/firmware/target/arm/usb-fw-pp502x.c b/firmware/target/arm/usb-fw-pp502x.c index cf5a82f37c..82be770889 100644 --- a/firmware/target/arm/usb-fw-pp502x.c +++ b/firmware/target/arm/usb-fw-pp502x.c @@ -106,6 +106,7 @@ void usb_init_device(void) while ((inl(0x70000028) & 0x80) == 0); outl(inl(0x70000028) | 0x2, 0x70000028); udelay(100000); + XMB_RAM_CFG |= 0x47A; /* Do one-time inits */ usb_drv_startup(); -- cgit v1.2.3