mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-24 02:19:23 +02:00
backfire: generic: rtl8366: add enable_port helper (backport of r24937)
git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@24997 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
8df64213e2
commit
b5e2cd6155
@ -93,6 +93,7 @@ struct rtl8366_smi_ops {
|
||||
int (*is_vlan_valid)(struct rtl8366_smi *smi, unsigned vlan);
|
||||
int (*enable_vlan)(struct rtl8366_smi *smi, int enable);
|
||||
int (*enable_vlan4k)(struct rtl8366_smi *smi, int enable);
|
||||
int (*enable_port)(struct rtl8366_smi *smi, int port, int enable);
|
||||
};
|
||||
|
||||
struct rtl8366_smi *rtl8366_smi_alloc(struct device *parent);
|
||||
|
@ -607,6 +607,12 @@ static int rtl8366rb_enable_vlan4k(struct rtl8366_smi *smi, int enable)
|
||||
(enable) ? RTL8366RB_SGCR_EN_VLAN_4KTB : 0);
|
||||
}
|
||||
|
||||
static int rtl8366rb_enable_port(struct rtl8366_smi *smi, int port, int enable)
|
||||
{
|
||||
return rtl8366_smi_rmwr(smi, RTL8366RB_PECR, (1 << port),
|
||||
(enable) ? 0 : (1 << port));
|
||||
}
|
||||
|
||||
static int rtl8366rb_sw_reset_mibs(struct switch_dev *dev,
|
||||
const struct switch_attr *attr,
|
||||
struct switch_val *val)
|
||||
@ -1214,6 +1220,7 @@ static struct rtl8366_smi_ops rtl8366rb_smi_ops = {
|
||||
.is_vlan_valid = rtl8366rb_is_vlan_valid,
|
||||
.enable_vlan = rtl8366rb_enable_vlan,
|
||||
.enable_vlan4k = rtl8366rb_enable_vlan4k,
|
||||
.enable_port = rtl8366rb_enable_port,
|
||||
};
|
||||
|
||||
static int __devinit rtl8366rb_probe(struct platform_device *pdev)
|
||||
|
@ -605,6 +605,12 @@ static int rtl8366s_is_vlan_valid(struct rtl8366_smi *smi, unsigned vlan)
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int rtl8366s_enable_port(struct rtl8366_smi *smi, int port, int enable)
|
||||
{
|
||||
return rtl8366_smi_rmwr(smi, RTL8366S_PECR, (1 << port),
|
||||
(enable) ? 0 : (1 << port));
|
||||
}
|
||||
|
||||
static int rtl8366s_sw_reset_mibs(struct switch_dev *dev,
|
||||
const struct switch_attr *attr,
|
||||
struct switch_val *val)
|
||||
@ -1032,6 +1038,7 @@ static struct rtl8366_smi_ops rtl8366s_smi_ops = {
|
||||
.is_vlan_valid = rtl8366s_is_vlan_valid,
|
||||
.enable_vlan = rtl8366s_enable_vlan,
|
||||
.enable_vlan4k = rtl8366s_enable_vlan4k,
|
||||
.enable_port = rtl8366s_enable_port,
|
||||
};
|
||||
|
||||
static int __devinit rtl8366s_probe(struct platform_device *pdev)
|
||||
|
Loading…
Reference in New Issue
Block a user