aboutsummaryrefslogtreecommitdiff
path: root/target/linux/generic/files/drivers/net/phy/rtl8366_smi.h
Commit message (Collapse)AuthorAge
* kernel: rtl8366_smi: explicitly set phy addr for switchMieczyslaw Nalewaj2024-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | By default rtl8366_smi use phy addr 0 at mii-bus to access switch registers. This patch allow to set it explicitly in dts-file: rtl8367 { compatible = "realtek,rtl8367b"; phy-id = <29>; /* switch address at mii-bus */ realtek,extif2 = <1 0 1 1 1 1 1 1 2>; mii-bus = <&mdio>; cpu-port = <7>; } Use default 0 address if not set. Backward compatibility tested on tplink archer c2 v1 (rtl8367rb switch) Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru> [code style fixes, add explicit phy_id assignment in probe_plat, use phy-id instead of phy_id for of property name] Signed-off-by: Chuanhong Guo <gch981213@gmail.com> [rebase] Signed-off-by: Gaspare Bruno <gaspare@anlix.io> [added phy_id to struct rtl8366_smi] Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
* generic: rtl8366_smi: rename and drop conflicting vlan GPL symbolsChristian Marangi2023-10-06
| | | | | | | | | | | | Symbol rtl8366_enable_vlan and rtl8366_reset_vlan are also present in the DSA driver upstream and conflicts as they are EXPORTED. Rename them to rtl8366_smi_enable_vlan and rtl8366_smi_reset_vlan to fix the conflict. While at it also make them static and drop the EXPORT_SYMBOL_GPL as they are not actually used by any other driver and exporting them is useless. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* kernel: rtl8366-smi: add Realtek switch management via mii-busFranz Flasch2018-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current version of rtl8366-smi module only supports Realtek switch managment via two gpio lines. This adds Realtek switch management via mii_bus. Tested on a Tp-link Archer C2 v1 (Mediatek SoC mt7620a based) dts-file configuration should look like this: rtl8367rb { compatible = "realtek,rtl8367b"; realtek,extif1 = <1 0 1 1 1 1 1 1 2>; mii-bus = <&mdio0>; }; &ethernet { status = "okay"; mtd-mac-address = <&rom 0xf100>; pinctrl-names = "default"; pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>; port@5 { status = "okay"; mediatek,fixed-link = <1000 1 1 1>; phy-mode = "rgmii"; }; mdio0: mdio-bus { status = "okay"; }; }; Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru> Signed-off-by: Franz Flasch <franz.flasch@gmx.at>
* kernel: add reset control support to rtl8366 driverJohn Crispin2018-05-24
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* generic: provide get_port_stats() on rtl836x switchesThibaut VARENE2017-09-01
| | | | | | | | | | This patch provides a generic switch_dev_ops 'get_port_stats()' callback by taping into the relevant port MIB counters. This callback is used by swconfig_leds led trigger to blink LEDs with port network traffic. Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
* linux: generic: rtl836*: fix compilation with !CONFIG_OFJonas Gorski2012-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixes the following errors caused by r34682: CC [M] drivers/net/phy/rtl8366_smi.o In file included from drivers/net/phy/rtl8366_smi.c:26:0: drivers/net/phy/rtl8366_smi.h:149:46: warning: 'struct platform_device' declared inside parameter list [enabled by default] drivers/net/phy/rtl8366_smi.h:149:46: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default] drivers/net/phy/rtl8366_smi.c:1398:65: warning: 'struct platform_device' declared inside parameter list [enabled by default] drivers/net/phy/rtl8366_smi.c: In function 'rtl8366_smi_probe_plat': drivers/net/phy/rtl8366_smi.c:1400:44: error: dereferencing pointer to incomplete type drivers/net/phy/rtl8366_smi.c:1402:11: error: dereferencing pointer to incomplete type drivers/net/phy/rtl8366_smi.c:1403:16: error: dereferencing pointer to incomplete type drivers/net/phy/rtl8366_smi.c: At top level: drivers/net/phy/rtl8366_smi.c:1415:46: warning: 'struct platform_device' declared inside parameter list [enabled by default] drivers/net/phy/rtl8366_smi.c:1415:21: error: conflicting types for 'rtl8366_smi_probe' drivers/net/phy/rtl8366_smi.h:149:21: note: previous declaration of 'rtl8366_smi_probe' was here drivers/net/phy/rtl8366_smi.c: In function 'rtl8366_smi_probe': drivers/net/phy/rtl8366_smi.c:1420:31: error: dereferencing pointer to incomplete type drivers/net/phy/rtl8366_smi.c:1424:10: error: dereferencing pointer to incomplete type drivers/net/phy/rtl8366_smi.c:1425:3: warning: passing argument 1 of 'rtl8366_smi_probe_of' from incompatible pointer type [enabled by default] drivers/net/phy/rtl8366_smi.c:1392:19: note: expected 'struct device_node *' but argument is of type 'struct platform_device *' drivers/net/phy/rtl8366_smi.c:1427:3: warning: passing argument 1 of 'rtl8366_smi_probe_plat' from incompatible pointer type [enabled by default] drivers/net/phy/rtl8366_smi.c:1398:5: note: expected 'struct platform_device *' but argument is of type 'struct platform_device *' drivers/net/phy/rtl8366_smi.c: At top level: drivers/net/phy/rtl8366_smi.c:1438:1: error: conflicting types for 'rtl8366_smi_probe' drivers/net/phy/rtl8366_smi.h:149:21: note: previous declaration of 'rtl8366_smi_probe' was here make[7]: *** [drivers/net/phy/rtl8366_smi.o] Error 1 make[6]: *** [drivers/net/phy] Error 2 make[5]: *** [drivers/net] Error 2 make[4]: *** [drivers] Error 2 Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 34703
* make rtl8366 driver OF capableJohn Crispin2012-12-15
| | | | SVN-Revision: 34682
* generic: rtl836x: add hw_reset field to struct rtl8366_smiGabor Juhos2012-08-02
| | | | | | | It will be used to start/stop the switch if that is supported by the given board. SVN-Revision: 32943
* generic: rtl8366_smi: rename debugfs Kconfig symbolGabor Juhos2012-05-27
| | | | SVN-Revision: 31915
* linux: rtl836x: add a generic reset_switch functionGabor Juhos2012-04-29
| | | | SVN-Revision: 31536
* linux: rtl836x: add a reset_chip callback to rtl8366_smi_opsGabor Juhos2012-04-29
| | | | SVN-Revision: 31534
* generic: rtl8366: add rtl8366_smi_write_reg_noack helperGabor Juhos2012-01-21
| | | | | | | | | After issuing a soft reset on the RT8366{S,RB} switch, waiting for the last acknowlegement fails in rtl8366_smi_write_reg. Add a _noack version of the function and use that for issuing a soft reset. SVN-Revision: 29844
* generic: rtl8366: preparing for RTL8367 supportGabor Juhos2012-01-07
| | | | | | | | * make clock delay configurable * make read,write commands configurable * use u16 for member and untag fields SVN-Revision: 29677
* generic: rtl8366: enable vlans before enabling the portsGabor Juhos2011-01-08
| | | | SVN-Revision: 24939
* generic: rtl8366: enable ports only after VLAN configuration is doneGabor Juhos2011-01-08
| | | | SVN-Revision: 24938
* generic: rtl8366: add enable_port helperGabor Juhos2011-01-08
| | | | SVN-Revision: 24937
* generic: rtl8366: add debugfs file for VLAN4K tableGabor Juhos2011-01-08
| | | | SVN-Revision: 24933
* generic: add rtl8366rb switch vlan fid supportGabor Juhos2010-11-24
| | | | | | | | | | | Allows to use fids 0 to 7. Default is 0. Those who will use this don't forget to `set vlan fid` every time after `set vlan ports` if you want non default behavior. Minor changes. Version bump. Signed-off-by: Roman Yeryomin <roman@advem.lv> SVN-Revision: 24125
* generic: rtl8366: add generic code to enable VLANsGabor Juhos2010-08-18
| | | | SVN-Revision: 22703
* generic: rtl8366: add enable_vlan{,4k} to smi_opsGabor Juhos2010-08-18
| | | | SVN-Revision: 22702
* generic: rtl8366: make rtl8366_set_vlan staticGabor Juhos2010-07-15
| | | | SVN-Revision: 22205
* generic: rtl8366: add common rtl8366_sw_{get,set}_vlan_ports functionsGabor Juhos2010-07-15
| | | | SVN-Revision: 22204
* generic: rtl8366: add common rtl8366_sw_get_vlan_infoGabor Juhos2010-07-15
| | | | SVN-Revision: 22203
* generic: rtl8366: add is_vlan_valid function to smi_opsGabor Juhos2010-07-15
| | | | SVN-Revision: 22201
* generic: rtl8366: add common rtl8366_sw_get_port_mib functionGabor Juhos2010-07-15
| | | | SVN-Revision: 22200
* generic: rtl8366: make rtl8366_{g,s}et_pvid staticGabor Juhos2010-07-15
| | | | SVN-Revision: 22198
* generic: rtl8366: add common rtl8366_sw_{get,set}_port_pvid functionsGabor Juhos2010-07-15
| | | | SVN-Revision: 22197
* generic: rtl8366: add setup to rtl8366_smi_ops structGabor Juhos2010-07-15
| | | | SVN-Revision: 22196
* generic: rtl8366: introduce rtl8366_smi_allocGabor Juhos2010-07-15
| | | | SVN-Revision: 22195
* generic: rtl8366: move switch device to the rtl8366_smi structGabor Juhos2010-07-15
| | | | SVN-Revision: 22193
* generic: rtl8366: standardize read_debugfs_mibs functionsGabor Juhos2010-06-28
| | | | SVN-Revision: 21983
* generic: rtl8366: use common rtl8366_mib_counter structureGabor Juhos2010-06-28
| | | | SVN-Revision: 21982
* generic: rtl8366: move common debugfs code to rtl8366_smi.cGabor Juhos2010-06-28
| | | | SVN-Revision: 21981
* generic: rtl8366: move buf to struct rtl8366_smiGabor Juhos2010-06-28
| | | | SVN-Revision: 21980
* generic: rtl8366: move common VLAN handling functions to rtl8366_smi.cGabor Juhos2010-06-28
| | | | SVN-Revision: 21979
* generic: rtl8366: add cpu_port, num_ports and num_vlan_mc to struct rtl8366_smiGabor Juhos2010-06-28
| | | | SVN-Revision: 21978
* generic: rtl8366: add VLAN handling functions to rtl8366_smi_opsGabor Juhos2010-06-28
| | | | SVN-Revision: 21977
* rename target/linux/generic-2.6 to genericFelix Fietkau2010-06-26
SVN-Revision: 21952