diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2010-06-26 19:16:34 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2010-06-26 19:16:34 +0000 |
commit | 91a33234017218a7f88ffe223d12b62684208840 (patch) | |
tree | e1611b7c250e3e52ede621d7b0f5abe5b88d2216 /target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c | |
parent | 23e44e1367214885b5006e575846b9fa1c80d8d6 (diff) | |
download | mtk-20170518-91a33234017218a7f88ffe223d12b62684208840.zip mtk-20170518-91a33234017218a7f88ffe223d12b62684208840.tar.gz mtk-20170518-91a33234017218a7f88ffe223d12b62684208840.tar.bz2 |
generic: rtl8366: introduce rtl8366_smi_rmwr function
SVN-Revision: 21919
Diffstat (limited to 'target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c')
-rw-r--r-- | target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c index 625a017..bb2e3ba 100644 --- a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c +++ b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366_smi.c @@ -266,6 +266,21 @@ int rtl8366_smi_write_reg(struct rtl8366_smi *smi, u32 addr, u32 data) } EXPORT_SYMBOL_GPL(rtl8366_smi_write_reg); +int rtl8366_smi_rmwr(struct rtl8366_smi *smi, u32 addr, u32 mask, u32 data) +{ + u32 t; + int err; + + err = rtl8366_smi_read_reg(smi, addr, &t); + if (err) + return err; + + err = rtl8366_smi_write_reg(smi, addr, (t & ~mask) | data); + return err; + +} +EXPORT_SYMBOL_GPL(rtl8366_smi_rmwr); + static int rtl8366_smi_mii_init(struct rtl8366_smi *smi) { int ret; |