mirror-linux/drivers/net
Frank Wunderlich 422b5233b6 net: pcs: pcs-mtk-lynxi: fix bpi-r3 serdes configuration
Commit 8871389da1 introduces common pcs dts properties which writes
rx=normal,tx=normal polarity to register SGMSYS_QPHY_WRAP_CTRL of switch.
This is initialized with tx-bit set and so change inverts polarity
compared to before.

It looks like mt7531 has tx polarity inverted in hardware and set tx-bit
by default to restore the normal polarity.

The MT7531 datasheet quite clearly states:
Register 000050EC QPHY_WRAP_CTRL -- QPHY wrapper control
Reset value: 0x00000501

BIT 1 RX_BIT_POLARITY -- RX bit polarity control
 1'b0: normal
 1'b1: inverted

BIT 0 TX_BIT_POLARITY -- TX bit polarity control (TX default inversed
in MT7531)
 1'b0: normal
 1'b1: inverted

Till this patch the register write was only called when mediatek,pnswap
property was set which cannot be done for switch because the fw-node param
was always NULL from switch driver in the mtk_pcs_lynxi_create call.

Do not configure switch side like it's done before.

Fixes: 8871389da1 ("net: pcs: pcs-mtk-lynxi: deprecate "mediatek,pnswap"")
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20260526153239.30194-1-linux@fw-web.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-05-28 18:09:03 -07:00
..
arcnet
bonding bonding: refuse to enslave CAN devices 2026-05-27 16:58:28 -07:00
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-04-14 12:04:00 -07:00
dsa net: dsa: mt7530: untag VLAN-aware bridge PVID 2026-05-19 12:37:34 +02:00
ethernet net: mana: Skip redundant detach on already-detached port 2026-05-28 16:33:42 -07:00
fddi FDDI: defza: Sanitise the reset safety timer 2026-05-13 17:31:01 -07:00
fjes
hyperv
ieee802154
ipa Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-04-14 12:04:00 -07:00
ipvlan Networking changes for 7.1. 2026-04-14 18:36:10 -07:00
mctp net: mctp i2c: check length before marking flow active 2026-04-28 13:11:53 +02:00
mdio net: mdio: MDIO_PIC64HPSC should depend on ARCH_MICROCHIP 2026-04-16 19:04:58 -07:00
netdevsim netdevsim: psp: rcu protect psp_dev reference 2026-05-06 17:39:20 -07:00
ovpn ovpn: disable BHs when updating device stats 2026-05-15 00:43:55 +02:00
pcs net: pcs: pcs-mtk-lynxi: fix bpi-r3 serdes configuration 2026-05-28 18:09:03 -07:00
phy net: phy: air_en8811h: add AN8811HB MCU assert/deassert support 2026-05-26 17:59:47 -07:00
plip
ppp pppoe: drop PFC frames 2026-04-20 11:35:17 -07:00
pse-pd net: pse-pd: fix sign on -ENOENT check in of_load_pse_pis() 2026-05-19 17:44:27 -07:00
slip slip: bound decode() reads against the compressed packet length 2026-04-21 10:18:18 +02:00
team net: team: fix NULL pointer dereference in team_xmit during mode change 2026-05-26 10:49:16 +02:00
thunderbolt
usb net: usb: asix: ax88772: re-add usbnet_link_change() in phylink callbacks 2026-05-04 19:04:15 -07:00
vmxnet3
vxlan vxlan: do not reuse cached ip_hdr() value after skb_tunnel_check_pmtu() 2026-05-26 18:10:55 -07:00
wan net: wan: fsl_ucc_hdlc: free tx_skbuff in uhdlc_memclean 2026-05-08 18:48:30 -07:00
wireguard wireguard: device: use exit_rtnl callback instead of manual rtnl_lock in pre_exit 2026-04-14 11:48:04 -07:00
wireless ath.git update for v7.1-rc5 2026-05-20 11:27:00 +02:00
wwan net: wwan: iosm: fix potential memory leaks in ipc_imem_init() 2026-05-21 08:06:02 -07:00
xen-netback
Kconfig caif: remove CAIF NETWORK LAYER 2026-04-23 10:23:44 -07:00
LICENSE.SRC
Makefile net: remove ax25 and amateur radio (hamradio) subsystem 2026-04-23 10:24:02 -07:00
Space.c drivers: net: 8390: wd80x3: Remove this driver 2026-04-23 15:57:10 -07:00
amt.c
bareudp.c bareudp: fix NULL pointer dereference in bareudp_fill_metadata_dst() 2026-04-28 18:16:53 -07:00
dummy.c dummy: convert to ndo_set_rx_mode_async 2026-04-21 12:50:25 +02:00
eql.c
geneve.c
gtp.c gtp: disable BH before calling udp_tunnel_xmit_skb() 2026-04-20 11:46:24 -07:00
ifb.c net: ifb: report ethtool stats over num_tx_queues 2026-05-14 18:40:04 -07:00
loopback.c
macsec.c macsec: fix replay protection at XPN lower-PN wrap 2026-05-25 12:40:47 -07:00
macvlan.c macvlan: fix macvlan_get_size() not reserving space for IFLA_MACVLAN_BC_CUTOFF 2026-04-16 12:17:11 +02:00
macvtap.c kernfs: pass struct ns_common instead of const void * for namespace tags 2026-04-09 14:36:52 +02:00
mdio.c
mhi_net.c
mii.c
net_failover.c net: net_failover: Fix the deadlock in slave register 2026-05-13 19:01:03 -07:00
netconsole.c netconsole: restore userdatum value on update_userdata() failure 2026-04-28 18:28:12 -07:00
netkit.c netkit: convert to ndo_set_rx_mode_async 2026-04-21 12:50:25 +02:00
nlmon.c
ntb_netdev.c
pfcp.c
rionet.c
sungem_phy.c
tap.c tap: free page on error paths in tap_get_user_xdp() 2026-05-22 10:08:59 -07:00
tun.c tun: free page on build_skb failure in tun_xdp_one() 2026-05-22 10:10:07 -07:00
tun_vnet.h
veth.c veth: fix OOB txq access in veth_poll() with asymmetric queue counts 2026-05-07 16:24:07 +02:00
virtio_net.c virtio_net: sync rss_trailer.max_tx_vq on queue_pairs change via VQ_PAIRS_SET 2026-04-23 09:35:53 -07:00
vrf.c vrf: Fix a potential NPD when removing a port from a VRF 2026-04-27 17:43:22 -07:00
vsockmon.c
xen-netfront.c