Date: Mon, 28 Feb 2022 20:26:49 +0100 From: "Ronald Klop" <ronald-lists@klop.ws> To: "Marco Devesas Campos" <devesas.campos@gmail.com>, "Warner Losh" <imp@bsdimp.com> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org> Subject: Re: [PATCH] Experimental vchiq and bcm2835_audio support for arm64 Message-ID: <op.1ibeyzzokndu52@joepie> In-Reply-To: <CANCZdfoS0TaGkBWSkbzdisr_MJt6chZts2xBRJ5GQXjXoVaENA@mail.gmail.com> References: <A0775CDC-7382-4A15-8131-482572032308@gmail.com> <a02d8dd2-020a-3125-3418-08f0a069aa5e@klop.ws> <8EC05647-00D9-455B-98A9-B83A33DDFC5D@gmail.com> <48190d6a-fc5d-7da9-ddfd-fded48d429db@klop.ws> <106195874.50.1644310150579@localhost> <E7561C63-D0DF-4F38-9101-12B0D473982E@gmail.com> <CANCZdfoS0TaGkBWSkbzdisr_MJt6chZts2xBRJ5GQXjXoVaENA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
------------fUu38EU0gquoIVv62Jdqb2 Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable On Sun, 27 Feb 2022 17:41:25 +0100, Warner Losh <imp@bsdimp.com> wrote: > > > On Sun, Feb 27, 2022 at 8:44 AM Marco Devesas Campos = > <devesas.campos@gmail.com> wrote: >> Hi, List >> >> On the back of Ronald Klop's comments (thanks!), I went and got mysel= f = >> an >> RPI 4 and it turns out all that was need was adding the right dtb >> reference and it all works (seemingly) fine (incremental patch = >> attached). > > I've committed the patch below. If it turns out we need more, we can = > always augment. Hi Marco, Warner, Isn't the patch from = https://lists.freebsd.org/archives/freebsd-arm/2022-February/000949.html= = needed also? As you mention the patch below is an incremental patch? Regards, Ronald. > > Warner > >> One of the potential projects highlighted in the latest call for = >> proposals >> was exactly to get hdmi audio output in 64 bit Pis, viz. the 400-s. I= f >> anyone who voted for that reads this list, wd be nice to get some inp= ut = >> on >> the patches. >> >> Best, >> Marco >> >> >> >> diff --git a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c = >> b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c >> index dc18678b99a3..344267ff0c1c 100644 >> --- a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c >> +++ b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c >> @@ -83,6 +83,7 @@ static struct bcm_vchiq_softc *bcm_vchiq_sc =3D NUL= L; >> static struct ofw_compat_data compat_data[] =3D { >> {"broadcom,bcm2835-vchiq", BSD_DTB}, >> {"brcm,bcm2835-vchiq", UPSTREAM_DTB}, >> + {"brcm,bcm2711-vchiq", UPSTREAM_DTB}, >> {NULL, 0} >> }; >> >> >> >>> On 8 Feb 2022, at 08:49, Ronald Klop <ronald-lists@klop.ws> wrote: >>>Van: Ronald Klop <ronald-lists@klop.ws> >>> Datum: maandag, 7 februari 2022 21:05 >>> Aan: Marco Devesas Campos <devesas.campos@gmail.com>, = >>> freebsd-arm@freebsd.org >>> Onderwerp: Re: [PATCH] Experimental vchiq and bcm2835_audio support = = >>> for arm64 >>>On 2/6/22 14:46, Marco Devesas Campos wrote: >>> > Hi Ronald, >>> > >>> > Thanks so much for trying out the patch out. >>> > >>> >> On 6 Feb 2022, at 13:05, Ronald Klop <ronald-lists@klop.ws> wrote= : >>> >> >>> >> Hi, >>> >> >>> >> I compiled this on a RPI4 + 14-CURRENT. It boots, but I see no = >>> difference in available devices. >>> >> I can try to boot it on a RPI3B+ on another time. >>> > >>> > I *think* the GPU/VC in RPI-4 is a very different beast from the = >>> others. I'll >>> > look into it, but if you could give it a try on the 3+ I'd be much= = >>> obliged. >>> > >>> >> >>> >> What would be the expected outcome? Where should I look at (or = >>> listen to)? >>> >> >>> > >>> > You should see something like >>> > >>> > vchiq0: <BCM2835 VCHIQ> mem 0x7e00b840-0x7e00b87b irq 54 on = >>> simplebus0 >>> > vchiq: local ver 8 (min 3), remote ver 8. >>> > pcm0: <VCHIQ audio> on vchiq0 >>> > >>> > in your dmesg output. >>> > >>> > The file /dev/vchiq should exist, as well as the following sysctl-= s = >>> (I'm >>> > assuming no other audio devices are attached) >>> > >>> > % sysctl dev.pcm >>> > dev.pcm.0.trace: 0 >>> > ... >>> > dev.pcm.0.dest: 0 >>> > ... >>> > dev.pcm.0.%parent: vchiq0 >>> > ... >>> > dev.pcm.0.%driver: pcm >>> > dev.pcm.0.%desc: VCHIQ audio >>> > =E2=80=A6 >>> > >>> > Then if you `cat < /dev/random > /dev/dsp` you should hear some = >>> static coming >>> > out of whatever is connected to hdmi (maybe headphones too? = >>> otherwise try >>> > setting `sysctl dev.pcm.0.dest=3D1`) >>> > >>> > Best, >>> > Marco >>>Hi, >>>Booted the patched 14-CURRENT on the RPI3B+. >>>dmesg diff: >>> +vchiq0: <BCM2835 VCHIQ> mem 0x7e00b840-0x7e00b87b irq 54 on simpleb= us0 >>> +vchiq: local ver 8 (min 3), remote ver 8. >>> +pcm0: <VCHIQ audio> on vchiq0 >>>[root@rpi3 ~]# cat /dev/sndstat >>> Installed devices: >>> pcm0: <VCHIQ audio> (play) default >>> No devices installed from userspace. >>>[root@rpi3 ~]# sysctl dev.pcm >>> dev.pcm.0.trace: 0 >>> dev.pcm.0.starved: 0 >>> dev.pcm.0.freebuffer: 40000 >>> dev.pcm.0.underruns: 0 >>> dev.pcm.0.retrieved: 0 >>> dev.pcm.0.submitted: 0 >>> dev.pcm.0.callbacks: 0 >>> dev.pcm.0.dest: 0 >>> dev.pcm.0.mode: 3 >>> dev.pcm.0.bitperfect: 0 >>> dev.pcm.0.buffersize: 0 >>> dev.pcm.0.play.vchanformat: s16le:2.0 >>> dev.pcm.0.play.vchanrate: 48000 >>> dev.pcm.0.play.vchanmode: fixed >>> dev.pcm.0.play.vchans: 1 >>> dev.pcm.0.%parent: vchiq0 >>> dev.pcm.0.%pnpinfo: >>> dev.pcm.0.%location: >>> dev.pcm.0.%driver: pcm >>> dev.pcm.0.%desc: VCHIQ audio >>> dev.pcm.%parent: >>>To play some audio I need to search some headphones first. :-) >>>Ronald. >>> Good morning, >>>Found headphones with a cable on the attic. Plugged it into the audio= = >>> jack and played an mp3. Amazing! >>>Regards, >>> Ronald. ------------fUu38EU0gquoIVv62Jdqb2 Content-Type: multipart/related; boundary=----------fUu38EU0gquoIVXPrLJBDs ------------fUu38EU0gquoIVXPrLJBDs Content-Type: text/html; charset=utf-8 Content-ID: <op.1646076409722.9e19cd655d68fe51@172.17.4.1> Content-Transfer-Encoding: Quoted-Printable <!DOCTYPE html><html><head> <style type=3D"text/css">body { font-family:'Calibri'; font-size:13px}</= style> </head> <body>On Sun, 27 Feb 2022 17:41:25 +0100, Warner Losh <imp@bsdimp.com= > wrote:<br><br><blockquote style=3D"margin: 0 0 0.80ex; border-left:= #0000FF 2px solid; padding-left: 1ex"><div dir=3D"ltr"><div dir=3D"ltr"= ><br></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmai= l_attr">On Sun, Feb 27, 2022 at 8:44 AM Marco Devesas Campos <<a href= =3D"mailto:devesas.campos@gmail.com">devesas.campos@gmail.com</a>> wr= ote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px = 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi, L= ist<br> <br> On the back of Ronald Klop's comments (thanks!), I went and got myself a= n<br> RPI 4 and it turns out all that was need was adding the right dtb<br> reference and it all works (seemingly) fine (incremental patch attached)= .<br></blockquote><div><br></div><div>I've committed the patch below. If= it turns out we need more, we can always augment.</div></div></div></bl= ockquote><div><br></div><div><br></div><div>Hi Marco, Warner,</div><div>= <br></div><div>Isn't the patch from https://lists.freebsd.org/archives/f= reebsd-arm/2022-February/000949.html needed also?</div><div>As you menti= on the patch below is an incremental patch?</div><div><br></div><div>Reg= ards,</div><div>Ronald.</div><div><br></div><div><br></div><div><br></di= v><div><br></div><div><br></div><div><br></div><blockquote style=3D"marg= in: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div = dir=3D"ltr"><div class=3D"gmail_quote"><div><br></div><div>Warner</div><= div> </div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0p= x 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> One of the potential projects highlighted in the latest call for proposa= ls<br> was exactly to get hdmi audio output in 64 bit Pis, viz. the 400-s. If<b= r> anyone who voted for that reads this list, wd be nice to get some input = on<br> the patches.<br> <br> Best,<br> Marco<br> <br> <br> <br> diff --git a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c b/sys/co= ntrib/vchiq/interface/vchiq_arm/vchiq_kmod.c<br> index dc18678b99a3..344267ff0c1c 100644<br> --- a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c<br> +++ b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c<br> @@ -83,6 +83,7 @@ static struct bcm_vchiq_softc *bcm_vchiq_sc =3D NULL;<= br> static struct ofw_compat_data compat_data[] =3D {<br> {"broadcom,bcm2835-vchiq", &nbs= p; BSD_DTB},<br> {"brcm,bcm2835-vchiq", &= nbsp; UPSTREAM_DTB},<br> + {"brcm,bcm2711-vchiq", &= nbsp; UPSTREAM_DTB},<br> {NULL, &nb= sp; 0}<br> };<br> <br> <br> <br> > On 8 Feb 2022, at 08:49, Ronald Klop <<a href=3D"mailto:ronald-l= ists@klop.ws" target=3D"_blank">ronald-lists@klop.ws</a>> wrote:<br> > <br> > Van: Ronald Klop <<a href=3D"mailto:ronald-lists@klop.ws" target= =3D"_blank">ronald-lists@klop.ws</a>><br> > Datum: maandag, 7 februari 2022 21:05<br> > Aan: Marco Devesas Campos <<a href=3D"mailto:devesas.campos@gmai= l.com" target=3D"_blank">devesas.campos@gmail.com</a>>, <a href=3D"ma= ilto:freebsd-arm@freebsd.org" target=3D"_blank">freebsd-arm@freebsd.org<= /a><br> > Onderwerp: Re: [PATCH] Experimental vchiq and bcm2835_audio support= for arm64<br> > <br> > On 2/6/22 14:46, Marco Devesas Campos wrote:<br> > > Hi Ronald,<br> > ><br> > > Thanks so much for trying out the patch out.<br> > ><br> > >> On 6 Feb 2022, at 13:05, Ronald Klop <<a href=3D"mailto= :ronald-lists@klop.ws" target=3D"_blank">ronald-lists@klop.ws</a>> wr= ote:<br> > >><br> > >> Hi,<br> > >><br> > >> I compiled this on a RPI4 + 14-CURRENT. It boots, but I se= e no difference in available devices.<br> > >> I can try to boot it on a RPI3B+ on another time.<br> > ><br> > > I *think* the GPU/VC in RPI-4 is a very different beast from t= he others. I'll<br> > > look into it, but if you could give it a try on the 3+ I'd be = much obliged.<br> > ><br> > >><br> > >> What would be the expected outcome? Where should I look at= (or listen to)?<br> > >><br> > ><br> > > You should see something like<br> > ><br> > > vchiq0: <BCM2835 VCHIQ> mem 0x7e00b840-0x7e= 00b87b irq 54 on simplebus0<br> > > vchiq: local ver 8 (min 3), remote ver 8.<br> > > pcm0: <VCHIQ audio> on vchiq0<br> > ><br> > > in your dmesg output.<br> > ><br> > > The file /dev/vchiq should exist, as well as the following sys= ctl-s (I'm<br> > > assuming no other audio devices are attached)<br> > ><br> > > % sysctl dev.pcm<br> > > dev.pcm.0.trace: 0<br> > > ...<br> > > dev.pcm.0.dest: 0<br> > > ...<br> > > dev.pcm.0.%parent: vchiq0<br> > > ...<br> > > dev.pcm.0.%driver: pcm<br> > > dev.pcm.0.%desc: VCHIQ audio<br> > > =E2=80=A6<br> > ><br> > > Then if you `cat < /dev/random > /dev/dsp` you should he= ar some static coming<br> > > out of whatever is connected to hdmi (maybe headphones too? ot= herwise try<br> > > setting `sysctl dev.pcm.0.dest=3D1`)<br> > ><br> > > Best,<br> > > Marco<br> > <br> > <br> > Hi,<br> > <br> > Booted the patched 14-CURRENT on the RPI3B+.<br> > <br> > dmesg diff:<br> > +vchiq0: <BCM2835 VCHIQ> mem 0x7e00b840-0x7e00b87b irq 54 on = simplebus0<br> > +vchiq: local ver 8 (min 3), remote ver 8.<br> > +pcm0: <VCHIQ audio> on vchiq0<br> > <br> > [root@rpi3 ~]# cat /dev/sndstat<br> > Installed devices:<br> > pcm0: <VCHIQ audio> (play) default<br> > No devices installed from userspace.<br> > <br> > [root@rpi3 ~]# sysctl dev.pcm<br> > dev.pcm.0.trace: 0<br> > dev.pcm.0.starved: 0<br> > dev.pcm.0.freebuffer: 40000<br> > dev.pcm.0.underruns: 0<br> > dev.pcm.0.retrieved: 0<br> > dev.pcm.0.submitted: 0<br> > dev.pcm.0.callbacks: 0<br> > dev.pcm.0.dest: 0<br> > dev.pcm.0.mode: 3<br> > dev.pcm.0.bitperfect: 0<br> > dev.pcm.0.buffersize: 0<br> > dev.pcm.0.play.vchanformat: s16le:2.0<br> > dev.pcm.0.play.vchanrate: 48000<br> > dev.pcm.0.play.vchanmode: fixed<br> > dev.pcm.0.play.vchans: 1<br> > dev.pcm.0.%parent: vchiq0<br> > dev.pcm.0.%pnpinfo:<br> > dev.pcm.0.%location:<br> > dev.pcm.0.%driver: pcm<br> > dev.pcm.0.%desc: VCHIQ audio<br> > dev.pcm.%parent:<br> > <br> > <br> > To play some audio I need to search some headphones first. :-)<br> > <br> > Ronald.<br> > <br> > <br> > <br> > Good morning,<br> > <br> > Found headphones with a cable on the attic. Plugged it into the aud= io jack and played an mp3. Amazing!<br> > <br> > Regards,<br> > Ronald.<br> > <br> <br> <br> </blockquote></div></div> </blockquote><br><br><br></body></html> ------------fUu38EU0gquoIVXPrLJBDs-- ------------fUu38EU0gquoIVv62Jdqb2--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.1ibeyzzokndu52>