aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/powerpc
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/powerpc')
-rw-r--r--Documentation/powerpc/booting-without-of.txt77
-rw-r--r--Documentation/powerpc/eeh-pci-error-recovery.txt15
-rw-r--r--Documentation/powerpc/hvcs.txt4
3 files changed, 87 insertions, 9 deletions
diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt
index d02c64953dcd..217e51768b87 100644
--- a/Documentation/powerpc/booting-without-of.txt
+++ b/Documentation/powerpc/booting-without-of.txt
@@ -719,6 +719,11 @@ address which can extend beyond that limit.
719 - model : this is your board name/model 719 - model : this is your board name/model
720 - #address-cells : address representation for "root" devices 720 - #address-cells : address representation for "root" devices
721 - #size-cells: the size representation for "root" devices 721 - #size-cells: the size representation for "root" devices
722 - device_type : This property shouldn't be necessary. However, if
723 you decide to create a device_type for your root node, make sure it
724 is _not_ "chrp" unless your platform is a pSeries or PAPR compliant
725 one for 64-bit, or a CHRP-type machine for 32-bit as this will
726 matched by the kernel this way.
722 727
723 Additionally, some recommended properties are: 728 Additionally, some recommended properties are:
724 729
@@ -1365,6 +1370,78 @@ platforms are moved over to use the flattened-device-tree model.
1365 }; 1370 };
1366 1371
1367 1372
1373 g) Freescale SOC SEC Security Engines
1374
1375 Required properties:
1376
1377 - device_type : Should be "crypto"
1378 - model : Model of the device. Should be "SEC1" or "SEC2"
1379 - compatible : Should be "talitos"
1380 - reg : Offset and length of the register set for the device
1381 - interrupts : <a b> where a is the interrupt number and b is a
1382 field that represents an encoding of the sense and level
1383 information for the interrupt. This should be encoded based on
1384 the information in section 2) depending on the type of interrupt
1385 controller you have.
1386 - interrupt-parent : the phandle for the interrupt controller that
1387 services interrupts for this device.
1388 - num-channels : An integer representing the number of channels
1389 available.
1390 - channel-fifo-len : An integer representing the number of
1391 descriptor pointers each channel fetch fifo can hold.
1392 - exec-units-mask : The bitmask representing what execution units
1393 (EUs) are available. It's a single 32 bit cell. EU information
1394 should be encoded following the SEC's Descriptor Header Dword
1395 EU_SEL0 field documentation, i.e. as follows:
1396
1397 bit 0 = reserved - should be 0
1398 bit 1 = set if SEC has the ARC4 EU (AFEU)
1399 bit 2 = set if SEC has the DES/3DES EU (DEU)
1400 bit 3 = set if SEC has the message digest EU (MDEU)
1401 bit 4 = set if SEC has the random number generator EU (RNG)
1402 bit 5 = set if SEC has the public key EU (PKEU)
1403 bit 6 = set if SEC has the AES EU (AESU)
1404 bit 7 = set if SEC has the Kasumi EU (KEU)
1405
1406 bits 8 through 31 are reserved for future SEC EUs.
1407
1408 - descriptor-types-mask : The bitmask representing what descriptors
1409 are available. It's a single 32 bit cell. Descriptor type
1410 information should be encoded following the SEC's Descriptor
1411 Header Dword DESC_TYPE field documentation, i.e. as follows:
1412
1413 bit 0 = set if SEC supports the aesu_ctr_nonsnoop desc. type
1414 bit 1 = set if SEC supports the ipsec_esp descriptor type
1415 bit 2 = set if SEC supports the common_nonsnoop desc. type
1416 bit 3 = set if SEC supports the 802.11i AES ccmp desc. type
1417 bit 4 = set if SEC supports the hmac_snoop_no_afeu desc. type
1418 bit 5 = set if SEC supports the srtp descriptor type
1419 bit 6 = set if SEC supports the non_hmac_snoop_no_afeu desc.type
1420 bit 7 = set if SEC supports the pkeu_assemble descriptor type
1421 bit 8 = set if SEC supports the aesu_key_expand_output desc.type
1422 bit 9 = set if SEC supports the pkeu_ptmul descriptor type
1423 bit 10 = set if SEC supports the common_nonsnoop_afeu desc. type
1424 bit 11 = set if SEC supports the pkeu_ptadd_dbl descriptor type
1425
1426 ..and so on and so forth.
1427
1428 Example:
1429
1430 /* MPC8548E */
1431 crypto@30000 {
1432 device_type = "crypto";
1433 model = "SEC2";
1434 compatible = "talitos";
1435 reg = <30000 10000>;
1436 interrupts = <1d 3>;
1437 interrupt-parent = <40000>;
1438 num-channels = <4>;
1439 channel-fifo-len = <24>;
1440 exec-units-mask = <000000fe>;
1441 descriptor-types-mask = <073f1127>;
1442 };
1443
1444
1368 More devices will be defined as this spec matures. 1445 More devices will be defined as this spec matures.
1369 1446
1370 1447
diff --git a/Documentation/powerpc/eeh-pci-error-recovery.txt b/Documentation/powerpc/eeh-pci-error-recovery.txt
index 67a11a36270c..3764dd4b12cb 100644
--- a/Documentation/powerpc/eeh-pci-error-recovery.txt
+++ b/Documentation/powerpc/eeh-pci-error-recovery.txt
@@ -121,7 +121,7 @@ accomplished.
121 121
122EEH must be enabled in the PHB's very early during the boot process, 122EEH must be enabled in the PHB's very early during the boot process,
123and if a PCI slot is hot-plugged. The former is performed by 123and if a PCI slot is hot-plugged. The former is performed by
124eeh_init() in arch/ppc64/kernel/eeh.c, and the later by 124eeh_init() in arch/powerpc/platforms/pseries/eeh.c, and the later by
125drivers/pci/hotplug/pSeries_pci.c calling in to the eeh.c code. 125drivers/pci/hotplug/pSeries_pci.c calling in to the eeh.c code.
126EEH must be enabled before a PCI scan of the device can proceed. 126EEH must be enabled before a PCI scan of the device can proceed.
127Current Power5 hardware will not work unless EEH is enabled; 127Current Power5 hardware will not work unless EEH is enabled;
@@ -133,7 +133,7 @@ error. Given an arbitrary address, the routine
133pci_get_device_by_addr() will find the pci device associated 133pci_get_device_by_addr() will find the pci device associated
134with that address (if any). 134with that address (if any).
135 135
136The default include/asm-ppc64/io.h macros readb(), inb(), insb(), 136The default include/asm-powerpc/io.h macros readb(), inb(), insb(),
137etc. include a check to see if the i/o read returned all-0xff's. 137etc. include a check to see if the i/o read returned all-0xff's.
138If so, these make a call to eeh_dn_check_failure(), which in turn 138If so, these make a call to eeh_dn_check_failure(), which in turn
139asks the firmware if the all-ff's value is the sign of a true EEH 139asks the firmware if the all-ff's value is the sign of a true EEH
@@ -143,11 +143,12 @@ seen in /proc/ppc64/eeh (subject to change). Normally, almost
143all of these occur during boot, when the PCI bus is scanned, where 143all of these occur during boot, when the PCI bus is scanned, where
144a large number of 0xff reads are part of the bus scan procedure. 144a large number of 0xff reads are part of the bus scan procedure.
145 145
146If a frozen slot is detected, code in arch/ppc64/kernel/eeh.c will 146If a frozen slot is detected, code in
147print a stack trace to syslog (/var/log/messages). This stack trace 147arch/powerpc/platforms/pseries/eeh.c will print a stack trace to
148has proven to be very useful to device-driver authors for finding 148syslog (/var/log/messages). This stack trace has proven to be very
149out at what point the EEH error was detected, as the error itself 149useful to device-driver authors for finding out at what point the EEH
150usually occurs slightly beforehand. 150error was detected, as the error itself usually occurs slightly
151beforehand.
151 152
152Next, it uses the Linux kernel notifier chain/work queue mechanism to 153Next, it uses the Linux kernel notifier chain/work queue mechanism to
153allow any interested parties to find out about the failure. Device 154allow any interested parties to find out about the failure. Device
diff --git a/Documentation/powerpc/hvcs.txt b/Documentation/powerpc/hvcs.txt
index dca75cbda6f8..1e38166f4e54 100644
--- a/Documentation/powerpc/hvcs.txt
+++ b/Documentation/powerpc/hvcs.txt
@@ -558,9 +558,9 @@ partitions.
558 558
559The proper channel for reporting bugs is either through the Linux OS 559The proper channel for reporting bugs is either through the Linux OS
560distribution company that provided your OS or by posting issues to the 560distribution company that provided your OS or by posting issues to the
561ppc64 development mailing list at: 561PowerPC development mailing list at:
562 562
563linuxppc64-dev@lists.linuxppc.org 563linuxppc-dev@ozlabs.org
564 564
565This request is to provide a documented and searchable public exchange 565This request is to provide a documented and searchable public exchange
566of the problems and solutions surrounding this driver for the benefit of 566of the problems and solutions surrounding this driver for the benefit of