On Mon, 11 Jan 2021 at 04:40, Jeremy Linton <jeremy.linton@xxxxxxx> wrote: > > Hi, > > On 1/9/21 5:07 AM, Stefan Wahren wrote: > > Hi Jeremy, > > > > +add Nicolas > > > > Am 08.01.21 um 22:13 schrieb Jeremy Linton: > >> The rpi4 has a Arasan controller it carries over ... > >> @@ -299,6 +311,8 @@ MODULE_DEVICE_TABLE(of, sdhci_iproc_of_match); > >> static const struct acpi_device_id sdhci_iproc_acpi_ids[] = { > >> { .id = "BRCM5871", .driver_data = (kernel_ulong_t)&iproc_cygnus_data }, > >> { .id = "BRCM5872", .driver_data = (kernel_ulong_t)&iproc_data }, > >> + { .id = "BCM2847", .driver_data = (kernel_ulong_t)&bcm_arasan_data }, > > > > Sorry, i don't have deeper knowledge about ACPI, but BCM2837 is the > > official naming of the SoC on the RPi 3. > > > > Is this a typo in the id? > > Not really. > > Some background: The PFTF is basically the custodian of the combined > rpi3 port done by Microsoft and a few other peoples/organizations ports. > That merged code base was upstreamed a couple years ago to edk2 for the > rpi3 and is the official port. On the rpi3+uefi platform, linux is just > using DT, but windows and possibly other OSs are using the ACPI tables. > For the Rpi4, the intentions is to be an ACPI first platform, but we are > inheriting the rpi3 legacy peripheral descriptions. I wouldn't say ACPI first - Linux will likely always have far better DT coverage for these platforms, with DT overlays etc. However, there is a strong pull from the industry to support Windows, VMware, RHEL/Centos and the BSDs on these systems, which is why the ACPI firmware port is important. RPi4 is also the most easily obtained Linux/arm64 machine with a proper and fairly complete implementation of standards-based rich firmware, which is why it makes sense to support both ACPI and DT boot on it in Linux. > So, for the past > year+ everyone has been basing their rpi4 ACPI OS ports on those tables > and only adjusting them in backwards compatible ways. > > Meaning, that a few years back someone put that ID in the rpi3 ACPI > tables, and now we are stuck with it unless we are willing to break > other OSs. > Note that most of the ACPI tables were contributed by Microsoft in order to boot Windows for IOT (or whatever it was called at the time) on the RPi3; they weren't just pulled out of thin air. > > > > >> + { .id = "BRCME88C", .driver_data = (kernel_ulong_t)&bcm2711_data }, > >> { /* sentinel */ } > >> }; > >> MODULE_DEVICE_TABLE(acpi, sdhci_iproc_acpi_ids); > > > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel