backport request: include support for OpenPower hardware
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
Medium
|
Tim Gardner | ||
Utopic |
Fix Released
|
Medium
|
Chris J Arges | ||
Vivid |
Fix Released
|
Medium
|
Tim Gardner |
Bug Description
[Impact]
This is a HWE SRU for OpenPower support in 3.16.
[Fix]
upstream commits:
backported from commit 6a11e5c67a397e9
backported from commit 608b286d1ddf38a
cherry picked from commit 3bf57561d4dbd36
cherry picked from commit 4c3b21686111e0a
cherry picked from commit a4bcbe6a41adcaa
backported from commit 08135139430fabd
cherry picked from commit c1c3a526bb4ddbe
cherry picked from commit b921e90260cec1e
backported from commit e8a51e1b51ee573
cherry picked from commit 5590f3196b29357
backported from commit 529d235a0e190de
[Test Case]
Ensure kernel boots on specific OpenPower hardware.
--
We've prepared a series of patches (ported to Ubuntu-
The changes are available in the ubuntu/vivid branch of:
https:/
(or I can attach them separately).
Changelogs are as follows:
commit 2f0190bd4376455
Author: Benjamin Herrenschmidt <email address hidden>
Date: Fri Nov 14 16:13:50 2014 +1100
powerpc/
If OPAL requests it, call it back via opal_poll_events() at a
regular interval. Some versions of OPAL on some machines require
this to operate some internal timeouts properly.
Signed-off-by: Benjamin Herrenschmidt <email address hidden>
Backport notes:
cherry-picked from mpe-next, 3bf57561d4dbd36
minor conflicts resolved
Signed-off-by: Jeremy Kerr <email address hidden>
commit e1c89541e716349
Author: Benjamin Herrenschmidt <email address hidden>
Date: Mon Feb 16 14:59:08 2015 +1100
device: Add dev_of_node() accessor
Suggested by Arnd Bergmann, this gives a practical accessor for
the of_node field of struct device while instructing the compiler
that it will be NULL if CONFIG_OF is not set.
Signed-off-by: Benjamin Herrenschmidt <email address hidden>
Acked-by: Rob Herring <email address hidden>
Backport notes:
Submission to LKML at: https:/
Signed-off-by: Jeremy Kerr <email address hidden>
commit 2c242b30756f775
Author: Benjamin Herrenschmidt <email address hidden>
Date: Wed Feb 18 11:25:18 2015 +1100
drivers/
So I've been annoyed lately with having a bunch of devices such as i2c
eeproms (for use by VPDs, server world !) and other bits and pieces that
I want to be able to identify from userspace, and possibly provide
additional data about from FW.
Basically, it boils down to correlating the sysfs device with the OF
tree device node, so that user space can use device-tree info such as
additional "location" or "label" (or whatever else we can come up with)
propreties to identify a given device, or get some attributes of use
about it, etc...
Now, so far, we've done that in some subsystem in a fairly ad-hoc basis
using "devspec" properties. For example, PCI creates them if it can
correlate the probed device with a DT node. Some powerpc specific busses
do that too.
However, i2c doesn't and it would be nice to have something more generic
since technically any device can have a corresponding device tree node.
This patch adds an "of_node" symlink to devices that have a non-NULL
dev->of_node pointer, the patch is pretty trivial and seems to work just
fine for me.
Signed-off-by: Benjamin Herrenschmidt <email address hidden>
Acked-by: Rob Herring <email address hidden>
Backport notes:
Submission to LKML at: https:/
Signed-off-by: Jeremy Kerr <email address hidden>
commit 1d9d9bdad2553f3
Author: Michael Ellerman <email address hidden>
Date: Sat Mar 28 21:35:16 2015 +1100
powerpc: Add a proper syscall for switching endianness
We currently have a "special" syscall for switching endianness. This is
syscall number 0x1ebe, which is handled explicitly in the 64-bit syscall
exception entry.
That has a few problems, firstly the syscall number is outside of the
usual range, which confuses various tools. For example strace doesn't
recognise the syscall at all.
Secondly it's handled explicitly as a special case in the syscall
exception entry, which is complicated enough without it.
As a first step toward removing the special syscall, we need to add a
regular syscall that implements the same functionality.
The logic is simple, it simply toggles the MSR_LE bit in the userspace
MSR. This is the same as the special syscall, with the caveat that the
special syscall clobbers fewer registers.
This version clobbers r9-r12, XER, CTR, and CR0-1,5-7.
Signed-off-by: Michael Ellerman <email address hidden>
Backport notes:
Cherry-picked (with conflicts resolved) from mpe-next,
commit 529d235a0e190de
Signed-off-by: Jeremy Kerr <email address hidden>
commit 352598493e72d80
Author: Cyril Bur <email address hidden>
Date: Tue Feb 17 18:27:34 2015 +1100
powerpc/
This change adds the OPAL interface definitions to allow Linux to read,
write and erase from system flash devices. We register platform devices
for the flash devices exported by firmware.
We clash with the existing opal_flash_init function, which is really for
the FSP flash update functionality, so we rename that initcall to
opal_
A future change will add an mtd driver that uses this interface.
Changes from Joel Stanley and Jeremy Kerr.
Signed-off-by: Cyril Bur <email address hidden>
Signed-off-by: Jeremy Kerr <email address hidden>
Signed-off-by: Joel Stanley <email address hidden>
Backport notes:
Submission to linuxppc-dev: http://
commit 1acd5ddde4a50ec
Author: Cyril Bur <email address hidden>
Date: Tue Feb 17 18:27:35 2015 +1100
drivers/mtd: add powernv flash MTD abstraction driver
Powerpc powernv platforms allow access to certain system flash devices
through a firmwarwe interface. This change adds an mtd driver for these
flash devices.
Minor updates from Jeremy Kerr and Joel Stanley.
Signed-off-by: Cyril Bur <email address hidden>
Signed-off-by: Joel Stanley <email address hidden>
Signed-off-by: Jeremy Kerr <email address hidden>
Backport notes:
Upstream submission at: http://
commit 37889e2e1b7fd75
Author: Neelesh Gupta <email address hidden>
Date: Wed Feb 11 11:57:23 2015 +0530
powerpc/
Provide an unregister interface for the opal message notifiers
to be called when not needed like during driver unload/remove.
Signed-off-by: Neelesh Gupta <email address hidden>
Reviewed-by: Vasant Hegde <email address hidden>
Signed-off-by: Benjamin Herrenschmidt <email address hidden>
Backport notes:
Cherry-picked from mpe-next: b921e90260cec1e
Signed-off-by: Jeremy Kerr <email address hidden>
commit 744b9761d910fa2
Author: Joel Stanley <email address hidden>
Date: Fri Jan 30 17:13:08 2015 +1030
powerpc/
Register a notifier for a OPAL message indicating that the machine
should prepare itself for a graceful power off.
OPAL will tell us if the power off is a reboot or shutdown, but for now
we perform the same orderly_poweroff action.
Signed-off-by: Joel Stanley <email address hidden>
Signed-off-by: Michael Ellerman <email address hidden>
Backport notes:
Cherry-picked from upstream commit d3f180ea1a44aec
Signed-off-by: Jeremy Kerr <email address hidden>
commit 6f4b0f59a9a359b
Author: Joel Stanley <email address hidden>
Date: Thu Apr 2 11:18:28 2015 +0800
drivers/
orderly_
checks the return value.
A future patch will change the return type to void.
Signed-off-by: Joel Stanley <email address hidden>
Acked-by: David S. Miller <email address hidden>
Cc: Fabian Frederick <email address hidden>
Cc: Benjamin Herrenschmidt <email address hidden>
Cc: Michael Ellerman <email address hidden>
Cc: Rusty Russell <email address hidden>
Cc: Jeremy Kerr <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Backport notes:
Queued in -mm tree:
http://
Signed-off-by: Jeremy Kerr <email address hidden>
commit 53cffb522127c3c
Author: Joel Stanley <email address hidden>
Date: Thu Apr 2 11:19:22 2015 +0800
kernel/
The kernel has orderly_poweroff which allows the kernel to initiate a
graceful shutdown of userspace, by running /sbin/poweroff. This adds
orderly_reboot that will cause userspace to shut itself down by calling
/sbin/reboot.
This will be used for shutdown initiated by a system controller on
platforms that do not use ACPI.
orderly_
to gracefully shut itself down. For cases where the system may imminently
catch on fire, the existing emergency_restart() provides an immediate
reboot without involving userspace.
Signed-off-by: Joel Stanley <email address hidden>
Cc: Fabian Frederick <email address hidden>
Cc: Benjamin Herrenschmidt <email address hidden>
Cc: Michael Ellerman <email address hidden>
Cc: Rusty Russell <email address hidden>
Cc: Jeremy Kerr <email address hidden>
Cc: David S. Miller <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Backported notes:
Taken from -mm tree: http://
commit 63df16447d186fc
Author: Joel Stanley <email address hidden>
Date: Thu Apr 2 11:20:19 2015 +0800
powerpc/
Use orderly_reboot so userspace will to shut itself down via the reboot
path. This is required for graceful reboot initiated by the BMC, such as
when a user uses ipmitool to issue a 'chassis power cycle' command.
Signed-off-by: Joel Stanley <email address hidden>
Acked-by: Michael Ellerman <email address hidden>
Cc: Fabian Frederick <email address hidden>
Cc: Benjamin Herrenschmidt <email address hidden>
Cc: Rusty Russell <email address hidden>
Cc: Jeremy Kerr <email address hidden>
Cc: David S. Miller <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Backport notes:
Taken from -mm tree: http://
Signed-off-by: Jeremy Kerr <email address hidden>
commit 8589e12d09d03b0
Author: Jeremy Kerr <email address hidden>
Date: Sat Feb 7 10:02:21 2015 +0800
powerpc/
This change adds a char device to access the "PRD" (processor runtime
diagnostics) channel to OPAL firmware.
Includes contributions from Vaidyanathan Srinivasan, Neelesh Gupta &
Vishal Kulkarni.
Signed-off-by: Neelesh Gupta <email address hidden>
Signed-off-by: Jeremy Kerr <email address hidden>
Backport notes:
Submitted upstream: http://
Backport requires the OPAL_MSG_DPO definition
Signed-off-by: Jeremy Kerr <email address hidden>
Changed in linux (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Medium |
tags: | added: kernel-da-key |
tags: | added: cherry-pick |
Changed in linux (Ubuntu): | |
status: | Confirmed → Triaged |
Changed in linux (Ubuntu Utopic): | |
assignee: | nobody → Chris J Arges (arges) |
description: | updated |
description: | updated |
Changed in linux (Ubuntu Utopic): | |
importance: | Undecided → Medium |
status: | New → In Progress |
Changed in linux (Ubuntu Utopic): | |
status: | In Progress → Fix Committed |
Also: these changes add a config var: CONFIG_ MTD_POWERNV_ FLASH, for the presence of the powernv mtd driver.
Will the new "ipmi_powernv" and "powernv_flash" modules appear in the linux-image package (rather than linux-image extras)?