generic: rtl8367b: make it possible to specify cpu_port via DT
This patch adds the feature to parse the existing cpu_port DT property, which is used to specify which port is the cpu port of the switch. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This commit is contained in:
parent
910c2f9e68
commit
a9839fe638
1 changed files with 4 additions and 2 deletions
|
@ -1401,7 +1401,7 @@ static int rtl8367b_switch_init(struct rtl8366_smi *smi)
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
dev->name = "RTL8367B";
|
dev->name = "RTL8367B";
|
||||||
dev->cpu_port = RTL8367B_CPU_PORT_NUM;
|
dev->cpu_port = smi->cpu_port;
|
||||||
dev->ports = RTL8367B_NUM_PORTS;
|
dev->ports = RTL8367B_NUM_PORTS;
|
||||||
dev->vlans = RTL8367B_NUM_VIDS;
|
dev->vlans = RTL8367B_NUM_VIDS;
|
||||||
dev->ops = &rtl8367b_sw_ops;
|
dev->ops = &rtl8367b_sw_ops;
|
||||||
|
@ -1534,8 +1534,10 @@ static int rtl8367b_probe(struct platform_device *pdev)
|
||||||
smi->cmd_read = 0xb9;
|
smi->cmd_read = 0xb9;
|
||||||
smi->cmd_write = 0xb8;
|
smi->cmd_write = 0xb8;
|
||||||
smi->ops = &rtl8367b_smi_ops;
|
smi->ops = &rtl8367b_smi_ops;
|
||||||
smi->cpu_port = RTL8367B_CPU_PORT_NUM;
|
|
||||||
smi->num_ports = RTL8367B_NUM_PORTS;
|
smi->num_ports = RTL8367B_NUM_PORTS;
|
||||||
|
if (of_property_read_u32(pdev->dev.of_node, "cpu_port", &smi->cpu_port)
|
||||||
|
|| smi->cpu_port >= smi->num_ports)
|
||||||
|
smi->cpu_port = RTL8367B_CPU_PORT_NUM;
|
||||||
smi->num_vlan_mc = RTL8367B_NUM_VLANS;
|
smi->num_vlan_mc = RTL8367B_NUM_VLANS;
|
||||||
smi->mib_counters = rtl8367b_mib_counters;
|
smi->mib_counters = rtl8367b_mib_counters;
|
||||||
smi->num_mib_counters = ARRAY_SIZE(rtl8367b_mib_counters);
|
smi->num_mib_counters = ARRAY_SIZE(rtl8367b_mib_counters);
|
||||||
|
|
Loading…
Reference in a new issue