Fix TUSB6010 ID register offsets.
Subsystems (2)
PATCH 1/1 Fix TUSB6010 ID register offsets.
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
I have no access to the docs for this chip but I'm pretty sure the current address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
drivers/usb/musb/tusb6010.h +2 -2
@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20) -#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define TUSB_DIDR1_HI_REV_30 1
Signature · 1 line
1.5.3.4
Quoted 20 lines · Andrzej Zaborowski
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
I have no access to the docs for this chip but I'm pretty sure the current address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
Signed-off-by Andrzej Zaborowski <[email protected]>--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)drivers/usb/musb/tusb6010.h +0
-0
drivers/usb/musb/tusb6010.h extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables); · line 232
Quoted 10 lines
drivers/usb/musb/tusb6010.h +2
-2@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20) -#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define TUSB_DIDR1_HI_REV_30 1
This looks like a valid fix. Hmm, I guess we've had some unnecessary software workarounds for tusb3.1 chips happening :)
Tony
Quoted 24 lines · Tony Lindgren
Quoted 23 lines · Andrzej Zaborowski
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
I have no access to the docs for this chip but I'm pretty sure the current address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
Signed-off-by Andrzej Zaborowski <[email protected]>--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)drivers/usb/musb/tusb6010.h +0
-0@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20)
Quoted 10 lines
drivers/usb/musb/tusb6010.h extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables); · line 232
Quoted 7 lines
drivers/usb/musb/tusb6010.h +2
-2-#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define TUSB_DIDR1_HI_REV_30 1This looks like a valid fix. Hmm, I guess we've had some unnecessary software workarounds for tusb3.1 chips happening :)
Ugh, I'm out for today and tomorrow but I'll test on wednesday and make sure it works.
thanks, btw.
Signature · 5 lines
Best Regards, Felipe Balbi [email protected] http://blog.felipebalbi.com
Quoted 37 lines · Felipe Balbi
Quoted 24 lines · Tony Lindgren
Quoted 23 lines · Andrzej Zaborowski
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
I have no access to the docs for this chip but I'm pretty sure the current address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
Signed-off-by Andrzej Zaborowski <[email protected]>--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)drivers/usb/musb/tusb6010.h +0
-0@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20)Quoted 10 lines
drivers/usb/musb/tusb6010.h extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables); · line 232
Quoted 7 lines
drivers/usb/musb/tusb6010.h +2
-2-#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define TUSB_DIDR1_HI_REV_30 1This looks like a valid fix. Hmm, I guess we've had some unnecessary software workarounds for tusb3.1 chips happening :)
Quoted 2 lines
Ugh, I'm out for today and tomorrow but I'll test on wednesday and make
sure it works.
Thanks.
I only checked with usb-net, the only difference was that I got "dieid2" instead of "dieid5" in the dmesg (2 seems correct for rev3.1). The machine is some n810 proto (says N00).
Cheers
Signature · 2 lines
Please do not print this email unless absolutely necessary. Spread environmental awareness.
Quoted 6 lines · Andrzej Zaborowski
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
I have no access to the docs for this chip but I'm pretty sure the
current
Quoted 5 lines
address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
Signed-off-by Andrzej Zaborowski <[email protected]>
Quoted 27 lines
--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)drivers/usb/musb/tusb6010.h +2
-2@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20) -#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define
TUSB_DIDR1_HI_REV_301
--
1.5.3.4--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Signature · 5 lines
Best Regards, Felipe Balbi http://felipebalbi.com [email protected]
Quoted 9 lines · Felipe Balbi
Quoted 5 lines · Andrzej Zaborowski
From: Andrzej Zaborowski <[email protected]>
[Sorry, the previous patch was a copy/paste mistake, this one should be better]
Quoted 8 lines
Quoted 1 line
I have no access to the docs for this chip but I'm pretty sure the
current
Quoted 5 lines
address of the two DIDR1 registers is wrong because it's outside the TUSB-specific register space. The modified address in turn has a good chance to be correct.
Signed-off-by Andrzej Zaborowski <[email protected]>Acked-by Felipe Balbi <[email protected]>
Pushed.
Tony
Quoted 38 lines
Quoted 27 lines
--- drivers/usb/musb/tusb6010.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)drivers/usb/musb/tusb6010.h +2
-2@@ -225,8 +225,8 @@ extern void tusb_allow_idle(struct musb *musb, u32 wakeup_enables);#define TUSB_PROD_TEST_RESET_VAL 0xa596#define TUSB_EP_FIFO (ep) (TUSB_FIFO_BASE + (ep) * 0x20) -#define TUSB_DIDR1_LO 0x1f8 -#define TUSB_DIDR1_HI 0x1fc +#define TUSB_DIDR1_LO (TUSB_SYS_REG_BASE + 0x1f8) +#define TUSB_DIDR1_HI (TUSB_SYS_REG_BASE + 0x1fc)#define TUSB_DIDR1_HI_CHIP_REV (v) (((v) >> 17) & 0xf)#define TUSB_DIDR1_HI_REV_20 0#define
TUSB_DIDR1_HI_REV_301
--
1.5.3.4--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.htmlSignature · 10 lines
Best Regards, Felipe Balbi http://felipebalbi.com [email protected] -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html