I'm working on ACPI reset. My laptop and my test PC both have a new-enough FADT (version 2 and newer) and both support the ACPI reset register via I/O port. So, making ACPI reset code for them was easy. VirtualBox has memory-mapped I/O for ACPI reset. Bochs and QEMU have FADT version 1, which is not enough for ACPI reset.
The ACPI reset can also be done via the PCI bus on some hardware. Are there any emulators/virtual machines that support this? I need some platform to write and test my code.
Are there any emulators with ACPI PCI reset support?
- BrightLight
- Member
- Posts: 901
- Joined: Sat Dec 27, 2014 9:11 am
- Location: Maadi, Cairo, Egypt
- Contact:
Are there any emulators with ACPI PCI reset support?
You know your OS is advanced when you stop using the Intel programming guide as a reference.
Re: Are there any emulators with ACPI PCI reset support?
Hi,
Cheers,
Brendan
The "non-ACPI" reset that can be done via. PCI on some hardware is hardware specific. If an emulator supported it then it'd be emulator specific and wouldn't help you test that it works on anything other than that emulator.omarrx024 wrote:The ACPI reset can also be done via the PCI bus on some hardware. Are there any emulators/virtual machines that support this? I need some platform to write and test my code.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
- BrightLight
- Member
- Posts: 901
- Joined: Sat Dec 27, 2014 9:11 am
- Location: Maadi, Cairo, Egypt
- Contact:
Re: Are there any emulators with ACPI PCI reset support?
I meant the "ACPI" reset that can be done via PCI.Brendan wrote:The "non-ACPI" reset that can be done via. PCI on some hardware is hardware specific. If an emulator supported it then it'd be emulator specific and wouldn't help you test that it works on anything other than that emulator.
You know your OS is advanced when you stop using the Intel programming guide as a reference.
Re: Are there any emulators with ACPI PCI reset support?
Hi,
If ACPI's (standard but optional) reset method (involving the "RESET_REG" in the FADT, which may have nothing to do with PCI at all) is not supported, then there is nothing else in any part of any ACPI spec (that I'm aware of) that can be described as an "ACPI reset".
In addition; there is also nothing in any PCI spec (that I'm aware of) that can be described as a "PCI reset" (unless you're not talking about causing a system reset; and are talking about something completely different like resetting a specific device/function or PCI hardware's response to a reset signal that was generated elsewhere).
Cheers,
Brendan
You'll need to be more specific.omarrx024 wrote:I meant the "ACPI" reset that can be done via PCI.Brendan wrote:The "non-ACPI" reset that can be done via. PCI on some hardware is hardware specific. If an emulator supported it then it'd be emulator specific and wouldn't help you test that it works on anything other than that emulator.
If ACPI's (standard but optional) reset method (involving the "RESET_REG" in the FADT, which may have nothing to do with PCI at all) is not supported, then there is nothing else in any part of any ACPI spec (that I'm aware of) that can be described as an "ACPI reset".
In addition; there is also nothing in any PCI spec (that I'm aware of) that can be described as a "PCI reset" (unless you're not talking about causing a system reset; and are talking about something completely different like resetting a specific device/function or PCI hardware's response to a reset signal that was generated elsewhere).
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
- BrightLight
- Member
- Posts: 901
- Joined: Sat Dec 27, 2014 9:11 am
- Location: Maadi, Cairo, Egypt
- Contact:
Re: Are there any emulators with ACPI PCI reset support?
Yes, the ACPI reset register in the FADT can be either memory-mapped I/O, I/O bus or PCI bus. I am asking if there are any emulators that support this with PCI method.
You know your OS is advanced when you stop using the Intel programming guide as a reference.
Re: Are there any emulators with ACPI PCI reset support?
Hi,
I don't know if there are any emulators that support "ACPI FADT reboot via. PCI" - you'd have to check them all (and possibly real computers too) until you find something to test on. Alternatively, you could just display a "Rebooting via. ACPI (using PCI)" message before attempting to reboot (with an infinite loop after just in case) and just assume it works without testing it (until/unless someone sends a bug report).
Cheers,
Brendan
I understand now - I thought you were asking about something like the (relatively dodgy) "PCI reboot" that Linux uses on some specific motherboards (and/or if you use the "reboot=pci" kernel parameter).omarrx024 wrote:Yes, the ACPI reset register in the FADT can be either memory-mapped I/O, I/O bus or PCI bus. I am asking if there are any emulators that support this with PCI method.
I don't know if there are any emulators that support "ACPI FADT reboot via. PCI" - you'd have to check them all (and possibly real computers too) until you find something to test on. Alternatively, you could just display a "Rebooting via. ACPI (using PCI)" message before attempting to reboot (with an infinite loop after just in case) and just assume it works without testing it (until/unless someone sends a bug report).
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
- BrightLight
- Member
- Posts: 901
- Joined: Sat Dec 27, 2014 9:11 am
- Location: Maadi, Cairo, Egypt
- Contact:
Re: Are there any emulators with ACPI PCI reset support?
Bochs and QEMU don't support ACPI FADT reboot at all. VirtualBox has memory-mapped I/O, and my laptop and one of my testing PCs have port I/O. My other testing PC has a new-enough FADT but without the reset register. I should try VMware...Brendan wrote:I don't know if there are any emulators that support "ACPI FADT reboot via. PCI" - you'd have to check them all (and possibly real computers too) until you find something to test on.
You know your OS is advanced when you stop using the Intel programming guide as a reference.