Date: Sun, 4 Nov 2018 19:53:38 +0100 From: Bernd Walter <ticso@cicely7.cicely.de> To: Ian Lepore <ian@freebsd.org> Cc: ticso@cicely.de, freebsd-arm@freebsd.org, Bernd Walter <ticso@cicely7.cicely.de> Subject: Re: How to add custom dts entries Message-ID: <20181104185337.GP79858@cicely7.cicely.de> In-Reply-To: <20181104184939.GO79858@cicely7.cicely.de> References: <20181103200709.GB79858@cicely7.cicely.de> <1541277990.52306.4.camel@freebsd.org> <20181103205455.GD79858@cicely7.cicely.de> <1541279079.52306.8.camel@freebsd.org> <20181103212031.GF79858@cicely7.cicely.de> <1541280338.52306.9.camel@freebsd.org> <20181104183247.GN79858@cicely7.cicely.de> <20181104184939.GO79858@cicely7.cicely.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 04, 2018 at 07:49:39PM +0100, Bernd Walter wrote: > On Sun, Nov 04, 2018 at 07:32:47PM +0100, Bernd Walter wrote: > > On Sat, Nov 03, 2018 at 03:25:38PM -0600, Ian Lepore wrote: > > > Add a status = "okay" to the spi node in your patch/overlay. > > > > Makes sense. > > > > So the spigen overlay works fine, once I set fdt_overlays in loader.conf > > to use the overlay file. > > > > spi0: <BCM2708/2835 SPI controller> mem 0x7e204000-0x7e204fff irq 25 on simplebus0 > > spibus0: <OFW SPI bus> on spi0 > > spibus0: <unknown card> at cs 1 mode 0 > > spibus0: <unknown card> at cs 0 mode 0 > > spibus0: <unknown card> at cs 0 mode 0 > > spibus0: <unknown card> at cs 1 mode 0 > > > > With my own overlay I do this to install it: > > dtc -I dts -O dtb -o rpi-apa102-matrix.dtbo rpi-apa102-matrix.dts > > cp rpi-apa102-matrix.dtbo /boot/dtb/overlays > > > > [77]cicely1> cat rpi-apa102-matrix.dts > > /dts-v1/; > > /plugin/; > > > > / { > > compatible = "brcm,bcm2835"; > > }; > > > > /* &spi0 { */ > > &{/soc/spi@7e204000} { > > status = "okay"; > > > > apa102led0 { > > compatible = "led,apa102"; > > reg = <0>; > > spi-max-frequency = <20000000>; > > status = "okay"; > > }; > > }; > > > > &onewire { > > compatible = "w1-gpio"; > > gpios = <&gpio 4 1>; > > }; > > > > Still puzzled with the format. > > With &spi0 it didn't work, neither with the current format, which is > > copied from the spigen.dts. > > Neither spi0 attaches, nor the onewire bus. > > > > Some other, mostly beaglebone related examples use a more complex > > setup with overlay_ entries and everything inside the compatible block. > > > > Can I have a device.hints please ;-) > > > > ofwdump shows: > > ... > > Node 0x20fc: spi@7e204000 > > compatible: > > 62 72 63 6d 2c 62 63 6d 32 38 33 35 2d 73 70 69 00 > > 'brcm,bcm2835-spi' > > ... > > status: > > 64 69 73 61 62 6c 65 64 00 > > 'disabled' > > ... > > > > Havn't checked ofwdump with the spigen overlay. > > Interesting. > When I use &spi0 and leave out the &onewire block, it attaches something. > spi0: <BCM2708/2835 SPI controller> mem 0x7e204000-0x7e204fff irq 25 on simplebus0 > spibus0: <OFW SPI bus> on spi0 > spibus0: <unknown card> at cs 0 mode 0 > spibus0: <unknown card> at cs 0 mode 0 > spibus0: <unknown card> at cs 1 mode 0 > > And also my driver attaches just fine: > apa102led0: <APA102> at cs 0 mode 0 on spibus0 > > And ofwdump shows the spi0 es enabled: > Node 0x20fc: spi@7e204000 > compatible: > 62 72 63 6d 2c 62 63 6d 32 38 33 35 2d 73 70 69 00 > 'brcm,bcm2835-spi' > ... > status: > 6f 6b 61 79 00 > 'okay' > ... > > I'm not on the real hardware, so no LED connected to test the driver. > It would probably also attach with the &{/soc/spi@7e204000}. > But why does the &onewire entry make such a difference? > Is the whole file revoked because of an error? > I have no console connected, so I don't see loader messages. > > Also it is a bit puzzling about the "unknown card" entries. Ah ok. Those 4 with the spigen driver are 2 devices defined by the generic DTS, plus 2 devices from the spigen overlay - the spigen module wasn't laoded. Same for my overlay, 2 generic, plus my LED definition. spi0 pnpinfo name=spi@7e204000 compat=brcm,bcm2835-spi spibus0 apa102led0 pnpinfo name=apa102led0 compat=led,apa102 at bus=0 cs=0 unknown pnpinfo name=spidev@0 compat=spidev at bus=0 cs=0 unknown pnpinfo name=spidev@1 compat=spidev at bus=0 cs=1 Makes sense. -- B.Walter <bernd@bwct.de> http://www.bwct.de Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20181104185337.GP79858>