Skip to content
Snippets Groups Projects
Commit b4e78faa authored by Nikhil Badola's avatar Nikhil Badola Committed by York Sun
Browse files

drivers:usb: Check if USB Erratum A005697 is applicable on BSC913x


Check if USB Erratum A005697 is applicable on BSC913x and
add corresponding  property in the device tree via device
tree fixup which is used by linux driver

Signed-off-by: default avatarNikhil Badola <nikhil.badola@freescale.com>
Reviewed-by: default avatarYork Sun <yorksun@freescale.com>
parent 00704590
No related branches found
No related tags found
No related merge requests found
...@@ -263,6 +263,7 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd) ...@@ -263,6 +263,7 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd)
int usb_erratum_a006261_off = -1; int usb_erratum_a006261_off = -1;
int usb_erratum_a007075_off = -1; int usb_erratum_a007075_off = -1;
int usb_erratum_a007792_off = -1; int usb_erratum_a007792_off = -1;
int usb_erratum_a005697_off = -1;
int usb_mode_off = -1; int usb_mode_off = -1;
int usb_phy_off = -1; int usb_phy_off = -1;
char str[5]; char str[5];
...@@ -346,6 +347,14 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd) ...@@ -346,6 +347,14 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd)
if (usb_erratum_a007792_off < 0) if (usb_erratum_a007792_off < 0)
return; return;
} }
if (has_erratum_a005697()) {
usb_erratum_a005697_off = fdt_fixup_usb_erratum
(blob,
"fsl,usb-erratum-a005697",
usb_erratum_a005697_off);
if (usb_erratum_a005697_off < 0)
return;
}
} }
} }
#endif #endif
...@@ -196,6 +196,19 @@ static inline bool has_erratum_a007792(void) ...@@ -196,6 +196,19 @@ static inline bool has_erratum_a007792(void)
return false; return false;
} }
static inline bool has_erratum_a005697(void)
{
u32 svr = get_svr();
u32 soc = SVR_SOC_VER(svr);
switch (soc) {
case SVR_9131:
case SVR_9132:
return IS_SVR_REV(svr, 1, 0) || IS_SVR_REV(svr, 1, 1);
}
return false;
}
#else #else
static inline bool has_dual_phy(void) static inline bool has_dual_phy(void)
{ {
...@@ -221,5 +234,10 @@ static inline bool has_erratum_a007792(void) ...@@ -221,5 +234,10 @@ static inline bool has_erratum_a007792(void)
{ {
return false; return false;
} }
static inline bool has_erratum_a005697(void)
{
return false;
}
#endif #endif
#endif /*_ASM_FSL_USB_H_ */ #endif /*_ASM_FSL_USB_H_ */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment