From 08942e9a98e0483669cac620c9923bb2fd161d0b Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Mon, 28 Jun 2010 17:23:37 +0000 Subject: generic: rtl8366: add VLAN handling functions to rtl8366_smi_ops SVN-Revision: 21977 --- .../generic/files/drivers/net/phy/rtl8366_smi.h | 26 ++++++++++++++++------ 1 file changed, 19 insertions(+), 7 deletions(-) (limited to 'target/linux/generic/files/drivers/net/phy/rtl8366_smi.h') diff --git a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.h b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.h index 1afee9b73a..c0374bfdd5 100644 --- a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.h +++ b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.h @@ -14,6 +14,7 @@ #include struct rtl8366_smi_ops; +struct rtl8366_vlan_ops; struct mii_bus; struct rtl8366_smi { @@ -27,13 +28,6 @@ struct rtl8366_smi { struct rtl8366_smi_ops *ops; }; -struct rtl8366_smi_ops { - int (*detect)(struct rtl8366_smi *smi); - - int (*mii_read)(struct mii_bus *bus, int addr, int reg); - int (*mii_write)(struct mii_bus *bus, int addr, int reg, u16 val); -}; - struct rtl8366_vlan_mc { u16 vid; u8 priority; @@ -49,6 +43,24 @@ struct rtl8366_vlan_4k { u8 fid; }; +struct rtl8366_smi_ops { + int (*detect)(struct rtl8366_smi *smi); + + int (*mii_read)(struct mii_bus *bus, int addr, int reg); + int (*mii_write)(struct mii_bus *bus, int addr, int reg, u16 val); + + int (*get_vlan_mc)(struct rtl8366_smi *smi, u32 index, + struct rtl8366_vlan_mc *vlanmc); + int (*set_vlan_mc)(struct rtl8366_smi *smi, u32 index, + const struct rtl8366_vlan_mc *vlanmc); + int (*get_vlan_4k)(struct rtl8366_smi *smi, u32 vid, + struct rtl8366_vlan_4k *vlan4k); + int (*set_vlan_4k)(struct rtl8366_smi *smi, + const struct rtl8366_vlan_4k *vlan4k); + int (*get_mc_index)(struct rtl8366_smi *smi, int port, int *val); + int (*set_mc_index)(struct rtl8366_smi *smi, int port, int index); +}; + int rtl8366_smi_init(struct rtl8366_smi *smi); void rtl8366_smi_cleanup(struct rtl8366_smi *smi); int rtl8366_smi_write_reg(struct rtl8366_smi *smi, u32 addr, u32 data); -- cgit v1.2.3