Thread (74 messages) 74 messages, 9 authors, 2018-05-19

Re: [patch net-next RFC 04/12] dsa: set devlink port attrs for dsa ports

flat view

From: Jiri Pirko <jiri@resnulli.us>
Date: 2018-05-17 16:37:41
Subsystem: networking drivers, networking [dsa], the rest · Maintainers: Andrew Lunn, "David S. Miller", Eric Dumazet, Jakub Kicinski, Paolo Abeni, Andrew Lunn, Vladimir Oltean, Linus Torvalds

Thu, May 17, 2018 at 04:48:28PM CEST, andrew@lunn.ch wrote:
quoted
quoted
Yes, modprobe dsa-loop-bdinfo first, which will create the
That is compiled inside "fixed_phy", isn't it?
Nope.

It follows a pattern seen with I2C and SPI subsystem. A bus driver
provides a bus to Linux. But i2c and SPI, unlike PCI or USB, you
cannot enumerate the devices on the bus, you need to know what devices
are there. So the board file registers an info structure, listing what
devices are on the bus. When the bus pops into existence, the core
links the bus to the info structure about devices on the bus and then
probes the devices.

The same is happening here. The fixed_phy driver provides an MDIO bus.

The info structure in dsa-loop-bdinfo says there is an dsa-loop device
at address 31 on that bus.

Combine the two causes the dsa-loop device to actually probe.
I understand. Yet I have no dsa_loop_bdinfo.ko module. In my .config I
have:
CONFIG_FIXED_PHY=y
CONFIG_NET_DSA_LOOP=m

I had to do this:
diff --git a/drivers/net/dsa/Makefile b/drivers/net/dsa/Makefile
index 15c2a831edf1..2d773d3a7d49 100644
--- a/drivers/net/dsa/Makefile
+++ b/drivers/net/dsa/Makefile
@@ -2,9 +2,7 @@
 obj-$(CONFIG_NET_DSA_BCM_SF2)	+= bcm-sf2.o
 bcm-sf2-objs			:= bcm_sf2.o bcm_sf2_cfp.o
 obj-$(CONFIG_NET_DSA_LOOP)	+= dsa_loop.o
-ifdef CONFIG_NET_DSA_LOOP
-obj-$(CONFIG_FIXED_PHY)		+= dsa_loop_bdinfo.o
-endif
+obj-$(CONFIG_NET_DSA_LOOP)	+= dsa_loop_bdinfo.o
 obj-$(CONFIG_NET_DSA_MT7530)	+= mt7530.o
 obj-$(CONFIG_NET_DSA_MV88E6060) += mv88e6060.o
 obj-$(CONFIG_NET_DSA_QCA8K)	+= qca8k.o
Now dsa_loop_bdinfo.ko gets compiled. I have no clue why it does not
work without the patch :O "obj-$(CONFIG_FIXED_PHY)" doesn't work.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help