Commit 3098f5eb authored by Florian Fainelli's avatar Florian Fainelli

soc: bcm: brcmstb: biuctrl: Tune 7260 BIU interface

7260A0 and B0 are both supported, and 7260A0 has a small difference in
that it does not support the write-back control register, which is why
we have a different array of registers. Update the comment above
b53_cpubiuctrl_no_wb_regs to denote that difference.
Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
parent e42617b8
...@@ -63,7 +63,7 @@ static const int b15_cpubiuctrl_regs[] = { ...@@ -63,7 +63,7 @@ static const int b15_cpubiuctrl_regs[] = {
[CPU_WRITEBACK_CTRL_REG] = -1, [CPU_WRITEBACK_CTRL_REG] = -1,
}; };
/* Odd cases, e.g: 7260 */ /* Odd cases, e.g: 7260A0 */
static const int b53_cpubiuctrl_no_wb_regs[] = { static const int b53_cpubiuctrl_no_wb_regs[] = {
[CPU_CREDIT_REG] = 0x0b0, [CPU_CREDIT_REG] = 0x0b0,
[CPU_MCP_FLOW_REG] = 0x0b4, [CPU_MCP_FLOW_REG] = 0x0b4,
...@@ -102,6 +102,7 @@ static int __init mcp_write_pairing_set(void) ...@@ -102,6 +102,7 @@ static int __init mcp_write_pairing_set(void)
} }
static const u32 b53_mach_compat[] = { static const u32 b53_mach_compat[] = {
0x7260,
0x7268, 0x7268,
0x7271, 0x7271,
0x7278, 0x7278,
...@@ -157,6 +158,7 @@ static void __init mcp_b53_set(void) ...@@ -157,6 +158,7 @@ static void __init mcp_b53_set(void)
static int __init setup_hifcpubiuctrl_regs(struct device_node *np) static int __init setup_hifcpubiuctrl_regs(struct device_node *np)
{ {
struct device_node *cpu_dn; struct device_node *cpu_dn;
u32 family_id;
int ret = 0; int ret = 0;
cpubiuctrl_base = of_iomap(np, 0); cpubiuctrl_base = of_iomap(np, 0);
...@@ -185,7 +187,8 @@ static int __init setup_hifcpubiuctrl_regs(struct device_node *np) ...@@ -185,7 +187,8 @@ static int __init setup_hifcpubiuctrl_regs(struct device_node *np)
} }
of_node_put(cpu_dn); of_node_put(cpu_dn);
if (BRCM_ID(brcmstb_get_family_id()) == 0x7260) family_id = brcmstb_get_family_id();
if (BRCM_ID(family_id) == 0x7260 && BRCM_REV(family_id) == 0)
cpubiuctrl_regs = b53_cpubiuctrl_no_wb_regs; cpubiuctrl_regs = b53_cpubiuctrl_no_wb_regs;
out: out:
of_node_put(np); of_node_put(np);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment