mirror-linux/drivers
Quentin Schulz eb7fd7aa35 net: stmmac: platform: guarantee uniqueness of bus_id
bus_id is currently derived from the ethernetX alias. If one is missing
for the device, 0 is used. If ethernet0 points to another stmmac device
or if there are 2+ stmmac devices without an ethernet alias, then bus_id
will be 0 for all of those.

This is an issue because the bus_id is used to generate the mdio bus id
(new_bus->id in drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c
stmmac_mdio_register) and this needs to be unique.

This allows to avoid needing to define ethernet aliases for devices with
multiple stmmac controllers (such as the Rockchip RK3588) for multiple
stmmac devices to probe properly.

Obviously, the bus_id isn't guaranteed to be stable across reboots if no
alias is set for the device but that is easily fixed by simply adding an
alias if this is desired.

Fixes: 25c83b5c2e ("dt:net:stmmac: Add support to dwmac version 3.610 and 3.710")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Link: https://patch.msgid.link/20250527-stmmac-mdio-bus_id-v2-1-a5ca78454e3c@cherry.de
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2025-05-29 10:51:43 +02:00
..
accel drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
accessibility
acpi arm64 updates for 6.16 2025-05-28 14:55:35 -07:00
amba
android vfs-6.16-rc1.async.dir 2025-05-26 08:02:43 -07:00
ata
atm
auxdisplay
base Power management updates for 6.16-rc1 2025-05-27 16:48:47 -07:00
bcma
block for-6.16/block-20250523 2025-05-26 11:39:36 -07:00
bluetooth Bluetooth: btintel: Check dsbr size from EFI variable 2025-05-22 13:06:28 -04:00
bus bus: moxtet: Switch to irq_domain_create_simple() 2025-05-16 21:06:08 +02:00
cache
cdrom cdrom: Remove unnecessary NULL check before unregister_sysctl_table() 2025-05-15 16:25:20 -06:00
cdx
char drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
clk Allwinner clk fixes for 6.15 2025-05-17 20:46:38 -07:00
clocksource Updates for clocksource/clockevent drivers: 2025-05-27 09:01:26 -07:00
comedi
connector
counter
cpufreq Power management updates for 6.16-rc1 2025-05-27 16:48:47 -07:00
cpuidle Power management updates for 6.16-rc1 2025-05-27 16:48:47 -07:00
crypto Core x86 updates for v6.16: 2025-05-26 16:04:17 -07:00
cxl
dax
dca
devfreq
dio
dma Linux 6.15-rc7 2025-05-21 08:45:03 +02:00
dma-buf bpf-next-6.16 2025-05-28 15:52:42 -07:00
dpll
edac - ie31200: Add support for Raptor Lake-S and Alder Lake-S compute dies 2025-05-27 10:13:06 -07:00
eisa
extcon
firewire treewide, timers: Rename destroy_timer_on_stack() as timer_destroy_on_stack() 2025-05-08 19:49:33 +02:00
firmware arm64 updates for 6.16 2025-05-28 14:55:35 -07:00
fpga
fsi
fwctl
gnss
gpio gpio updates for v6.16-rc1 2025-05-27 15:22:01 -07:00
gpu drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
greybus
hid hid-for-linus-2025051501 2025-05-15 10:57:24 -07:00
hsi
hte
hv Including fixes from Bluetooth and wireless. 2025-05-15 10:40:49 -07:00
hwmon Merge branch 'x86/msr' into x86/core, to resolve conflicts 2025-05-13 10:42:06 +02:00
hwspinlock
hwtracing
i2c A set of cleanups for the generic interrupt subsystem: 2025-05-27 08:07:32 -07:00
i3c
idle Power management updates for 6.16-rc1 2025-05-27 16:48:47 -07:00
iio A set of cleanups for the generic interrupt subsystem: 2025-05-27 08:07:32 -07:00
infiniband Networking changes for 6.16. 2025-05-28 15:24:36 -07:00
input Input updates for v6.15-rc7 2025-05-24 18:54:18 -07:00
interconnect
iommu dma-mapping updates for Linux 6.16: 2025-05-27 20:09:06 -07:00
ipack
irqchip Another set of timer API cleanups: 2025-05-27 08:31:21 -07:00
isdn
leds
macintosh
mailbox mailbox: qcom-ipcc: Switch to irq_domain_create_tree() 2025-05-16 21:06:09 +02:00
mcb
md hardening updates for v6.16-rc1 2025-05-28 07:47:10 -07:00
media [GIT PULL for v6.16] media updates 2025-05-28 09:17:20 -07:00
memory spi: Updates for v6.16 2025-05-27 15:53:55 -07:00
memstick
message
mfd gpio updates for v6.16-rc1 2025-05-27 15:22:01 -07:00
misc hardening updates for v6.16-rc1 2025-05-28 07:47:10 -07:00
mmc mmc: Merge branch fixes into next 2025-05-19 14:26:54 +02:00
most
mtd Linux 6.15-rc4 2025-05-02 09:43:44 +02:00
mux
net net: stmmac: platform: guarantee uniqueness of bus_id 2025-05-29 10:51:43 +02:00
nfc nfc: Correct Samsung "Electronics" spelling in copyright headers 2025-05-21 20:31:18 -07:00
ntb
nubus
nvdimm
nvme Networking changes for 6.16. 2025-05-28 15:24:36 -07:00
nvmem gpio updates for v6.16-rc1 2025-05-27 15:22:01 -07:00
of
opp OPP: switch to use kmemdup_array() 2025-05-19 15:37:53 +05:30
parisc
parport
pci dma-mapping updates for Linux 6.16: 2025-05-27 20:09:06 -07:00
pcmcia
peci
perf arm64 updates for 6.16 2025-05-28 14:55:35 -07:00
phy phy: Fix error handling in tegra_xusb_port_init 2025-05-14 12:28:43 +01:00
pinctrl ACPI updates for 6.16-rc1 2025-05-27 16:32:30 -07:00
platform drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
pmdomain pmdomain: ti: Fix STANDBY handling of PER power domain 2025-05-19 16:11:05 +02:00
pnp
power power: supply: rt9471: Simplify definition of some struct linear_range 2025-05-03 19:17:02 +02:00
powercap x86/msr: Add explicit includes of <asm/msr.h> 2025-05-02 10:23:47 +02:00
pps
ps3
ptp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-05-22 09:42:41 -07:00
pwm pwm: adp5585: make sure to include mod_devicetable.h 2025-05-19 18:07:39 +02:00
rapidio
ras Linux 6.15-rc5 2025-05-06 10:00:58 +02:00
regulator regulator: Updates for v6.16 2025-05-27 15:49:58 -07:00
remoteproc remoteproc: qcom_wcnss: Fix on platforms without fallback regulators 2025-05-13 10:34:33 -05:00
reset
rpmsg
rtc
s390 Networking changes for 6.16. 2025-05-28 15:24:36 -07:00
sbus
scsi hardening updates for v6.16-rc1 2025-05-28 07:47:10 -07:00
sh sh: Switch to irq_domain_create_*() 2025-05-16 21:06:11 +02:00
siox
slimbus
soc pwm: Changes for v6.16-rc1 2025-05-27 15:01:47 -07:00
soundwire soundwire fix for 6.15 2025-05-17 12:04:19 -07:00
spi spi: Updates for v6.16 2025-05-27 15:53:55 -07:00
spmi
ssb
staging [GIT PULL for v6.16] media updates 2025-05-28 09:17:20 -07:00
target net: core: Convert inet_addr_is_any() to sockaddr_storage 2025-05-27 08:25:42 +02:00
tc
tee
thermal Thermal control updates for 6.16-rc1 2025-05-27 16:28:02 -07:00
thunderbolt
tty
ufs Updates for the MSI subsystem (core code and PCI): 2025-05-27 08:15:26 -07:00
uio uio_hv_generic: Fix sysfs creation path for ring buffer 2025-05-02 13:59:02 +02:00
usb Power management updates for 6.16-rc1 2025-05-27 16:48:47 -07:00
vdpa
vfio vfio/pci: Align huge faults to order 2025-05-06 12:59:12 -06:00
vhost vhost/net: Defer TX queue re-enable until after sendmsg 2025-05-05 18:18:41 -07:00
video drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
virt
virtio
w1 w1: ds2406: use crc16() instead of crc16_byte() loop 2025-05-13 20:37:16 -07:00
watchdog hardening updates for v6.16-rc1 2025-05-28 07:47:10 -07:00
xen xen/x86: fix initial memory balloon target 2025-05-23 07:09:00 +02:00
zorro
Kconfig
Makefile