diff options
author | Ryan Grimm <grimm@linux.ibm.com> | 2021-09-08 11:57:59 -0500 |
---|---|---|
committer | Vasant Hegde <hegdevasant@linux.vnet.ibm.com> | 2021-10-19 12:14:20 +0530 |
commit | 70bf92ae7e4fd9a114d25fa7b1f55151b5835e53 (patch) | |
tree | d37017f6a4dc0321d466ebfa33cef6571d73b55a /include/chip.h | |
parent | c496563de915cb00c6e99586568743ea890af2f2 (diff) | |
download | skiboot-70bf92ae7e4fd9a114d25fa7b1f55151b5835e53.zip skiboot-70bf92ae7e4fd9a114d25fa7b1f55151b5835e53.tar.gz skiboot-70bf92ae7e4fd9a114d25fa7b1f55151b5835e53.tar.bz2 |
AWAN simulator support for P10
This patch enables Skiboot to initialize and Linux to boot to user space
on the AWAN core and chip models.
We need the distinction between core and chip models because the core
models do not have an XSCOM unit, CHIPTOD, nor RNG. The chip
model does have them and they work.
So, add a device_type property to the awan node to distinguish core from
chip. Sample DTS are provided for the core and chip models in
external/awan.
Just like Mambo, we need to return in slw_init before trying to
initialize SLW. Without an XSCOM unit in the device tree for the core
model, the SLW code path eventually fails an assert due to lack of
chips.
This commit defines a QUIRK_AWAN where previously Mambo used
QUIRK_MAMBO_CALLOUTS so now Mambo and AWAN core both work.
Also, fix up chip quirks so the core model and chip model boot and
initialize the appropriate units.
Disable sreset and power management in a couple spots because the chip
model does not support stop with EC=1 and enter_p9_pm_state spins in the
branch-to-self after stop.
Provide an external/awan/README.md with a high-level view of booting in
the environment.
Signed-off-by: Ryan Grimm <grimm@linux.ibm.com>
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Diffstat (limited to 'include/chip.h')
-rw-r--r-- | include/chip.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/chip.h b/include/chip.h index bbfc65e..cfa5ce3 100644 --- a/include/chip.h +++ b/include/chip.h @@ -186,6 +186,7 @@ enum proc_chip_quirks { QUIRK_NO_DIRECT_CTL = 0x00000080, QUIRK_NO_RNG = 0x00000100, QUIRK_QEMU = 0x00000200, + QUIRK_AWAN = 0x00000400, }; extern enum proc_chip_quirks proc_chip_quirks; |