Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Dec 2019 16:17:26 +0100
From:      Emmanuel Vadot <manu@bidouilliste.com>
To:        Gary Otten <gdotten@gmail.com>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: SPI support for A64-OLinuXino board Allwinner A64 processor
Message-ID:  <20191228161726.9efb08df5b69eaa0a0ff478f@bidouilliste.com>
In-Reply-To: <CABZQu%2BivgronnY=ro5CtQoyYR6B=gGFsaryKm%2BgEwubJWx3KzA@mail.gmail.com>
References:  <CABZQu%2BivgronnY=ro5CtQoyYR6B=gGFsaryKm%2BgEwubJWx3KzA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 25 Dec 2019 19:12:28 -0500
Gary Otten <gdotten@gmail.com> wrote:

> Thanks,  I have created the following overlay and tried a variety of other
> things but I haven't been able to get spigen0.0 to appear in  /dev.
> 
> 
> 
> /* $FreeBSD$ */
> /dts-v1/;
> /plugin/;
> 
> / {
>         compatible = "allwinner,sun50i-a64";
> };
> 
> &{/soc/spi@1c68000} {
> 
>                 status = "okay";
> 
>                 spigen0: spigen0 {
>                 compatible = "freebsd,spigen";
>                 reg = <0>;
>                 spi-max-frequency = <500000>;
>                 status = "okay";
>         };
> 
> };
> 
> 
> 
> Some diagnostics
> 
> -------------------------------------------------------
> On Boot
> 
> Loading DTB overlays: 'sun50i-a64-spi-spidev'
> /boot/dtb/overlays/sun50i-a64-spi-spidev.dtbo size=0x15c
> applying DTB overlay '/boot/dtb/overlays/sun50i-a64-spi-spidev.dtbo'
> ..
> ....
> .....
> 
> Autoloading module: aw_spi.ko
> aw_spi0: <Allwinner SPI> mem 0x1c68000-0x1c68fff irq 29 on simplebus0
> spibus0: <OFW SPI bus> on aw_spi0
> spibus0: <unknown card> at cs 0 mode 0
> 
> 
> -------------------------------------------------------
> root@:/boot/dtb/overlays # kldstat
> Id Refs Address                Size Name
>  1    5 0xffff000000000000  144dda8 kernel
>  2    1 0xffff000054c00000    41000 aw_spi.ko
> 
>  -------------------------------------------------------
> root@:/boot/dtb/overlays # devinfo
> ..
> ...
>   aw_spi0
>         spibus0
> 
> -------------------------------------------------------
> root@:/boot/dtb/overlays # devinfo
> 
> ....
> ......
>  Node 0x2f60: spi@1c68000
>       Node 0x309c: spigen0
> _______________________________________________
> freebsd-arm@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"

 Hi Gary,

 You overlay worked for me on the pine64-lts. Here is what I did :
 - Use https://github.com/evadot/freebsd/commits/aw_spigen
 - aw_spi is autoloaded via devmatch
 - kldload spigen (it's not in GENERIC for arm64, maybe we should add it
or do some devmatch magic)
 - root@pine64-lts:~ # spi -i
Device name:   /dev/spigen0.0
Device mode:   0
Device speed:  500000
root@pine64-lts:~ # spi -d r -m 0 -C '9F 00' -v -c 2
Binary output of 2 bytes
2 command bytes and 2 data bytes read from SPI device
        |  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
|                  | 0 | 00 ef 40 18                                     | ..@.             |

 Maybe you just forgot to load spigen ?

-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20191228161726.9efb08df5b69eaa0a0ff478f>