mirror of
https://git.codelinaro.org/clo/qsdk/oss/boot/u-boot-2016.git
synced 2026-03-05 17:00:59 +01:00
board: qca: make usb mode fixup generic framework
The configuration from SoC (ipq6018, ipq5018, & ipq9574) specific files is moved to fdt_fixup.c as a result of this change. Change-Id: I4f20e1a58ce88aea415debe305e69fb21cb6e162 Signed-off-by: Vandhiadevan Karunamoorthy <quic_vkarunam@quicinc.com>
This commit is contained in:
parent
fe643c818e
commit
121a50914d
5 changed files with 32 additions and 94 deletions
|
|
@ -896,6 +896,38 @@ __weak void fdt_fixup_runtime_failsafe(void *blob)
|
|||
return;
|
||||
}
|
||||
|
||||
__weak void ipq_fdt_fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
const char *usb_cfg;
|
||||
|
||||
usb_cfg = getenv("usb_mode");
|
||||
if (!usb_cfg)
|
||||
return;
|
||||
|
||||
if (!strncmp(usb_cfg, "peripheral", sizeof("peripheral"))) {
|
||||
goto peripheral;
|
||||
} else if (!strncmp(usb_cfg, "diag_gadget", sizeof("diag_gadget"))) {
|
||||
if (fdt_path_offset(blob, "/soc/qcom,gadget_diag@0") < 0){
|
||||
parse_fdt_fixup(
|
||||
"/qti,gadget_diag@0%status%?ok", blob);
|
||||
} else {
|
||||
parse_fdt_fixup(
|
||||
"/soc/qcom,gadget_diag@0%status%?ok", blob);
|
||||
}
|
||||
} else {
|
||||
printf("%s: invalid param for usb_mode\n", __func__);
|
||||
return;
|
||||
}
|
||||
|
||||
peripheral:
|
||||
parse_fdt_fixup(
|
||||
"/soc/usb3@8A00000/dwc3@8A00000%dr_mode%?peripheral",
|
||||
blob);
|
||||
parse_fdt_fixup(
|
||||
"/soc/usb3@8A00000/dwc3@8A00000%maximum-speed%?high-speed",
|
||||
blob);
|
||||
}
|
||||
|
||||
__weak void ipq_fdt_fixup_socinfo(void *blob)
|
||||
{
|
||||
uint32_t cpu_type;
|
||||
|
|
|
|||
|
|
@ -622,11 +622,6 @@ void set_flash_secondary_type(qca_smem_flash_info_t *smem)
|
|||
return;
|
||||
};
|
||||
|
||||
void ipq_fdt_fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_DEVSOC_EDMA
|
||||
void devsoc_eth_initialize(void)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -440,34 +440,6 @@ int apps_iscrashed(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void __fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%dr_mode%?peripheral", blob);
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%maximum-speed%?high-speed", blob);
|
||||
}
|
||||
|
||||
static void fdt_fixup_diag_gadget(void *blob)
|
||||
{
|
||||
__fixup_usb_device_mode(blob);
|
||||
parse_fdt_fixup("/soc/qcom,gadget_diag@0%status%?ok", blob);
|
||||
}
|
||||
|
||||
void ipq_fdt_fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
const char *usb_cfg;
|
||||
|
||||
usb_cfg = getenv("usb_mode");
|
||||
if (!usb_cfg)
|
||||
return;
|
||||
|
||||
if (!strncmp(usb_cfg, "peripheral", sizeof("peripheral")))
|
||||
__fixup_usb_device_mode(blob);
|
||||
else if (!strncmp(usb_cfg, "diag_gadget", sizeof("diag_gadget")))
|
||||
fdt_fixup_diag_gadget(blob);
|
||||
else
|
||||
printf("%s: invalid param for usb_mode\n", __func__);
|
||||
}
|
||||
|
||||
void fdt_fixup_auto_restart(void *blob)
|
||||
{
|
||||
const char *paniconwcssfatal;
|
||||
|
|
|
|||
|
|
@ -790,39 +790,6 @@ int ipq_board_usb_init(void)
|
|||
}
|
||||
#endif
|
||||
|
||||
static void __fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%dr_mode%?peripheral", blob);
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%maximum-speed%?high-speed", blob);
|
||||
}
|
||||
|
||||
static void fdt_fixup_diag_gadget(void *blob)
|
||||
{
|
||||
__fixup_usb_device_mode(blob);
|
||||
|
||||
if (fdt_path_offset(blob, "/soc/qcom,gadget_diag@0") < 0){
|
||||
parse_fdt_fixup("/qti,gadget_diag@0%status%?ok", blob);
|
||||
} else {
|
||||
parse_fdt_fixup("/soc/qcom,gadget_diag@0%status%?ok", blob);
|
||||
}
|
||||
}
|
||||
|
||||
void ipq_fdt_fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
const char *usb_cfg;
|
||||
|
||||
usb_cfg = getenv("usb_mode");
|
||||
if (!usb_cfg)
|
||||
return;
|
||||
|
||||
if (!strncmp(usb_cfg, "peripheral", sizeof("peripheral")))
|
||||
__fixup_usb_device_mode(blob);
|
||||
else if (!strncmp(usb_cfg, "diag_gadget", sizeof("diag_gadget")))
|
||||
fdt_fixup_diag_gadget(blob);
|
||||
else
|
||||
printf("%s: invalid param for usb_mode\n", __func__);
|
||||
}
|
||||
|
||||
void enable_caches(void)
|
||||
{
|
||||
qca_smem_flash_info_t *sfi = &qca_smem_flash_info;
|
||||
|
|
|
|||
|
|
@ -420,34 +420,6 @@ int ipq_board_usb_init(void)
|
|||
}
|
||||
#endif
|
||||
|
||||
static void __fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%dr_mode%?peripheral", blob);
|
||||
parse_fdt_fixup("/soc/usb3@8A00000/dwc3@8A00000%maximum-speed%?high-speed", blob);
|
||||
}
|
||||
|
||||
static void fdt_fixup_diag_gadget(void *blob)
|
||||
{
|
||||
__fixup_usb_device_mode(blob);
|
||||
parse_fdt_fixup("/qti,gadget_diag@0%status%?ok", blob);
|
||||
}
|
||||
|
||||
void ipq_fdt_fixup_usb_device_mode(void *blob)
|
||||
{
|
||||
const char *usb_cfg;
|
||||
|
||||
usb_cfg = getenv("usb_mode");
|
||||
if (!usb_cfg)
|
||||
return;
|
||||
|
||||
if (!strncmp(usb_cfg, "peripheral", sizeof("peripheral")))
|
||||
__fixup_usb_device_mode(blob);
|
||||
else if (!strncmp(usb_cfg, "diag_gadget", sizeof("diag_gadget")))
|
||||
fdt_fixup_diag_gadget(blob);
|
||||
else
|
||||
printf("%s: invalid param for usb_mode\n", __func__);
|
||||
}
|
||||
|
||||
int ipq_validate_qfrom_fuse(unsigned int reg_add, int pos)
|
||||
{
|
||||
return (readl(reg_add) & (1 << pos));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue