Date: Sun, 14 Jun 2020 00:30:34 +0000 From: Robert Crowston <crowston@protonmail.com> To: =?utf-8?Q?Klaus_K=C3=BCchemann?= <maciphone2@googlemail.com> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org> Subject: Re: Report: FreeBSD on Rpi4 8 GB model Message-ID: <Brby3SnFRYWPyL0B8dY84dmP_iRt8mQ7jqf95m9phYVe5agPP_aUcIT8yuefegaokqLLEkfmQ-quN4I2WT_iyoxGPKwHR1O8jX5ByniiaUM=@protonmail.com> In-Reply-To: <65649C30-79B7-4001-ABBF-71E2C8F52B06@googlemail.com> References: <kb9ZDoXeXjZQGaI_pHItcwGDLz9nl5FzAe-_mxkI1N9MAFSkDpvFbwt-JUy-YmoOg-3C9bFyiNYgUoGvAnJZvsxbbGVHP4ZlUC84EgCd6A0=@protonmail.com> <vZ3qJTOGzo9Cg-9N3Y3BJXsbSXiMQ57DZXJsK7j-T7Xp7xH9ItIua8vcHu2qQj992QAIDfN19Opz0gPRYRgXStldvEslmQL4_OENaE0uyDQ=@protonmail.com> <65649C30-79B7-4001-ABBF-71E2C8F52B06@googlemail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
A fix for the XHCI firmware loading is here: https://reviews.freebsd.org/D2= 5261 (It requires working PCI-E, which is in progress, here: https://reviews.fre= ebsd.org/D25068) A fix for the change to the phy-mode on the genet driver is here: https://r= eviews.freebsd.org/D25251 -- RHC. =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 Original Me= ssage =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 On Wednesday, 10 June 2020 14:37, Klaus K=C3=BCchemann <maciphone2@googlema= il.com> wrote: > > > > Am 10.06.2020 um 01:16 schrieb Robert Crowston via freebsd-arm freebsd-= arm@freebsd.org: > > I figured out how to start the xhci driver. > > The snag is, it seems the message to the VC to reinstall the xhci firmw= are has to be delivered after the bridge memory window is configured on the= controller by the pci_pci bridge, and before the xhci controller is starte= d. > > That kind of ordering is not straightforward to arrange, as far as I ca= n see: I cannot hack the message onto the end of the pcie attach function, = since we need the bridge child to have attached, but not the xhci grandchil= d. > > I think the best way then is to create a shim driver for the xhci contr= oller whose probe() is designed only to succeed on the Rpi4. The shim's att= ach() will instruct the VC to load the xhci firmware, and then defer to the= generic xhci_pci_attach(). All other methods will be inherited from the xh= ci_pci driver. > > Another idea is to put the logic directly in the xhci_pci.c file, but I= think creating a dependency out to the Rpi4 mailbox API from the generic X= HCI framework is quite a hack. > > Anyone have any thoughts? > > Since your driver is dedicated RPi4_ONLY your shim-if_bcm_thing sounds lo= gical. > Especially when we consider that you think that this is the best way, > because nobody knows more about your driver than you :-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Brby3SnFRYWPyL0B8dY84dmP_iRt8mQ7jqf95m9phYVe5agPP_aUcIT8yuefegaokqLLEkfmQ-quN4I2WT_iyoxGPKwHR1O8jX5ByniiaUM=>