This is a basic patch that adds some basic acpi rev2+ support and a couple of features by the addition of:
(bios/rombios32.c)-1: An XSDT table placed between the RSDT and the FADT (which is functionally identical to the already present RSDT), and the relative field in the RSDP
(bios/rombios32.c)-2: An extended firmware_waking_vector field in the FACS and relative support
(bios/rombios32.c)-3: The "newer" fields of the FADT, which are set identically to the already present ones, except for the boot_arch_flags which I tried to set in the most logical way and for the century field, which was already present but set to 0 (I set it to 0x32 according to Bochs' RTC map)
(bios/rombios32.c)-4: The FADT reset register field has been set as following
(iodev/acpi.cc)-1: The reset register code, which does a bx_pc_system.Reset(BX_RESET_HARDWARE) if a outb(pm_io_base +0x10, 0x5A) is performed (according to the acpi specs all hardware should be reset by this method)
According to the acpi specs no further improvements are needed in order to have an acpi rev2+ compliant devices. Also, none of the already used fields has been touched so an acpi rev1 driver runs without any issue
Pardon the huge spelling error in the title, I've no idea how could I miss that.
Hi,
This patch doesn't merge in acpi.cc.
Are you in github ?
May be can create a PR for the change in github ?
Hi,
Sorry for not replying, I had a few days off.
Later I'll check the patch and fix it if it needs so, since I put it
together very quickly one night and I don't remember exactly what I did.
Then I may create a PR.
Il 26/08/22 21:06, Stanislav Shwartsman ha scritto:
Related
Patches: #554