Michael Niewöhner has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/45951 )
Change subject: soc/intel: deduplicate ACPI timer emulation ......................................................................
Patch Set 18:
(5 comments)
https://review.coreboot.org/c/coreboot/+/45951/15//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/45951/15//COMMIT_MSG@9 PS15, Line 9: socs : above
Well, I wanted to be very specific here, because it may differ for some others (I have not checked x […]
Done
https://review.coreboot.org/c/coreboot/+/45951/18//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/45951/18//COMMIT_MSG@10 PS18, Line 10: APL
Please mention APL differences
Done
https://review.coreboot.org/c/coreboot/+/45951/17/src/soc/intel/apollolake/M... File src/soc/intel/apollolake/Makefile.inc:
https://review.coreboot.org/c/coreboot/+/45951/17/src/soc/intel/apollolake/M... PS17, Line 13: ../../soc/intel/
err, why is it done in the bootblock? We might want to move it later. […]
Nico checked this; APL does not have an ACPI timer in hardware; since ACPI timer is used in FSP-M, emulation needs to be enabled in bootblock
https://review.coreboot.org/c/coreboot/+/45951/17/src/soc/intel/common/block... File src/soc/intel/common/block/cpu/pm_timer_emulation.c:
https://review.coreboot.org/c/coreboot/+/45951/17/src/soc/intel/common/block... PS17, Line 26: msr.lo = (EMULATE_DELAY_VALUE << EMULATE_DELAY_OFFSET_VALUE) |
Furquan, could you have a look at your docs, please, if APL needs that or has that setting at all?
APL does not have the delay registers; they seem to be writable, though. Nico assumed the could be dontcare -> needs test (added to commit message)
https://review.coreboot.org/c/coreboot/+/45951/18/src/soc/intel/common/block... File src/soc/intel/common/block/include/intelblocks/cpulib.h:
https://review.coreboot.org/c/coreboot/+/45951/18/src/soc/intel/common/block... PS18, Line 159: /* Enable the emulated ACPI timer to allow disabling the PM ACPI timer (PM1_TMR) */
or in case it's not available (or just skip the reasoning, realize that what […]
Done