Setting up boot chain ACPI on ARM with STM32MPU

Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know whether it was set up on ARM or not. I found a PATCH that discussed* Enabling ACPI booting on ARM with Raspberry Pi 4 https://lore.kernel.org/all/20211201160315.2203099-1-sjg@chromium.org/T/#m3f705d5a3b59d3e58861a2f983e3d48fa20addf4 *but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?

On Wed, Nov 29, 2023 at 5:29 PM Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms
I believe you meant here the niche of the (x86) platforms that are not ACPI-enabled. By default 99% of the x86 platforms are ACPI enabled with the exceptions: - Intel MID (2010-2015, SFI based, enabled in U-Boot) - Tunnel Creek (2010, DT based) - A few SpreadTrum SoCs (2017, DT based)
but I don't know whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?

On Wed, Nov 29, 2023 at 6:25 PM Andy Shevchenko andy.shevchenko@gmail.com wrote:
On Wed, Nov 29, 2023 at 5:29 PM Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms
I believe you meant here the niche of the (x86) platforms that are not ACPI-enabled. By default 99% of the x86 platforms are ACPI enabled with the exceptions:
- Intel MID (2010-2015, SFI based, enabled in U-Boot)
For the sake of completeness it was started in 2007 according to the list https://en.wikipedia.org/wiki/Mobile_Internet_device. And - Intel SoFIA (2015) is missing and I don't even know what is used there for platform description.
- Tunnel Creek (2010, DT based)
- A few SpreadTrum SoCs (2017, DT based)
but I don't know whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?

+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
Regards, Simon

Hi,
On Wed, Nov 29, 2023 at 11:28 AM Simon Glass sjg@chromium.org wrote:
+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
I think STM32MPU is as good as any platform to get the pipe flushed with enabling ACPI on ARM platforms.
Overall I think it's a worthwhile endeavour to get this sorted for at least one ARM platform as a starting point.
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
I've started to mess around with this over the holidays. Feel free to CC me on future work in that direction.
- Moritz

Hi,
Overall I think it's a worthwhile endeavour to get this sorted for at least one ARM platform as a starting point.
So, do you know are there any ARM platforms having ACPI enabled?
Le mer. 29 nov. 2023 à 20:45, Moritz Fischer moritzf@google.com a écrit :
Hi,
On Wed, Nov 29, 2023 at 11:28 AM Simon Glass sjg@chromium.org wrote:
+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project
"Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know
whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling
ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
I think STM32MPU is as good as any platform to get the pipe flushed with enabling ACPI on ARM platforms.
Overall I think it's a worthwhile endeavour to get this sorted for at least one ARM platform as a starting point.
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
I've started to mess around with this over the holidays. Feel free to CC me on future work in that direction.
- Moritz

Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
Can you give me the link to this topic? I can not find it. I think that if U-Boot can not use this, EDK2 may be a solution.
Firstly I wonder why you want ACPI?
For this question, the aim of the ACPI table in my project is to *configure the HW platform* replacing device tree type files currently used.
Le mer. 29 nov. 2023 à 20:28, Simon Glass sjg@chromium.org a écrit :
+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project
"Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know
whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling
ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
Regards, Simon

Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
Hello, could you tell me more details about this topic? Which platform ARM are ACPI tables enabled for?
Le mer. 29 nov. 2023 à 20:28, Simon Glass sjg@chromium.org a écrit :
+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project
"Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know
whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling
ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
Regards, Simon

Hi Ba,
On Mon, Dec 4, 2023 at 2:47 AM Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
Hello, could you tell me more details about this topic? Which platform ARM are ACPI tables enabled for?
There are some patches to enable it for qemu on ARM here:
http://patchwork.ozlabs.org/project/uboot/list/?series=388154
Regards, Simon
Le mer. 29 nov. 2023 à 20:28, Simon Glass sjg@chromium.org a écrit :
+Heinrich Schuchardt
Hi,
On Wed, 29 Nov 2023 at 08:29, Ba Gia Bao Phan phanbagiabao2001@gmail.com wrote:
Hello everyone,
I am a trainee at STMicroelectronics France. I am working on a project "Setting up a boot chain ACPI" for STM32MPU, which is based on ARM Cortex-A . The objective of my project is to add a way of booting (with ACPI) besides Device Tree available on STM32MPU.
I found that ACPI was enabled on some x86 platforms but I don't know whether it was set up on ARM or not. I found a PATCH that discussed Enabling ACPI booting on ARM with Raspberry Pi 4 but I don't know if it functioned or not. Did anyone here succeed in setting up ACPI on ARM by U-boot?
Sort-of...the refactoring to allow ACPI tables on ARM is completed, but I don't think any U-Boot board uses this.
What are the differences between x86 and ARM platforms when enabling ACPI? The architecture of my board STM32PMU is ARM so can I apply the technique used on platform x86 for my board?
Firstly I wonder why you want ACPI?
Secondly, if you have the tables somewhere it should be easy enough to build them, building on the series you pointed to. Heinrich is interested in this, I think. I can help with advice. I have been toying with going back to that rpi series but have not done so yet.
Regards, Simon
-- PHAN Ba Gia Bao Etudiant en 5A STI - INSA Centre Val de Loire
participants (4)
-
Andy Shevchenko
-
Ba Gia Bao Phan
-
Moritz Fischer
-
Simon Glass