Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch adds support to read u64 sensor values. This also adds
changes to the core and the backend implementation code to make this
API as the base call. Host can use this new API to read sensors
upto 64bits.
This adds a list to store the pointer to the kernel u32 buffer, for
older kernels making async sensor u32 reads.
Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
There are userspace tools that update the planar VPD via the sysfs
interface. Currently we do not get correct information from hostboot
about the exact type of the EEPROM so we need to manually fix it up
here. This needs to be done as a platform specific fix since there is
not standardised VPD EEPROM type.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
An old Witherspoon platform definition was added to aid the transition from
versions of Hostboot which didn't have the correct NVLink HDAT information
available and/or planar VPD. These system should now be updated so remove
the possibly incorrect default assumption.
This may disable NVLink on old out-dated systems but it can easily be
restored with the appropriate FW and/or VPD updates. In any case there is a
a 50% chance the existing default behaviour was incorrect as it only
supports 6 GPU systems. Using an incorrect platform definition leads to
undefined behaviour which is more difficult to detect/debug than not
creating the NVLink devices so remove the possibly incorrect default
behaviour.
Signed-off-by: Alistair Popple <alistair@popple.id.au>
Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Reviewed-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Witherspoon introduced a new concept where one physical slot is shared
between two PHBs. Making a slot aware of its peer enables syncing
between them where necessary.
Signed-off-by: Russell Currey <ruscur@russell.cc>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
See 696d378d7b7295366e115e89a785640bf72a5043 for all the details.
Suggested-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
We had a race condition between FSP Reset/Reload and powering down
the system from the host:
Roughly:
FSP Host
--- ----
Power on
Power on
(inject EPOW)
(trigger FSP R/R)
Processes EPOW event, starts shutting down
calls OPAL_CEC_POWER_DOWN
(is still in R/R)
gets OPAL_INTERNAL_ERROR, spins in opal_poll_events
(FSP comes back)
spinning in opal_poll_events
(thinks host is running)
The call to OPAL_CEC_POWER_DOWN is only made once as the reset/reload
error path for fsp_sync_msg() is to return -1, which means we give
the OS OPAL_INTERNAL_ERROR, which is fine, except that our own API
docs give us the opportunity to return OPAL_BUSY when trying again
later may be successful, and we're ambiguous as to if you should retry
on OPAL_INTERNAL_ERROR.
For reference, the linux code looks like this:
>static void __noreturn pnv_power_off(void)
>{
> long rc = OPAL_BUSY;
>
> pnv_prepare_going_down();
>
> while (rc == OPAL_BUSY || rc == OPAL_BUSY_EVENT) {
> rc = opal_cec_power_down(0);
> if (rc == OPAL_BUSY_EVENT)
> opal_poll_events(NULL);
> else
> mdelay(10);
> }
> for (;;)
> opal_poll_events(NULL);
>}
Which means that *practically* our only option is to return OPAL_BUSY
or OPAL_BUSY_EVENT.
We choose OPAL_BUSY_EVENT for FSP systems as we do want to ensure we're
running pollers to communicate with the FSP and do the final bits of
Reset/Reload handling before we power off the system.
Additionally, we really should update our documentation to point all
of these return codes and what action an OS should take.
CC: stable
Reported-by: Pridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Acked-by: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
The DECLARE_PLATFORM macro takes the supplied platform name and adds "_platform"
to it when defining the platform struct.
Remove the _platform from the platform name for zaius and romulus so we have
"zaius_platform" rather than "zaius_platform_platform", for consistency's
sake...
Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
In the future we will always create the npu nodes based on what's in the
HDAT. For now we seperate witherspoon into an old and new platform where
the old platform will assume a sequoia planar and create the relevant
NPU nodes for that planar. If you have a redbud system this will be
broken, but this should be fine for most cases.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Add the other PCIe devices to the witherspoon slot tables. This provides
a fall back for systems without IOSLOT information in the HDAT. This is
mainly to allow DD1 systems to continue being useful.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Move this out of the astbmc specific part into a generic helper. This
allows us to use it more commonly.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
astbmc has some code to handle devices that are behind a "slot" on a
riser card that can't be added to the static slot tables for a system.
We probably want to use this code outside the slot table handling so
move it somewhere generic and rework it so slot table specifics aren't
buried inside it.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
PHB4_SHARED_SLOT_IDX_WITHERSPOON is the index of the PHB which the
shared slot is connected to rather than the index of the shared slot
which the name suggests. This is confusing at best so this patch
replaces the only usages of this macro with just the PHB number
and a comment.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
In P8, hostboot provides mini device tree. It contains /ibm,firmware-versions
node which has various firmware component version details.
In P9, OPAL is building device tree. This patch adds support to parse VERSION
section of PNOR and create "/ibm,firmware-versions" device tree node.
Sample output:
/sys/firmware/devicetree/base/ibm,firmware-versions # lsprop .
occ "6a00709"
skiboot "v5.7-rc1-p344fb62"
buildroot "2017.02.2-7-g23118ce"
capp-ucode "9c73e9f"
petitboot "v1.4.3-p98b6d83"
sbe "02021c6"
open-power "witherspoon-v1.17-128-gf1b53c7-dirty"
....
....
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Signed-off-by: Mukesh Ojha <mukesh02@linux.vnet.ibm.com>
Reviewed-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
OPAL currently doesn't know about the 2s2u zz. It recognizes such a
box as a generic BMC machine and fails to boot. Add the 2s2u as a
supported platform.
There will subsequently be a 2s2u-L system which may have a different
compatible property, which will need to be handled later.
Signed-off-by: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
OpenBMC stack added IPMI OEM extension to log eSEL events.
Lets enable eSEL logging from OPAL side.
See: https://github.com/openbmc/openpower-host-ipmi-oem/blob/d9296050bcece5c2eca5ede0932d944b0ced66c9/oemhandler.cpp#L142
(yes, that is the documentation)
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
[stewart@linux.vnet.ibm.com: remove pnor access request, add link to OpenBMC doc]
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
For NVLink2 to function PCIe devices need to be associated with the right
NVLinks. This association is supposed to be passed down to Skiboot via HDAT but
those fields are still not correctly filled out. To work around this we add slot
tables for the NVLinks similar to what we have for P8+.
Signed-off-by: Alistair Popple <alistair@popple.id.au>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
When matching devices on multiple down stream PLX busses we need to compare more
than just the device-id of the PCIe BDFN, so increase the mask to do so.
Signed-off-by: Alistair Popple <alistair@popple.id.au>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
The platform isn't compatible with palmetto until the root device-tree
node's "model" property is NULL or "palmetto". However, we could have
"TN71-BP012" for the property on palmetto.
linux# cat /proc/device-tree/model
TN71-BP012
This skips the validation on root device-tree node's "model" property
on palmetto, meaning we check the "compatible" property only.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
The current implmentation has incorrect assumptions: there is
always a PCI slot associated with root port and PCIe switch
downstream port and all of them are capable to change its
power state by register PCICAP_EXP_SLOTCTL. Firstly, there
might not a PCI slot associated with the root port or PCIe
switch downstream port. Secondly, the power isn't controlled
by standard config register (PCICAP_EXP_SLOTCTL). There are
I2C slave devices used to control the power states on Tuleta.
In order to use the PCI slot's methods to manage the power
states, this does:
* Introduce PCI_SLOT_FLAG_ENFORCE, indicates the request operation
is enforced to be applied.
* pci_enable_bridge() is split into 3 functions: pci_bridge_power_on()
to power it on; pci_enable_bridge() as a place holder and
pci_bridge_wait_link() to wait the downstream link to come up.
* In pci_bridge_power_on(), the PCI slot's specific power management
methods are used if there is a PCI slot associated with the PCIe
switch downstream port or root port.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This refactors firenze_pci_setup_power_mgt() and no logicial changes
introduced:
* Avoid nested if block;
* Remove the local variable @buddy. The information is retrieved
directly from struct firenze_pci_slot_info::buddy;
* Comments to explain the fixed register offset (0x69) for slot's
power control and shared power state between local slot and its
buddy.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This introduces another data struct to describe the PCI slot fixup
information. With that, the PCI slot fixup information table is
decoupled from the PCI slot information table, to make the code
easier to be maintained. In the meanwhile, the PCI slot information
struct, which has been complexed, is simplified. It shouldn't
introduce any functional changes.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
When powering off the PCI slot, the corresponding bits should
be set to 0bxx00xx00 instead of 0bxx11xx11. Otherwise, the
specified PCI slot can't be put into power-off state. Fortunately,
it didn't introduce any side-effects so far.
Cc: stable # 5.3.0+
Fixes: 6884fe63ba1e ("platforms/ibm-fsp: Support PCI slot")
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
In P9 FSP box, OCC image is pre-loaded. So do not handle the load
command and send SUCCESS to FSP on recieving OCC_LOAD mbox message.
Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Witherspoon systems come with a 'shared' PCI slot: physically, it
looks like a x16 slot, but it's actually two x8 slots connected to two
PHBs of two different chips. Taking advantage of it requires some
logic on the PCI adapter. Only the Mellanox CX5 adapter is known to
support it at the time of this writing.
This patch enables support for the shared slot on witherspoon if a x16
adapter is detected. Each x8 slot has a presence bit, so both bits
need to be set for the activation to take place. Slot sharing is
activated through a gpio.
Note that there's no easy way to be sure that the card is indeed a
shared-slot compatible PCI adapter and not a normal x16 card. Plugging
a normal x16 adapter on the shared slot should be avoided on
witherspoon, as the link won't train on the second slot, resulting in
a timeout and a longer boot time. Only the first slot is usable and
the x16 adapter will end up using only half the lines.
If the PCI card plugged on the physical slot is only x8 (or less),
then the presence bit of the second slot is not set, so this patch
does nothing. The x8 (or less) adapter should work like on any other
physical slot.
Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
[stewart@linux.vnet.ibm.com: re-org code, move into platform file]
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
It turns out GCC7 adds a useful warning and does fancy things like
parsing your comments to work out that you intended to do the fallthrough.
There's a few places where we don't match the regex. Fix them, as it's
harmless to do so.
Found by building on Fedora Rawhide in Travis.
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Previously the PRD tooling ran on the FSP, but it was moved into
userspace on the host for OpenPower systems. For P9 this system
was adopted for FSP systems too.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Add p9dsu platform (AKA Boston).
Signed-off-by: Jim Yuan <jim.yuan@supermicro.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
|
|
This function is specific to how Skiboot's P8 PSIHB driver. For P9 the
PSIHB driver has been reworked completely and this doesn't do anything.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Acked-By: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Add an opal call OPAL_SIGNAL_SYSTEM_RESET which allows system reset
exceptions to be raised on other CPUs and act as an NMI IPI. There
is an initial simple Mambo implementation, but allowances are made
for a more complex hardware implementation.
This API is based on the POWER8 implementation from Alistair Popple.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
[stewart@linux.vnet.ibm.com: minor RST fix]
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Signed-off-by: Hank Chang <chhank@tw.ibm.com>
Acked-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
If the BMC is MBOX protocol aware, request flash reads/writes over the
MBOX regs. This inits the blocklevel for pnor access with mbox-flash.
Signed-off-by: Cyril Bur <cyril.bur@au1.ibm.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
The mbox registers are accessed via superIO, these need to be
initialised.
The mbox device node won't be present in the device tree hostboot passes
us, so fixup the device tree.
Signed-off-by: Cyril Bur <cyril.bur@au1.ibm.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This adds the PCI slots info for palmetto.
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Currently astbmc_early_init() only applies to AST2400/POWER8.
This fixes the code so it also applies to AST2500/POWER9 except for
the PSI BAR fixup which is not needed on AST2500/POWER9.
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Currently ast_fixup_dt() only applies for P8. This enables P9 also.
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
+----------------------------------------------------------------------+
|ooooooooooooooooooooooooo=+++:++++::::~:::::::+==ooooooooooooooooooooo|
|oooooooooooooooooooooo+++++++++++++:+:~...:++++:+==ooooooooooooooooooo|
|oooooooooooooooooooo++++=++==+++::~~~~ .~~+++++++=oooooooooooooooooo|
|oooooooooooooooooo+:++====+++::~..~~~~... .~:++++++++=oooooooooooooooo|
|oooooooooooooooo=::++=+=++++:~~~:::::~~.. ~:++++++=++=ooooooooooooooo|
|ooooooooooooooo=::+++++:++:::::+++:::~.....:++:+++++=++=oooooooooooooo|
|oooooooooooooo+~::+:+:::::~::+++++++:~~:++::+++::++++===oooooooooooooo|
|ooooooooooooo=:~:::::~:::::++++=+=+:::++++++:+++::++++====oooooooooooo|
|ooooooooooooo:~::~::~~:::::++=+=++::+=++++++:++=:::++++===oooooooooooo|
|oooooooooooo:~~~~~~~~~~:::+:++=+:++++++=+=+++++++:::+=+====ooooooooooo|
|ooooooooooo+~~~~~~~~:~~:::++++::+=+++==+++++:::=+::::+=+===ooooooooooo|
|oooooooooo=~~~:~~~~~~.~~:::++::++++++++++++++:++++::::+++==ooooooooooo|
|oooooooooo:~.~~~~~.~..~~::::::+++++++++++++++:::++:::::=====oooooooooo|
|ooooooooo+~..~:~....~.~~~~~~~~:+++++++::~~~~~::::++::::+==+=oooooo====|
|oooooooo+~~.~:~~.~..~~::~... .~::+:+::~. ..~::::~::++=:+=o=o=====o|
|ooooooo=~~..~:~~~ ~::~. .~~~:+++::~~:. .. .~:::~~~++=:+===oooooo=|
|o=o==o=::~.~:::~~ :::+:~~~~~:::+:+=++:::::~~~:+++::~..:+=::+=====o==o|
|=======~~.~::::: .~:++++++:::++++++++++++:++++++++:. .:++::+=o=======|
|==o====~~~~~:::. .:::++++=+=+++:+++++++=+=+++++++: .~~+=:::=========|
|ooo=oo=:~~~:~:: ..~~~:::+++++++++=+=++++++=++++:+:..~~~:+:~:===o=o=oo|
|=o===o+:~~::~:.. ....~~~::+++++:~~:++::::++:+:+::+: .:::++~:+=ooooooo|
|o=ooo=+:.::~~~. ... .~~~:::::+:::~~~:::++++::::::: ~::::=:~+=o=ooooo|
|ooo=o+++:~~~~... .. .~~~::::+++++++++++++:::++:::: ~+:+:+~~:+o=oo=o=|
|o=o=++==:~~..~. . ~~~:::::~~~:~~~~~:~~:::+::::~ .:::::+~.:+=o==o=o|
|=o=+====:~..... ~~~:::+:::~:::::::+++:::::~ .+:~:++.~~+=oooooo|
|====o==++:~.~~~... .~~~~:::+::::::+:+:+::::. :+:::+:.~:+=======|
|o=====+=+=+~~~~... .~~:::::++++++++:+:::~ . .::++::~:::+==o====|
|o==oo+=+=o=:::~~. .~..~~:++:++++++::~~..~...::+++++::+++=====o=|
|=o====o=o=++::~. .~~~...~::::::::~...~~~~.~:+++++++++++==o==o=|
|oo===oo=o=+:~~.... ~~~:~~~..........~~:::~~..:+++++++++===oooo=o|
|=o===oo=+::~~~.. ~~~::~~~~~~~~~~~~:~~::~~~~~+++++++++====ooooo|
|====++::~....... .. ~~:::~::::::~~~~~~~:~::::~.. .=+++=+=+====o=oo=|
|==+:~~........ .. ...~:::::::::::::::~~::::::::~. .~+==++=++o===o=oo|
|oo+.. ~~~~~:~::+::::::::::::::::::::::::~. ~:~~:=++=+==+==oooo|
|=+:~~. .~~~:+::::+++:+::++::+:+:+:++:++:++:::~..+:.~::++++++++++==:|
+----------------------------------------------------------------------+
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This issue is reported from superMicro's "p8dnu" platform. PEX8718
is connected to PHB direct slot. We create dynamic PCI slots for
its (2) downstream ports and all of them support surprise hotplug
capability. The problem is power supply lost on hot-remove and it
isn't turned on automatically on hot-add. It means the PCIe link
behind the slot isn't up and the PCI adapter behind the slot can't
be probed successfully.
This fixes the issue by forcing to turn on the power supply on
hardware when user (kernel) requests to do so, as we did for PEX9733.
Reported-by: Hank Chang <hankmax0000@gmail.com>
Signed-off-by: Gavin Shan <gwhsan@linux.vnet.ibm.com>
Tested-by: Willie Liauw <williel@supermicro.com.tw>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This issue is reported from superMicro's "p8dnu" platform. PEX9733
is connected to PHB direct slot. We create dynamic PCI slots for
its (5) downstream ports and all of them support surprise hotplug
capability. The problem is power supply lost on hot-remove and it
isn't turned on automatically on hot-add. It means the PCIe link
behind the slot isn't up and the PCI adapter behind the slot can't
be probed successfully.
This fixes the issue by forcing to turn on the power supply on
hardware when user (kernel) requests to do so. Those PCI slots
are identified by additional flag (PCI_SLOT_FLAG_FORCE_POWERON).
Reported-by: Hank Chang <hankmax0000@gmail.com>
Signed-off-by: Gavin Shan <gwhsan@linux.vnet.ibm.com>
Tested-by: Willie Liauw <williel@supermicro.com.tw>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This supports superMicro's P8DNU platform.
Signed-off-by: Willie Liauw <williel@supermicro.com.tw>
Signed-off-by: Hank Chang <hankmax0000@gmail.com>
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
This was broken on Rhesus. Also add an nvram way of
overriding the policy
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
With addition of latest callback of check_all_slot_table found below
error message in habanero platform.
[ 17.069198739,3] PCI: built-in device not found: Network Mezz (loc: 10)
https://github.com/open-power/skiboot/issues/54
So PHB1 already having one Network Mezz(1,0) which is the only one there in the
habanero platform design layout. check_all_slot_table found the additional
Network Mezz(2,0) in slot table is in-correct. Fix this by removing it.
Signed-off-by: Pridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
WMWWMMMMMMWWMWMWMMMMMMMMMWWWMWMMMWMMWWWMWWWWWMWWWWWWWWWWMMWW
WWKKWWWMMW0kXWWWMMMMMMMMMK wWWK ONW xW WW WWWN WW
WWl xWWWl KWMMMMMMMMMXkkx .WWX k kWX lWW WN WWN KWW
MWl x XMWl O OMMMMMMMMMMMMk OMWK oWk kMX lWW WN WW xWWW
MWl NK WWl XK WWWMMMMMMWWW WWWK oWk kMX lWW WN WW 0MMM
WWl NW NWl XN WWWMMWMMWWW0 .WWWK oWk xMX lWW WN WWX WWM
WWl NN NMl Ko kWWWWWNNNNNN KNNN0 lNx xWX lWW WN WWW dWW
WWl K xNNc L xXXXXXXXXXXO XXXXO lNo dX0 cXX XX NNWW WW
XXc xXXXc kO KXXXXXXXXX OXXXXO l0o dX0 :XX KK XXXX KN
XXo:kKXXXXl 0K KXXXXXXXX0 KXO oXx xX XXd dXXx oXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXNNWWWWNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXNNXK00NNWWNNWWWNXXXXXXXXXXXXXXXXXXXXXXX0o
XXXXXXXXXXXXXXXXXNNXOOO0XNXNNNXNWWWNXXXXXXXXXXXXXXXXXXXXKdcc
XXXXXXXXXXXXXXXXNNKOOOk00XkxXNWWNKNWNXXXXXXXXXXXXXXXXX0dcccc
XXXXXXXXXXXKXXXNWX00OOOO0OdloodKK0KWWNXXXXXXXXXXXXXXkocccccc
XXXXXXXXXXXk0XNNKOOOdollokxlokkOOxOXWNXXXXXXXXXXXXKocccccccc
KXXXXXXXXXXdkNX00O0ko:. ,ccc,..cKK0NNNXXXXXXXXXXOlccccccccc
0kOXXXXXXXKlON00O00Oo, ,lo; 'x0KWNNXXXXXXXXXkccccccccccc
XKxox0XXXX0OWKOOO000Oxllodxxkdlldk0XWNNNXXXXXXKdcccccccccccc
XXX0dcdkxdkWWK0OO00K0xlooooxkOkk0O0XWNNNXXXXXKoccccccccccccc
KXXXXkccccdKNNX0KKK00dlllllllokKWXKNWWWNXXXX0occcccccccccccc
dOKXKl:::::ONKKKXdO000xoooooodOKWNXWWWWNOO0klccccccccccccccc
cccll::::::cl;cKk :OKNXkxxxkk0KKNWNWWWWNxoollcldlccccccccccc
:::::::c:::;;;;:x oXWN0XWWWWXXNWWWWNWNKkdxllllxOxooooooollc
::;:doooooc;;;' ' .0WWXNWWWWKNKKWWNdkkdddddcllokOkxxxxxdxxx
::;ldlllod:;:;. ,doOWNWWNXX.cW0dcclddddxoccloOOxdxxdxxkk
;;;cdooodl;::, . .,:d0O;, ;:.ccc:cddddxl:clxOkxxxxkkkx
;;;oxlolo;;::. .ccc:ldxdddccllOkxxkxxkkx
;;;oooddl,::;. .l:c:oxdddlc::oxoxkxoc::
;;;ooddd:;::' .l:c;odxdd:;;cxxko;;;;;
;,;ollol;:;:. ;l;;:xoool;;;xxd:,,,,,
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Enthusiastically-acked-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
We do some P8 specific hacks on BMC platforms to work around Hostboot
not initialising the PSI BAR and to fix some problems in the hostboot
provided device tree. These shouldn't be done on P9.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Adds a new platform for P9 FSP machines. Currently this is just a
barebones FSP platform with the firenze/apollo PCI specific stuff removed.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
mprintf() is printf(), but it goes straight to the mambo console. This
allows it to be independent of Skiboot's actual console infrastructure
so it can be used for debugging the console drivers and for debugging
code that runs before the console is setup.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Add static to various declarations that can use it, as found by sparse.
It turns out that one of these (fsp_pcie_inv_lock in
platform/ibm-fsp/firenze.c) is actually unused, so remove it.
Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
force_dummy_console() was only ever used to ensure the dummy console
would be initialised when the platform did not setup it's usual console.
The new console init path will uses the dummy console by default so this
is now unnecessary.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
|
Adds a new structure that contains the implementations of the various
OPAL console handlers. This is intended to replace the existing ad-hoc
mechanism where the OPAL call handlers are overwritten in the OPAL
console driver's init function.
Currently this just moves the site where the OPAL call handlers are
overwritten to inside of console.c, but it is intended to give us a
mechanism for implementing features such as pointer validation for the
OPAL console calls without having to manually update each driver.
This also helps to clarify differences between the internal (skiboot)
console and the external (OPAL) console.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|