From nobody Mon Feb 28 19:26:49 2022 X-Original-To: freebsd-arm@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 7654719D9E8B for ; Mon, 28 Feb 2022 19:27:00 +0000 (UTC) (envelope-from ronald-lists@klop.ws) Received: from smarthost1.greenhost.nl (smarthost1.greenhost.nl [195.190.28.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4K6r3l3qTdz4Xl0 for ; Mon, 28 Feb 2022 19:26:59 +0000 (UTC) (envelope-from ronald-lists@klop.ws) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=klop.ws; s=mail; h=In-Reply-To:Message-ID:From:MIME-Version:Date:References:Subject:Cc :To:Content-Type:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=oGb6hWGRT1F5h70HUacIyb7ELOtveT7r2HFgHLoeNSw=; b=WtkKQHBU7rY+aH+gHwwQ+7SOcN Bxw8GqeNL4Y6wOJ+j3TmYDREiiGX8BhRKQkd+rhiHMzri4u2Cj1MoV9a0Y16IdVaFnhsuutHpK74D nSdoPcoH14wMfrprMKHmbVPp1pepqVNRazB9pSJ6y6gTvVw+T9a4mVuKPVLuh452GcJI=; Content-Type: multipart/alternative; boundary=----------fUu38EU0gquoIVv62Jdqb2 To: "Marco Devesas Campos" , "Warner Losh" Cc: "freebsd-arm@freebsd.org" Subject: Re: [PATCH] Experimental vchiq and bcm2835_audio support for arm64 References: <8EC05647-00D9-455B-98A9-B83A33DDFC5D@gmail.com> <48190d6a-fc5d-7da9-ddfd-fded48d429db@klop.ws> <106195874.50.1644310150579@localhost> Date: Mon, 28 Feb 2022 20:26:49 +0100 List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org MIME-Version: 1.0 From: "Ronald Klop" Message-ID: In-Reply-To: User-Agent: Opera Mail/1.0 (Win32) X-Authenticated-As-Hash: bdb49c4ff80bd276e321aade33e76e02752072e2 X-Virus-Scanned: by clamav at smarthost1.greenhost.nl X-Spam-Level: - X-Spam-Score: -1.2 X-Spam-Status: No, score=-1.2 required=5.0 tests=ALL_TRUSTED,BAYES_40,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,T_SCC_BODY_TEXT_LINE autolearn=disabled version=3.4.2 X-Scan-Signature: 5687c124a59f8446ff23677bbf5e6265 X-Rspamd-Queue-Id: 4K6r3l3qTdz4Xl0 X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=klop.ws header.s=mail header.b=WtkKQHBU; dmarc=pass (policy=quarantine) header.from=klop.ws; spf=pass (mx1.freebsd.org: domain of ronald-lists@klop.ws designates 195.190.28.88 as permitted sender) smtp.mailfrom=ronald-lists@klop.ws X-Spamd-Result: default: False [-3.50 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[klop.ws:s=mail]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:195.190.28.64/27]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.10)[multipart/alternative,text/plain,multipart/related]; NEURAL_HAM_LONG(-1.00)[-1.000]; RWL_MAILSPIKE_EXCELLENT(0.00)[195.190.28.88:from]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[klop.ws:+]; DMARC_POLICY_ALLOW(-0.50)[klop.ws,quarantine]; RCVD_IN_DNSWL_NONE(0.00)[195.190.28.88:from]; NEURAL_HAM_SHORT(-1.00)[-0.999]; MLMMJ_DEST(0.00)[freebsd-arm]; FREEMAIL_TO(0.00)[gmail.com,bsdimp.com]; RCVD_COUNT_ZERO(0.00)[0]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~]; MID_RHS_NOT_FQDN(0.50)[]; ASN(0.00)[asn:47172, ipnet:195.190.28.0/24, country:NL] X-ThisMailContainsUnwantedMimeParts: N ------------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 wrote: > > > On Sun, Feb 27, 2022 at 8:44 AM Marco Devesas Campos = > 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 wrote: >>>Van: Ronald Klop >>> Datum: maandag, 7 februari 2022 21:05 >>> Aan: Marco Devesas Campos , = >>> 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 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: mem 0x7e00b840-0x7e00b87b irq 54 on = >>> simplebus0 >>> > vchiq: local ver 8 (min 3), remote ver 8. >>> > pcm0: 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: mem 0x7e00b840-0x7e00b87b irq 54 on simpleb= us0 >>> +vchiq: local ver 8 (min 3), remote ver 8. >>> +pcm0: on vchiq0 >>>[root@rpi3 ~]# cat /dev/sndstat >>> Installed devices: >>> pcm0: (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: Content-Transfer-Encoding: Quoted-Printable