drivers: usb: fsl: Check USB Erratum A007792 applicability
Check USB Erratum A007792 applicability. If applicable, add corresponding property in the device tree via device tree fixup Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
This commit is contained in:
parent
ecfc19f31f
commit
da5ce448c7
|
@ -262,6 +262,7 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd)
|
||||||
static const char * const phys[] = { "ulpi", "utmi" };
|
static const char * const phys[] = { "ulpi", "utmi" };
|
||||||
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_mode_off = -1;
|
int usb_mode_off = -1;
|
||||||
int usb_phy_off = -1;
|
int usb_phy_off = -1;
|
||||||
char str[5];
|
char str[5];
|
||||||
|
@ -332,6 +333,14 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd)
|
||||||
if (usb_erratum_a007075_off < 0)
|
if (usb_erratum_a007075_off < 0)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (has_erratum_a007792()) {
|
||||||
|
usb_erratum_a007792_off = fdt_fixup_usb_erratum
|
||||||
|
(blob,
|
||||||
|
"fsl,usb-erratum-a007792",
|
||||||
|
usb_erratum_a007792_off);
|
||||||
|
if (usb_erratum_a007792_off < 0)
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -145,6 +145,25 @@ static inline bool has_erratum_a007798(void)
|
||||||
return SVR_SOC_VER(get_svr()) == SVR_T4240 &&
|
return SVR_SOC_VER(get_svr()) == SVR_T4240 &&
|
||||||
IS_SVR_REV(get_svr(), 2, 0);
|
IS_SVR_REV(get_svr(), 2, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool has_erratum_a007792(void)
|
||||||
|
{
|
||||||
|
u32 svr = get_svr();
|
||||||
|
u32 soc = SVR_SOC_VER(svr);
|
||||||
|
|
||||||
|
switch (soc) {
|
||||||
|
case SVR_T4240:
|
||||||
|
case SVR_T4160:
|
||||||
|
return IS_SVR_REV(svr, 2, 0);
|
||||||
|
case SVR_T1040:
|
||||||
|
return IS_SVR_REV(svr, 1, 0);
|
||||||
|
case SVR_T2080:
|
||||||
|
case SVR_T2081:
|
||||||
|
return IS_SVR_REV(svr, 1, 0) || IS_SVR_REV(svr, 1, 1);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
static inline bool has_erratum_a006261(void)
|
static inline bool has_erratum_a006261(void)
|
||||||
{
|
{
|
||||||
|
@ -161,5 +180,9 @@ static inline bool has_erratum_a007798(void)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool has_erratum_a007792(void)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
#endif /*_ASM_FSL_USB_H_ */
|
#endif /*_ASM_FSL_USB_H_ */
|
||||||
|
|
Loading…
Reference in New Issue