linux/Documentation
Stewart Smith c7e64b9ce0 powerpc/powernv Platform dump interface
This enables support for userspace to fetch and initiate FSP and
Platform dumps from the service processor (via firmware) through sysfs.

Based on original patch from Vasant Hegde <hegdevasant@linux.vnet.ibm.com>

Flow:
  - We register for OPAL notification events.
  - OPAL sends new dump available notification.
  - We make information on dump available via sysfs
  - Userspace requests dump contents
  - We retrieve the dump via OPAL interface
  - User copies the dump data
  - userspace sends ack for dump
  - We send ACK to OPAL.

sysfs files:
  - We add the /sys/firmware/opal/dump directory
  - echoing 1 (well, anything, but in future we may support
    different dump types) to /sys/firmware/opal/dump/initiate_dump
    will initiate a dump.
  - Each dump that we've been notified of gets a directory
    in /sys/firmware/opal/dump/ with a name of the dump type and ID (in hex,
    as this is what's used elsewhere to identify the dump).
  - Each dump has files: id, type, dump and acknowledge
    dump is binary and is the dump itself.
    echoing 'ack' to acknowledge (currently any string will do) will
    acknowledge the dump and it will soon after disappear from sysfs.

OPAL APIs:
  - opal_dump_init()
  - opal_dump_info()
  - opal_dump_read()
  - opal_dump_ack()
  - opal_dump_resend_notification()

Currently we are only ever notified for one dump at a time (until
the user explicitly acks the current dump, then we get a notification
of the next dump), but this kernel code should "just work" when OPAL
starts notifying us of all the dumps present.

Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-03-07 16:19:10 +11:00
..
ABI powerpc/powernv Platform dump interface 2014-03-07 16:19:10 +11:00
DocBook Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2014-01-31 09:31:14 -08:00
EDID
PCI Merge branch 'pci/msi' into next 2014-01-07 17:34:39 -07:00
RCU Merge branches 'doc.2013.12.03a', 'fixes.2013.12.12a', 'rcutorture.2013.12.03a' and 'sparse.2013.12.12a' into HEAD 2013-12-12 12:35:38 -08:00
accounting
acpi ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
aoe
arm ARM: SoC platform changes for 3.14 2014-01-23 18:40:49 -08:00
arm64
auxdisplay
backlight backlight: lp855x_bl: support new LP8555 device 2013-11-13 12:09:14 +09:00
blackfin
block Linux 3.13-rc6 2013-12-31 09:51:02 -07:00
blockdev zram: remove old private project comment 2014-01-30 16:56:55 -08:00
bus-devices
cdrom
cgroups Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2014-01-31 09:31:14 -08:00
connector
console
cpu-freq Documentation: cpufreq / boost: Update BOOST documentation 2014-01-17 02:00:45 +01:00
cpuidle
cris
crypto
development-process
device-mapper dm cache: add policy name to status output 2014-01-16 13:44:11 -05:00
devicetree Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-02-05 16:02:53 -08:00
driver-model Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2014-01-22 21:21:55 -08:00
dvb [media] update Michael Krufky's email address 2014-02-04 06:34:21 -02:00
early-userspace
extcon extcon: fix switch class porting guide (Documentation) 2014-01-07 11:54:28 +09:00
fault-injection
fb
filesystems Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs 2014-01-30 20:08:20 -08:00
firmware_class
fmc
frv
gpio gpiolib: return -ENOENT if no GPIO mapping exists 2013-12-12 19:33:59 +01:00
hid
hwmon Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2014-01-29 19:56:20 -08:00
i2o
ia64
ide
infiniband
input Input: fix typos in Documentation/input/gamepad.txt 2013-12-18 08:47:43 -08:00
ioctl s390/hypfs: add interface for diagnose 0x304 2014-01-24 09:40:59 +01:00
isdn
ja_JP Documentation: ja_JP: Update broken link to tpp 2013-12-10 23:09:08 -08:00
kbuild
kdump
ko_KR Documentation: HOWTO: Updates on subsystem trees, patchwork, -next (vs. -mm) in ko_KR 2014-01-08 15:32:51 -08:00
laptops Documentation: Fix size parameter for snprintf 2014-01-02 10:47:33 +01:00
leds leds: lp5523: Support LED MUX configuration on running a pattern 2014-01-27 17:28:48 -08:00
m68k
make
memory-devices
metag
mic misc: mic: Fix endianness issues. 2013-11-27 11:03:38 -08:00
mips
misc-devices Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging 2014-01-29 18:56:27 -08:00
mmc
mn10300
mtd mtd: nand: pxa3xx: Add documentation about the controller 2014-01-03 11:22:09 -08:00
namespaces
netlabel
networking net: Document promote_secondaries 2014-01-27 20:39:21 -08:00
nfc
parisc
pcmcia
power Documentation/: update FireWire debugging documentation 2014-01-12 18:54:38 +01:00
powerpc
pps
prctl
pti
ptp
rapidio
s390 qeth: bridgeport support - address notifications 2014-01-15 14:48:01 -08:00
scheduler sched/deadline: Add sched_dl documentation 2014-01-28 13:08:40 +01:00
scsi Main batch of InfiniBand/RDMA changes for 3.14: 2014-01-24 17:18:32 -08:00
security ima: update IMA-templates.txt documentation 2014-01-03 07:42:59 -05:00
serial
sh
sound ASoC: docs: Update the Overview document 2014-01-07 17:56:32 +00:00
spi spi: Correction to typos in Documentation/spi/spi-summary 2013-12-09 17:22:19 +00:00
sysctl Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-01-31 08:59:46 -08:00
target
thermal
timers
tpm
trace Documentation/trace/postprocess/trace-vmscan-postprocess.pl: fix the traceevent regex 2014-01-23 16:36:52 -08:00
usb doc: Fix typo in USB Gadget Documentation 2014-01-10 15:33:54 +01:00
vDSO
video4linux [media] sn9c102: prepare for removal by moving it to staging 2013-12-20 13:41:36 -02:00
virtual Merge branch 'kvm-ppc-next' of git://github.com/agraf/linux-2.6 into kvm-queue 2014-01-29 18:29:01 +01:00
vm mm: documentation: remove hopelessly out-of-date locking doc 2014-01-23 16:36:50 -08:00
w1
watchdog
wimax
x86 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2014-01-22 21:21:55 -08:00
xtensa xtensa: remap io area defined in device tree 2014-01-15 00:25:14 +04:00
zh_CN Documentation: zh_CN: Update broken link to tpp 2013-12-10 23:09:08 -08:00
.gitignore
00-INDEX
BUG-HUNTING
Changes remove obsolete references to powertweak 2013-11-27 20:34:32 -08:00
CodingStyle
DMA-API-HOWTO.txt
DMA-API.txt
DMA-ISA-LPC.txt
DMA-attributes.txt
HOWTO Documentation: HOWTO: Update broken links to tpp 2013-12-10 23:09:08 -08:00
IPMI.txt
IRQ-affinity.txt
IRQ-domain.txt doc: fix some typos 2013-12-02 14:48:28 +01:00
IRQ.txt
Intel-IOMMU.txt
Makefile
ManagementStyle
SAK.txt
SM501.txt
SecurityBugs
SubmitChecklist
SubmittingDrivers
SubmittingPatches
VGA-softcursor.txt
applying-patches.txt
assoc_array.txt KEYS: Fix multiple key add into associative array 2013-12-02 11:24:18 +00:00
atomic_ops.txt
bad_memory.txt
basic_profiling.txt
bcache.txt
binfmt_misc.txt
braille-console.txt
bt8xxgpio.txt
btmrvl.txt
bus-virt-phys-mapping.txt
cachetlb.txt
circular-buffers.txt documentation: Update circular buffer for load-acquire/store-release 2013-12-03 10:08:57 -08:00
clk.txt clk: Add set_rate_and_parent() op 2014-01-16 12:00:57 -08:00
coccinelle.txt
cpu-hotplug.txt Documentation/cpu-hotplug.txt: fix a typo in example code 2014-01-23 16:37:01 -08:00
cpu-load.txt
cputopology.txt
crc32.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt firewire: Enable remote DMA above 4 GB 2014-01-20 01:11:13 +01:00
dell_rbu.txt
devices.txt misc: Reserve minor for VFIO 2013-12-19 10:17:11 -07:00
digsig.txt
dma-buf-sharing.txt
dmaengine.txt
dmatest.txt dmatest: add a 'wait' parameter 2013-11-14 11:04:40 -08:00
dontdiff
dynamic-debug-howto.txt dynamic-debug-howto.txt: update since new wildcard support 2014-01-23 16:36:55 -08:00
edac.txt
efi-stub.txt doc: Fix trivial spelling mistake in efi-stub.txt 2013-12-19 15:09:14 +01:00
eisa.txt
email-clients.txt doc: fix some typos 2013-12-02 14:48:28 +01:00
flexible-arrays.txt
futex-requeue-pi.txt
gcov.txt gcov: compile specific gcov implementation based on gcc version 2013-11-13 12:09:34 +09:00
highuid.txt
hw_random.txt
hwspinlock.txt
init.txt
initrd.txt
intel_txt.txt
io-mapping.txt doc: fix some typos 2013-12-02 14:48:28 +01:00
io_ordering.txt
iostats.txt
irqflags-tracing.txt
isapnp.txt
java.txt
kernel-doc-nano-HOWTO.txt
kernel-docs.txt
kernel-parameters.txt Documentation/kernel-parameters.txt: fix memmap= language 2014-02-06 13:48:51 -08:00
kernel-per-CPU-kthreads.txt
kmemcheck.txt
kmemleak.txt
kobject.txt kobject: remove kset from sysfs immediately in kset_unregister() 2013-12-07 21:20:11 -08:00
kprobes.txt
kref.txt
ldm.txt
local_ops.txt
lockdep-design.txt
lockstat.txt
lockup-watchdogs.txt
logo.gif
logo.txt
magic-number.txt
md.txt doc: fix some typos in documentations 2013-12-02 14:45:19 +01:00
media-framework.txt
memory-barriers.txt locking/doc: Rename LOCK/UNLOCK to ACQUIRE/RELEASE 2014-01-12 10:37:13 +01:00
memory-hotplug.txt
module-signing.txt Add Documentation/module-signing.txt file 2013-12-13 15:59:11 +00:00
mono.txt
mutex-design.txt locking/doc: Update references to kernel/mutex.c 2013-11-11 12:41:33 +01:00
nommu-mmap.txt
numastat.txt
oops-tracing.txt
padata.txt
parport-lowlevel.txt
parport.txt
percpu-rw-semaphore.txt
phy.txt
pi-futex.txt
pinctrl.txt pinctrl: Fix some typos and grammar issues in the documentation 2014-01-15 13:59:50 +01:00
pnp.txt
preempt-locking.txt
printk-formats.txt vsprintf: add %pad extension for dma_addr_t use 2014-01-23 16:36:56 -08:00
pwm.txt
ramoops.txt
rbtree.txt
remoteproc.txt
rfkill.txt doc: fix some typos in documentations 2013-12-02 14:45:19 +01:00
robust-futex-ABI.txt Documentation/robust-futex-API: Count properly to 4 2013-11-30 14:08:28 +01:00
robust-futexes.txt
rpmsg.txt
rt-mutex-design.txt doc: fix some typos in documentations 2013-12-02 14:45:19 +01:00
rt-mutex.txt
rtc.txt
serial-console.txt
sgi-ioc4.txt
sgi-visws.txt
smsc_ece1099.txt
sparse.txt
spinlocks.txt
stable_api_nonsense.txt
stable_kernel_rules.txt
static-keys.txt doc: fix some typos in documentations 2013-12-02 14:45:19 +01:00
svga.txt
sysfs-rules.txt
sysrq.txt
this_cpu_ops.txt
unaligned-memory-access.txt ether_addr_equal: Optimize implementation, remove unused compare_ether_addr 2013-12-06 16:37:43 -05:00
unicode.txt
unshare.txt
vfio.txt
vgaarbiter.txt
video-output.txt
vme_api.txt VME: Rename vme_slot_get to avoid confusion with reference counting 2013-12-03 11:15:58 -08:00
volatile-considered-harmful.txt
workqueue.txt
ww-mutex-design.txt
xz.txt
zorro.txt zorro/UAPI: Disintegrate include/linux/zorro*.h 2013-11-26 11:09:08 +01:00