Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5f2434a6 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (158 commits)
  powerpc: Fix CHRP PCI config access for indirect_pci
  powerpc/chrp: Fix detection of Python PCI host bridge on IBM CHRPs
  powerpc: Fix 32-bit SMP boot on CHRP
  powerpc: Fix link errors on 32-bit machines using legacy DMA
  powerpc/pci: Improve detection of unassigned bridge resources
  hvc_console: Fix free_irq in spinlocked section
  powerpc: Get USE_STRICT_MM_TYPECHECKS working again
  powerpc: Reflect the used arguments in machine_init() prototype
  powerpc: Fix DMA offset for non-coherent DMA
  powerpc: fix fsl_upm nand driver modular build
  powerpc/83xx: add NAND support for the MPC8360E-RDK boards
  powerpc: FPGA support for GE Fanuc SBC610
  i2c: MPC8349E-mITX Power Management and GPIO expander driver
  powerpc: reserve two DMA channels for audio in MPC8610 HPCD device tree
  powerpc: document the "fsl,ssi-dma-channel" compatible property
  powerpc: disable CHRP and PMAC support in various defconfigs
  OF: add fsl,mcu-mpc8349emitx to the exception list
  powerpc/83xx: add DS1374 RTC support for the MPC837xE-MDS boards
  powerpc: remove support for bootmem-allocated memory for the DIU driver
  powerpc: remove non-dependent load fsl_booke PTE_64BIT
  ...
parents 278429cf 6dc64725
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -18,10 +18,6 @@ mpc52xx.txt
	- Linux 2.6.x on MPC52xx family
mpc52xx-device-tree-bindings.txt
	- MPC5200 Device Tree Bindings
ppc_htab.txt
	- info about the Linux/PPC /proc/ppc_htab entry
smp.txt
	- use and state info about Linux/PPC on MP machines
sound.txt
	- info on sound support under Linux/PPC
zImage_layout.txt
+40 −0
Original line number Diff line number Diff line
* Freescale 83xx and 512x PCI bridges

Freescale 83xx and 512x SOCs include the same pci bridge core.

83xx/512x specific notes:
- reg: should contain two address length tuples
    The first is for the internal pci bridge registers
    The second is for the pci config space access registers

Example (MPC8313ERDB)
	pci0: pci@e0008500 {
		cell-index = <1>;
		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
		interrupt-map = <
				/* IDSEL 0x0E -mini PCI */
				 0x7000 0x0 0x0 0x1 &ipic 18 0x8
				 0x7000 0x0 0x0 0x2 &ipic 18 0x8
				 0x7000 0x0 0x0 0x3 &ipic 18 0x8
				 0x7000 0x0 0x0 0x4 &ipic 18 0x8

				/* IDSEL 0x0F - PCI slot */
				 0x7800 0x0 0x0 0x1 &ipic 17 0x8
				 0x7800 0x0 0x0 0x2 &ipic 18 0x8
				 0x7800 0x0 0x0 0x3 &ipic 17 0x8
				 0x7800 0x0 0x0 0x4 &ipic 18 0x8>;
		interrupt-parent = <&ipic>;
		interrupts = <66 0x8>;
		bus-range = <0x0 0x0>;
		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
			  0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
			  0x01000000 0x0 0x00000000 0xe2000000 0x0 0x00100000>;
		clock-frequency = <66666666>;
		#interrupt-cells = <1>;
		#size-cells = <2>;
		#address-cells = <3>;
		reg = <0xe0008500 0x100		/* internal registers */
		       0xe0008300 0x8>;		/* config space access registers */
		compatible = "fsl,mpc8349-pci";
		device_type = "pci";
	};
+40 −0
Original line number Diff line number Diff line
GPIO controllers on MPC8xxx SoCs

This is for the non-QE/CPM/GUTs GPIO controllers as found on
8349, 8572, 8610 and compatible.

Every GPIO controller node must have #gpio-cells property defined,
this information will be used to translate gpio-specifiers.

Required properties:
- compatible : "fsl,<CHIP>-gpio" followed by "fsl,mpc8349-gpio" for
  83xx, "fsl,mpc8572-gpio" for 85xx and "fsl,mpc8610-gpio" for 86xx.
- #gpio-cells : Should be two. The first cell is the pin number and the
  second cell is used to specify optional parameters (currently unused).
 - interrupts : Interrupt mapping for GPIO IRQ (currently unused).
 - interrupt-parent : Phandle for the interrupt controller that
   services interrupts for this device.
- gpio-controller : Marks the port as GPIO controller.

Example of gpio-controller nodes for a MPC8347 SoC:

	gpio1: gpio-controller@c00 {
		#gpio-cells = <2>;
		compatible = "fsl,mpc8347-gpio", "fsl,mpc8349-gpio";
		reg = <0xc00 0x100>;
		interrupts = <74 0x8>;
		interrupt-parent = <&ipic>;
		gpio-controller;
	};

	gpio2: gpio-controller@d00 {
		#gpio-cells = <2>;
		compatible = "fsl,mpc8347-gpio", "fsl,mpc8349-gpio";
		reg = <0xd00 0x100>;
		interrupts = <75 0x8>;
		interrupt-parent = <&ipic>;
		gpio-controller;
	};

See booting-without-of.txt for details of how to specify GPIO
information for devices.
+11 −2
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ Required properties:
        - compatible        : compatible list, contains 2 entries, first is
			 "fsl,CHIP-dma-channel", where CHIP is the processor
			 (mpc8349, mpc8350, etc.) and the second is
			 "fsl,elo-dma-channel"
			 "fsl,elo-dma-channel". However, see note below.
        - reg               : <registers mapping for channel>
        - cell-index        : dma channel index starts at 0.

@@ -82,7 +82,7 @@ Required properties:
        - compatible        : compatible list, contains 2 entries, first is
			 "fsl,CHIP-dma-channel", where CHIP is the processor
			 (mpc8540, mpc8560, etc.) and the second is
			 "fsl,eloplus-dma-channel"
			 "fsl,eloplus-dma-channel". However, see note below.
        - cell-index        : dma channel index starts at 0.
        - reg               : <registers mapping for channel>
        - interrupts        : <interrupt mapping for DMA channel IRQ>
@@ -125,3 +125,12 @@ Example:
			interrupts = <17 2>;
		};
	};

Note on DMA channel compatible properties: The compatible property must say
"fsl,elo-dma-channel" or "fsl,eloplus-dma-channel" to be used by the Elo DMA
driver (fsldma).  Any DMA channel used by fsldma cannot be used by another
DMA driver, such as the SSI sound drivers for the MPC8610.  Therefore, any DMA
channel that should be used for another driver should not use
"fsl,elo-dma-channel" or "fsl,eloplus-dma-channel".  For the SSI drivers, for
example, the compatible property should be "fsl,ssi-dma-channel".  See ssi.txt
for more information.
+23 −0
Original line number Diff line number Diff line
@@ -24,6 +24,12 @@ Required properties:
		    "rj-master" - r.j., SSI is clock master
		    "ac97-slave" - AC97 mode, SSI is clock slave
		    "ac97-master" - AC97 mode, SSI is clock master
- fsl,playback-dma: phandle to a node for the DMA channel to use for
                    playback of audio.  This is typically dictated by SOC
                    design.  See the notes below.
- fsl,capture-dma:  phandle to a node for the DMA channel to use for
                    capture (recording) of audio.  This is typically dictated
                    by SOC design.  See the notes below.

Optional properties:
- codec-handle	  : phandle to a 'codec' node that defines an audio
@@ -36,3 +42,20 @@ Child 'codec' node required properties:
Child 'codec' node optional properties:
- clock-frequency  : The frequency of the input clock, which typically
                     comes from an on-board dedicated oscillator.

Notes on fsl,playback-dma and fsl,capture-dma:

On SOCs that have an SSI, specific DMA channels are hard-wired for playback
and capture.  On the MPC8610, for example, SSI1 must use DMA channel 0 for
playback and DMA channel 1 for capture.  SSI2 must use DMA channel 2 for
playback and DMA channel 3 for capture.  The developer can choose which
DMA controller to use, but the channels themselves are hard-wired.  The
purpose of these two properties is to represent this hardware design.

The device tree nodes for the DMA channels that are referenced by
"fsl,playback-dma" and "fsl,capture-dma" must be marked as compatible with
"fsl,ssi-dma-channel".  The SOC-specific compatible string (e.g.
"fsl,mpc8610-dma-channel") can remain.  If these nodes are left as
"fsl,elo-dma-channel" or "fsl,eloplus-dma-channel", then the generic Elo DMA
drivers (fsldma) will attempt to use them, and it will conflict with the
sound drivers.
Loading