* [PATCH 0/3] Device tree docs updates for FSL periphs @ 2007-11-21 5:11 Kumar Gala 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala ` (2 more replies) 0 siblings, 3 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 5:11 UTC (permalink / raw) To: linuxppc-dev All, Please review these updates to booting-without-of.txt for the FSL periphs: * SATA * RapidIO * DMA They are intended to encompass patches posted before with some changes that I've made. - k ^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes 2007-11-21 5:11 [PATCH 0/3] Device tree docs updates for FSL periphs Kumar Gala @ 2007-11-21 5:12 ` Kumar Gala 2007-11-25 22:22 ` Arnd Bergmann 2007-12-03 2:37 ` Li Yang 2007-11-21 5:13 ` [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node Kumar Gala 2007-11-21 5:14 ` [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes Kumar Gala 2 siblings, 2 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 5:12 UTC (permalink / raw) To: linuxppc-dev; +Cc: Li Yang --- Documentation/powerpc/booting-without-of.txt | 23 +++++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt index e9a3cb1..eb14dd5 100644 --- a/Documentation/powerpc/booting-without-of.txt +++ b/Documentation/powerpc/booting-without-of.txt @@ -2514,6 +2514,29 @@ platforms are moved over to use the flattened-device-tree model. Requred properties: - current-speed : Baud rate of uartlite + * Freescale 8xxx/3.0 Gb/s SATA nodes + + SATA nodes are defined to describe on-chip Serial ATA controllers. + Each SATA port should have its own node. + + Required properties: + - compatible : compatible list, contains 2 entries, first is + "fsl,sata-CHIP", where CHIP is the processor + (mpc8315, mpc8379, etc.) and the second is + "fsl,sata-pq2pro" + - interrupts : <interrupt mapping for SATA IRQ> + - interrupt-parent : optional, if needed for interrupt mapping + - reg : <registers mapping> + + Example: + + sata@19000 { + compatible = "fsl,mpc8315-sata", "fsl,sata-pq2pro; + reg = <19000 1000>; + interrupts = <2d 8>; + interrupt-parent = < &ipic >; + }; + More devices will be defined as this spec matures. VII - Specifying interrupt information for devices -- 1.5.3.4 ^ permalink raw reply related [flat|nested] 22+ messages in thread
* Re: [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala @ 2007-11-25 22:22 ` Arnd Bergmann 2007-11-26 15:41 ` Kumar Gala 2007-12-03 2:37 ` Li Yang 1 sibling, 1 reply; 22+ messages in thread From: Arnd Bergmann @ 2007-11-25 22:22 UTC (permalink / raw) To: linuxppc-dev On Wednesday 21 November 2007, Kumar Gala wrote: > + =A0 =A0* Freescale 8xxx/3.0 Gb/s SATA nodes > + > + =A0 =A0SATA nodes are defined to describe on-chip Serial ATA controller= s. > + =A0 =A0Each SATA port should have its own node. > + > + =A0 =A0Required properties: > + =A0 =A0- compatible =A0 =A0 =A0 =A0: compatible list, contains 2 entrie= s, first is > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 "f= sl,sata-CHIP", where CHIP is the processor > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 (m= pc8315, mpc8379, etc.) and the second is > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 "f= sl,sata-pq2pro" > + =A0 =A0- interrupts =A0 =A0 =A0 =A0: <interrupt mapping for SATA IRQ> > + =A0 =A0- interrupt-parent =A0: optional, if needed for interrupt mapping > + =A0 =A0- reg =A0 =A0 =A0 =A0 =A0 =A0 =A0 : <registers mapping> > + Should this maybe also mandate a compatible property that is defined in a way to match the generic (p)ata_of_platform driver? Arnd <>< ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes 2007-11-25 22:22 ` Arnd Bergmann @ 2007-11-26 15:41 ` Kumar Gala 2007-11-26 16:06 ` Arnd Bergmann 0 siblings, 1 reply; 22+ messages in thread From: Kumar Gala @ 2007-11-26 15:41 UTC (permalink / raw) To: Arnd Bergmann; +Cc: linuxppc-dev On Nov 25, 2007, at 4:22 PM, Arnd Bergmann wrote: > On Wednesday 21 November 2007, Kumar Gala wrote: >> + * Freescale 8xxx/3.0 Gb/s SATA nodes >> + >> + SATA nodes are defined to describe on-chip Serial ATA >> controllers. >> + Each SATA port should have its own node. >> + >> + Required properties: >> + - compatible : compatible list, contains 2 entries, >> first is >> + "fsl,sata-CHIP", where CHIP is the processor >> + (mpc8315, mpc8379, etc.) and the second is >> + "fsl,sata-pq2pro" >> + - interrupts : <interrupt mapping for SATA IRQ> >> + - interrupt-parent : optional, if needed for interrupt mapping >> + - reg : <registers mapping> >> + > > Should this maybe also mandate a compatible property that is defined > in a way to match the generic (p)ata_of_platform driver? Is there something about the (p)ata_of_platform driver you think we can use. The SATA controller here is a unique piece of HW and requires a unique driver so I'm not sure what we get from (p)ata_of_platform. - k ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes 2007-11-26 15:41 ` Kumar Gala @ 2007-11-26 16:06 ` Arnd Bergmann 0 siblings, 0 replies; 22+ messages in thread From: Arnd Bergmann @ 2007-11-26 16:06 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev On Monday 26 November 2007, you wrote: > On Nov 25, 2007, at 4:22 PM, Arnd Bergmann wrote: > > Should this maybe also mandate a compatible property that is defined > > in a way to match the generic (p)ata_of_platform driver? >=20 > Is there something about the (p)ata_of_platform driver you think we =A0 > can use. =A0The SATA controller here is a unique piece of HW and =A0 > requires a unique driver so I'm not sure what we get from =A0 > (p)ata_of_platform. All ata controllers I've dealt with so far are to some degree compatible to the old PC style controllers. My point was that this should ideally be reflected in the device tree so that you could in theory use the ata_of_platform driver, even if you normally would prefer the new driver for performance reasons. If your controller doesn't have the legacy register set, this clearly doesn't make any sense and you should not list it as compatible with something generic. Arnd <>< ^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala 2007-11-25 22:22 ` Arnd Bergmann @ 2007-12-03 2:37 ` Li Yang 1 sibling, 0 replies; 22+ messages in thread From: Li Yang @ 2007-12-03 2:37 UTC (permalink / raw) To: Kumar Gala, linuxppc-dev > -----Original Message----- > From: Kumar Gala [mailto:galak@kernel.crashing.org]=20 > Sent: Wednesday, November 21, 2007 1:13 PM > To: linuxppc-dev@ozlabs.org > Cc: Segher Boessenkool; Li Yang > Subject: [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx=20 > SATA device tree nodes >=20 > --- > Documentation/powerpc/booting-without-of.txt | 23=20 > +++++++++++++++++++++++ > 1 files changed, 23 insertions(+), 0 deletions(-) >=20 > diff --git a/Documentation/powerpc/booting-without-of.txt=20 > b/Documentation/powerpc/booting-without-of.txt > index e9a3cb1..eb14dd5 100644 > --- a/Documentation/powerpc/booting-without-of.txt > +++ b/Documentation/powerpc/booting-without-of.txt > @@ -2514,6 +2514,29 @@ platforms are moved over to use the=20 > flattened-device-tree model. > Requred properties: > - current-speed : Baud rate of uartlite >=20 > + * Freescale 8xxx/3.0 Gb/s SATA nodes > + > + SATA nodes are defined to describe on-chip Serial ATA=20 > controllers. > + Each SATA port should have its own node. > + > + Required properties: > + - compatible : compatible list, contains 2=20 > entries, first is > + "fsl,sata-CHIP", where CHIP is the processor Should be "fsl,CHIP-sata" > + (mpc8315, mpc8379, etc.) and the second is > + "fsl,sata-pq2pro" Why not use "pq2pro-sata" to be consistent with the CHIP version? > + - interrupts : <interrupt mapping for SATA IRQ> > + - interrupt-parent : optional, if needed for interrupt mapping > + - reg : <registers mapping> > + > + Example: > + > + sata@19000 { > + compatible =3D "fsl,mpc8315-sata", "fsl,sata-pq2pro; Quotation mark missing. - Leo ^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node 2007-11-21 5:11 [PATCH 0/3] Device tree docs updates for FSL periphs Kumar Gala 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala @ 2007-11-21 5:13 ` Kumar Gala 2007-11-21 17:29 ` Scott Wood 2007-11-21 5:14 ` [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes Kumar Gala 2 siblings, 1 reply; 22+ messages in thread From: Kumar Gala @ 2007-11-21 5:13 UTC (permalink / raw) To: linuxppc-dev --- Documentation/powerpc/booting-without-of.txt | 47 ++++++++++++++++++++++++-- 1 files changed, 44 insertions(+), 3 deletions(-) diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt index eb14dd5..3d959d6 100644 --- a/Documentation/powerpc/booting-without-of.txt +++ b/Documentation/powerpc/booting-without-of.txt @@ -2521,9 +2521,9 @@ platforms are moved over to use the flattened-device-tree model. Required properties: - compatible : compatible list, contains 2 entries, first is - "fsl,sata-CHIP", where CHIP is the processor + "fsl,CHIP-sata", where CHIP is the processor (mpc8315, mpc8379, etc.) and the second is - "fsl,sata-pq2pro" + "fsl,pq2pro-sata" - interrupts : <interrupt mapping for SATA IRQ> - interrupt-parent : optional, if needed for interrupt mapping - reg : <registers mapping> @@ -2531,12 +2531,53 @@ platforms are moved over to use the flattened-device-tree model. Example: sata@19000 { - compatible = "fsl,mpc8315-sata", "fsl,sata-pq2pro; + compatible = "fsl,mpc8315-sata", "fsl,pq2pro-sata; reg = <19000 1000>; interrupts = <2d 8>; interrupt-parent = < &ipic >; }; + * Frescale Serial RapidIO bus controller + + RapidIO is a definition of a system interconnect. This node add + the support for RapidIO processor in kernel. The node name is + suggested to be 'rapidio'. + + Required properties: + + - compatible : compatible list, contains 2 entries, first is + "fsl,CHIP-rapidio", where CHIP is the processor + (mpc8572, mpc8641, etc.) and the second is + "fsl,delta-rapidio" + - interrupts : interrupts are expected in the following + order: + * Error/port write + * Outbound Doorbell + * Inbound Doorbell + * Outbound Msg Unit 1 + * Inbound Msg Unit 1 + * Outbound Msg Unit 2 + * Inbound Msg Unit 2 + - interrupt-parent : optional, if needed for interrupt mapping + - reg : <registers mapping> + - #address-cells : Should always be 2 + - #size--cells : Should always be 2 + - ranges : Details processor physical addr to RapidIO address + + Example: + + rapidio@c0000 { + compatible = "fsl,mpc8641-rapidio", "fsl,delta-rapidio; + #address-cells = <2>; + #size-cells = <2>; + reg = <c0000 20000>; + ranges = <0 0 c0000000 20000000>; + interrupt-parent = <&mpic>; + /* err_irq bell_outb_irq bell_inb_irq msg1_tx_irq msg1_rx_irq + msg2_tx_irq msg2_rx_irq */ + interrupts = <30 2 31 2 32 2 35 2 36 2 37 2 38 2>; + }; + More devices will be defined as this spec matures. VII - Specifying interrupt information for devices -- 1.5.3.4 ^ permalink raw reply related [flat|nested] 22+ messages in thread
* Re: [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node 2007-11-21 5:13 ` [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node Kumar Gala @ 2007-11-21 17:29 ` Scott Wood 2007-11-21 19:20 ` Kumar Gala 0 siblings, 1 reply; 22+ messages in thread From: Scott Wood @ 2007-11-21 17:29 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev On Tue, Nov 20, 2007 at 11:13:58PM -0600, Kumar Gala wrote: > Required properties: > - compatible : compatible list, contains 2 entries, first is > - "fsl,sata-CHIP", where CHIP is the processor > + "fsl,CHIP-sata", where CHIP is the processor > (mpc8315, mpc8379, etc.) and the second is > - "fsl,sata-pq2pro" > + "fsl,pq2pro-sata" > - interrupts : <interrupt mapping for SATA IRQ> > - interrupt-parent : optional, if needed for interrupt mapping > - reg : <registers mapping> > @@ -2531,12 +2531,53 @@ platforms are moved over to use the flattened-device-tree model. > Example: > > sata@19000 { > - compatible = "fsl,mpc8315-sata", "fsl,sata-pq2pro; > + compatible = "fsl,mpc8315-sata", "fsl,pq2pro-sata; I think you meant to merge these changes with the previous patch... -Scott ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node 2007-11-21 17:29 ` Scott Wood @ 2007-11-21 19:20 ` Kumar Gala 0 siblings, 0 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 19:20 UTC (permalink / raw) To: Scott Wood; +Cc: linuxppc-dev On Nov 21, 2007, at 11:29 AM, Scott Wood wrote: > On Tue, Nov 20, 2007 at 11:13:58PM -0600, Kumar Gala wrote: >> Required properties: >> - compatible : compatible list, contains 2 entries, >> first is >> - "fsl,sata-CHIP", where CHIP is the processor >> + "fsl,CHIP-sata", where CHIP is the processor >> (mpc8315, mpc8379, etc.) and the second is >> - "fsl,sata-pq2pro" >> + "fsl,pq2pro-sata" >> - interrupts : <interrupt mapping for SATA IRQ> >> - interrupt-parent : optional, if needed for interrupt mapping >> - reg : <registers mapping> >> @@ -2531,12 +2531,53 @@ platforms are moved over to use the >> flattened-device-tree model. >> Example: >> >> sata@19000 { >> - compatible = "fsl,mpc8315-sata", "fsl,sata-pq2pro; >> + compatible = "fsl,mpc8315-sata", "fsl,pq2pro-sata; > > I think you meant to merge these changes with the previous patch... Yeah a merge issue, I'll look into it. - k ^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 5:11 [PATCH 0/3] Device tree docs updates for FSL periphs Kumar Gala 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala 2007-11-21 5:13 ` [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node Kumar Gala @ 2007-11-21 5:14 ` Kumar Gala 2007-11-21 14:59 ` Timur Tabi 2007-11-21 17:33 ` Scott Wood 2 siblings, 2 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 5:14 UTC (permalink / raw) To: linuxppc-dev --- Documentation/powerpc/booting-without-of.txt | 113 ++++++++++++++++++++++++++ 1 files changed, 113 insertions(+), 0 deletions(-) diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt index 3d959d6..161fb0d 100644 --- a/Documentation/powerpc/booting-without-of.txt +++ b/Documentation/powerpc/booting-without-of.txt @@ -2578,6 +2578,119 @@ platforms are moved over to use the flattened-device-tree model. interrupts = <30 2 31 2 32 2 35 2 36 2 37 2 38 2>; }; + * Freescale 83xx DMA Controller + + Freescale PowerPC 83xx have on chip general purpose DMA controllers. + + Required properties: + + - compatible : compatible list, contains 2 entries, first is + "fsl,CHIP-dma", where CHIP is the processor + (mpc8349, mpc8360, etc.) and the second is + "fsl,elo-dma" + - reg : <registers mapping for DMA general status reg> + - ranges : Should be defined as specified in 1) to describe the + DMA controller channels. + - interrupts : <interrupt mapping for DMA IRQ> + - interrupt-parent : optional, if needed for interrupt mapping + + + - DMA channel nodes: + - 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" + - reg : <registers mapping for channel> + + Optional properties: + - interrupts : <interrupt mapping for DMA channel IRQ> + (on 83xx this is expected to be identical to + the interrupts property of the parent node) + - interrupt-parent : optional, if needed for interrupt mapping + + Example: + dma@21000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "fsl,mpc8349-dma", "fsl,elo-dma"; + reg = <21300 4>; + ranges = <0 21100 200>; + interrupt-parent = <&ipic>; + interrupts = <14 2>; + dma-channel@0 { + compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; + reg = <0 80>; + }; + dma-channel@80 { + compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; + reg = <80 80>; + }; + dma-channel@100 { + compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; + reg = <100 80>; + }; + dma-channel@180 { + compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel"; + reg = <180 80>; + }; + }; + + * Freescale 85xx DMA Controller + + Freescale PowerPC 85xx have on chip general purpose DMA controllers. + + Required properties: + + - compatible : compatible list, contains 2 entries, first is + "fsl,CHIP-dma", where CHIP is the processor + (mpc8540, mpc8540, etc.) and the second is + "fsl,eloplus-dma" + - reg : <registers mapping for DMA general status reg> + - ranges : Should be defined as specified in 1) to describe the + DMA controller channels. + + - DMA channel nodes: + - 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" + - reg : <registers mapping for channel> + - interrupts : <interrupt mapping for DMA channel IRQ> + - interrupt-parent : optional, if needed for interrupt mapping + + Example: + dma@21000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "fsl,mpc8540-dma", "fsl,eloplus-dma"; + reg = <21300 4>; + ranges = <0 21100 200>; + dma-channel@0 { + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel"; + reg = <0 80>; + interrupt-parent = <&mpic>; + interrupts = <14 2>; + }; + dma-channel@80 { + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel"; + reg = <80 80>; + interrupt-parent = <&mpic>; + interrupts = <15 2>; + }; + dma-channel@100 { + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel"; + reg = <100 80>; + interrupt-parent = <&mpic>; + interrupts = <16 2>; + }; + dma-channel@180 { + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel"; + reg = <180 80>; + interrupt-parent = <&mpic>; + interrupts = <17 2>; + }; + }; + More devices will be defined as this spec matures. VII - Specifying interrupt information for devices -- 1.5.3.4 ^ permalink raw reply related [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 5:14 ` [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes Kumar Gala @ 2007-11-21 14:59 ` Timur Tabi 2007-11-21 15:33 ` Kumar Gala 2007-11-21 17:33 ` Scott Wood 1 sibling, 1 reply; 22+ messages in thread From: Timur Tabi @ 2007-11-21 14:59 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev Kumar Gala wrote: > + * Freescale 83xx DMA Controller > + > + Freescale PowerPC 83xx have on chip general purpose DMA controllers. > + > + Required properties: > + > + - compatible : compatible list, contains 2 entries, first is > + "fsl,CHIP-dma", where CHIP is the processor > + (mpc8349, mpc8360, etc.) and the second is > + "fsl,elo-dma" Shouldn't we put some text somewhere that we're calling it the Elo controller even though that word isn't used in the reference manual? > + * Freescale 85xx DMA Controller And 86xx. > + > + Freescale PowerPC 85xx have on chip general purpose DMA controllers. > + > + Required properties: > + > + - compatible : compatible list, contains 2 entries, first is > + "fsl,CHIP-dma", where CHIP is the processor > + (mpc8540, mpc8540, etc.) and the second is > + "fsl,eloplus-dma" > + - reg : <registers mapping for DMA general status reg> > + - ranges : Should be defined as specified in 1) to describe the > + DMA controller channels. > + > + - DMA channel nodes: > + - 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" > + - reg : <registers mapping for channel> > + - interrupts : <interrupt mapping for DMA channel IRQ> > + - interrupt-parent : optional, if needed for interrupt mapping > + > + Example: > + dma@21000 { Shouldn't this be dma@21300? > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "fsl,mpc8540-dma", "fsl,eloplus-dma"; > + reg = <21300 4>; > + ranges = <0 21100 200>; > + dma-channel@0 { > + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma-channel"; > + reg = <0 80>; > + interrupt-parent = <&mpic>; > + interrupts = <14 2>; > + }; The DMA controller and the DMA channels need a "device-id", so that they can be identified by number. Some peripherals, like the SSI, can only use the controller and channel number. This is what I have in my 8610 DTS: dma@21300 { #address-cells = <1>; #size-cells = <1>; compatible = "fsl,mpc8610-dma", "fsl,mpc8540-dma"; --> device-id = <0>; reg = <21300 4>; /* DMA general status register */ ranges = <0 21100 200>; dma-channel@0 { compatible = "fsl,mpc8610-dma-channel", "fsl,mpc8540-dma-channel"; --> device-id = <0>; reg = <0 80>; interrupt-parent = <&mpic>; interrupts = <14 2>; }; -- Timur Tabi Linux Kernel Developer @ Freescale ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 14:59 ` Timur Tabi @ 2007-11-21 15:33 ` Kumar Gala 2007-11-21 17:35 ` Scott Wood 2007-11-22 0:48 ` Timur Tabi 0 siblings, 2 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 15:33 UTC (permalink / raw) To: Timur Tabi; +Cc: linuxppc-dev On Nov 21, 2007, at 8:59 AM, Timur Tabi wrote: > Kumar Gala wrote: > >> + * Freescale 83xx DMA Controller >> + >> + Freescale PowerPC 83xx have on chip general purpose DMA >> controllers. >> + >> + Required properties: >> + >> + - compatible : compatible list, contains 2 entries, >> first is >> + "fsl,CHIP-dma", where CHIP is the processor >> + (mpc8349, mpc8360, etc.) and the second is >> + "fsl,elo-dma" > > Shouldn't we put some text somewhere that we're calling it the Elo > controller even though that word isn't used in the reference manual? we don't really have a place to put that. its effectively documented right here. > > >> + * Freescale 85xx DMA Controller > > And 86xx. yes, true. >> + >> + Freescale PowerPC 85xx have on chip general purpose DMA >> controllers. >> + >> + Required properties: >> + >> + - compatible : compatible list, contains 2 entries, >> first is >> + "fsl,CHIP-dma", where CHIP is the processor >> + (mpc8540, mpc8540, etc.) and the second is >> + "fsl,eloplus-dma" >> + - reg : <registers mapping for DMA general >> status reg> >> + - ranges : Should be defined as specified in 1) to describe >> the >> + DMA controller channels. >> + >> + - DMA channel nodes: >> + - 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" >> + - reg : <registers mapping for channel> >> + - interrupts : <interrupt mapping for DMA channel IRQ> >> + - interrupt-parent : optional, if needed for interrupt mapping >> + >> + Example: >> + dma@21000 { > > Shouldn't this be dma@21300? its an example that has not basis is reality :) >> + #address-cells = <1>; >> + #size-cells = <1>; >> + compatible = "fsl,mpc8540-dma", "fsl,eloplus-dma"; >> + reg = <21300 4>; >> + ranges = <0 21100 200>; >> + dma-channel@0 { >> + compatible = "fsl,mpc8540-dma-channel", "fsl,eloplus-dma- >> channel"; >> + reg = <0 80>; >> + interrupt-parent = <&mpic>; >> + interrupts = <14 2>; >> + }; > > The DMA controller and the DMA channels need a "device-id", so that > they can be identified by number. Some peripherals, like the SSI, > can only use the controller and channel number. This is what I have > in my 8610 DTS: Why not use reg for this? I don't see any reason to add another "unique id" when there is already one. > dma@21300 { > #address-cells = <1>; > #size-cells = <1>; > compatible = "fsl,mpc8610-dma", "fsl,mpc8540- > dma"; > --> device-id = <0>; > reg = <21300 4>; /* DMA general status > register */ > ranges = <0 21100 200>; > > dma-channel@0 { > compatible = "fsl,mpc8610-dma-channel", > "fsl,mpc8540-dma-channel"; > --> device-id = <0>; > reg = <0 80>; > interrupt-parent = <&mpic>; > interrupts = <14 2>; > }; > - k ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 15:33 ` Kumar Gala @ 2007-11-21 17:35 ` Scott Wood 2007-11-21 19:21 ` Kumar Gala 2007-11-22 0:49 ` Timur Tabi 2007-11-22 0:48 ` Timur Tabi 1 sibling, 2 replies; 22+ messages in thread From: Scott Wood @ 2007-11-21 17:35 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev, Timur Tabi On Wed, Nov 21, 2007 at 09:33:05AM -0600, Kumar Gala wrote: > On Nov 21, 2007, at 8:59 AM, Timur Tabi wrote: > >> + Example: > >> + dma@21000 { > > > > Shouldn't this be dma@21300? > > its an example that has not basis is reality :) But it should at least be internally consistent with this: > >> + reg = <21300 4>; [snip] > > The DMA controller and the DMA channels need a "device-id", so that > > they can be identified by number. Some peripherals, like the SSI, > > can only use the controller and channel number. This is what I have > > in my 8610 DTS: > > Why not use reg for this? I don't see any reason to add another > "unique id" when there is already one. A cell-index property would be useful here for indexing into the summary status register. > > > dma@21300 { > > #address-cells = <1>; > > #size-cells = <1>; > > compatible = "fsl,mpc8610-dma", "fsl,mpc8540- > > dma"; > > --> device-id = <0>; I don't see any justification for having such a property in the parent node, though. -Scott ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 17:35 ` Scott Wood @ 2007-11-21 19:21 ` Kumar Gala 2007-11-21 19:27 ` Scott Wood 2007-11-22 0:49 ` Timur Tabi 1 sibling, 1 reply; 22+ messages in thread From: Kumar Gala @ 2007-11-21 19:21 UTC (permalink / raw) To: Scott Wood; +Cc: linuxppc-dev, Timur Tabi On Nov 21, 2007, at 11:35 AM, Scott Wood wrote: > On Wed, Nov 21, 2007 at 09:33:05AM -0600, Kumar Gala wrote: >> On Nov 21, 2007, at 8:59 AM, Timur Tabi wrote: >>>> + Example: >>>> + dma@21000 { >>> >>> Shouldn't this be dma@21300? >> >> its an example that has not basis is reality :) > > But it should at least be internally consistent with this: > >>>> + reg = <21300 4>; ahh, i see.. yes I'll fix that. > [snip] >>> The DMA controller and the DMA channels need a "device-id", so that >>> they can be identified by number. Some peripherals, like the SSI, >>> can only use the controller and channel number. This is what I have >>> in my 8610 DTS: >> >> Why not use reg for this? I don't see any reason to add another >> "unique id" when there is already one. > > A cell-index property would be useful here for indexing into the > summary > status register. Divide by 0x80. >>> dma@21300 { >>> #address-cells = <1>; >>> #size-cells = <1>; >>> compatible = "fsl,mpc8610-dma", "fsl,mpc8540- >>> dma"; >>> --> device-id = <0>; > > I don't see any justification for having such a property in the > parent node, > though. huh? - k ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 19:21 ` Kumar Gala @ 2007-11-21 19:27 ` Scott Wood 2007-11-21 22:28 ` David Gibson 0 siblings, 1 reply; 22+ messages in thread From: Scott Wood @ 2007-11-21 19:27 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev, Timur Tabi Kumar Gala wrote: > On Nov 21, 2007, at 11:35 AM, Scott Wood wrote: >> A cell-index property would be useful here for indexing into the summary >> status register. > > Divide by 0x80. :-P Using cell-index for things like this is reasonably common, and endorsed by current ePAPR drafts. >>>> dma@21300 { >>>> #address-cells = <1>; >>>> #size-cells = <1>; >>>> compatible = "fsl,mpc8610-dma", "fsl,mpc8540- >>>> dma"; >>>> --> device-id = <0>; >> >> I don't see any justification for having such a property in the parent >> node, >> though. > > huh? Timur put device-id properties in both the parent and the channel nodes. I was wondering why he did the former. -Scott ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 19:27 ` Scott Wood @ 2007-11-21 22:28 ` David Gibson 2007-11-22 0:51 ` Timur Tabi 0 siblings, 1 reply; 22+ messages in thread From: David Gibson @ 2007-11-21 22:28 UTC (permalink / raw) To: Scott Wood; +Cc: linuxppc-dev, Timur Tabi On Wed, Nov 21, 2007 at 01:27:03PM -0600, Scott Wood wrote: > Kumar Gala wrote: > > On Nov 21, 2007, at 11:35 AM, Scott Wood wrote: > >> A cell-index property would be useful here for indexing into the summary > >> status register. > > > > Divide by 0x80. > > :-P > > Using cell-index for things like this is reasonably common, and endorsed > by current ePAPR drafts. Indeed, indexing or writing into shared registers is exactly what cell-index is for. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 22:28 ` David Gibson @ 2007-11-22 0:51 ` Timur Tabi 2007-11-26 15:44 ` Scott Wood 0 siblings, 1 reply; 22+ messages in thread From: Timur Tabi @ 2007-11-22 0:51 UTC (permalink / raw) To: Scott Wood, Kumar Gala, linuxppc-dev David Gibson wrote: > Indeed, indexing or writing into shared registers is exactly what > cell-index is for. I don't care whether it's cell-index or device-id, but I need to know which DMA controller is #0 and which one is #1, and I need to know which channel is #0, which one is #1, etc. Dividing register offsets by 0x80 is not acceptable, because what if we have an elo-plus-plus that has 0x100 bytes per register, where the additional 0x20 bytes are for enhanced features? -- Timur Tabi Linux Kernel Developer @ Freescale ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-22 0:51 ` Timur Tabi @ 2007-11-26 15:44 ` Scott Wood 0 siblings, 0 replies; 22+ messages in thread From: Scott Wood @ 2007-11-26 15:44 UTC (permalink / raw) To: Timur Tabi; +Cc: linuxppc-dev Timur Tabi wrote: > David Gibson wrote: > >> Indeed, indexing or writing into shared registers is exactly what >> cell-index is for. > > I don't care whether it's cell-index or device-id, but I need to know > which DMA controller is #0 and which one is #1, and I need to know which > channel is #0, which one is #1, etc. OK, cell-index makes sense there too, then. -Scott ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 17:35 ` Scott Wood 2007-11-21 19:21 ` Kumar Gala @ 2007-11-22 0:49 ` Timur Tabi 1 sibling, 0 replies; 22+ messages in thread From: Timur Tabi @ 2007-11-22 0:49 UTC (permalink / raw) To: Scott Wood; +Cc: linuxppc-dev Scott Wood wrote: > I don't see any justification for having such a property in the parent node, > though. The SSI needs to know which DMA controller is #0 and which one is #1. I literally program the SSI and the GUTS registers with the DMA controller and channels numbers. I need to know which one is which! -- Timur Tabi Linux Kernel Developer @ Freescale ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 15:33 ` Kumar Gala 2007-11-21 17:35 ` Scott Wood @ 2007-11-22 0:48 ` Timur Tabi 1 sibling, 0 replies; 22+ messages in thread From: Timur Tabi @ 2007-11-22 0:48 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev Kumar Gala wrote: >> Shouldn't we put some text somewhere that we're calling it the Elo >> controller even though that word isn't used in the reference manual? > > we don't really have a place to put that. its effectively documented > right here. I still think we need something. Otherwise, people are going to be confused. I know I would. I'd be searching the RM for the string "ELO" and wonder why it wasn't there. >>> + Example: >>> + dma@21000 { >> >> Shouldn't this be dma@21300? > > its an example that has not basis is reality :) Eh? >> The DMA controller and the DMA channels need a "device-id", so that >> they can be identified by number. Some peripherals, like the SSI, can >> only use the controller and channel number. This is what I have in my >> 8610 DTS: > > Why not use reg for this? I don't see any reason to add another "unique > id" when there is already one. There isn't one. Why should the driver assume that reg/80 == channel #? Besides, I still can't differentiate between DMA controller 0 and DMA controller 1 that way. No, we need a device-id. -- Timur Tabi Linux Kernel Developer @ Freescale ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 5:14 ` [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes Kumar Gala 2007-11-21 14:59 ` Timur Tabi @ 2007-11-21 17:33 ` Scott Wood 2007-11-21 19:19 ` Kumar Gala 1 sibling, 1 reply; 22+ messages in thread From: Scott Wood @ 2007-11-21 17:33 UTC (permalink / raw) To: Kumar Gala; +Cc: linuxppc-dev On Tue, Nov 20, 2007 at 11:14:40PM -0600, Kumar Gala wrote: > + - compatible : compatible list, contains 2 entries, first is > + "fsl,CHIP-dma", where CHIP is the processor > + (mpc8540, mpc8540, etc.) and the second is > + "fsl,eloplus-dma" So if the DMA register set gets tweaked again, will we have eloplusplus? :-) Maybe elo2 would be better. Do we really need completely separate descriptions of the two, or can we just describe the difference in the compatible section? -Scott ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes 2007-11-21 17:33 ` Scott Wood @ 2007-11-21 19:19 ` Kumar Gala 0 siblings, 0 replies; 22+ messages in thread From: Kumar Gala @ 2007-11-21 19:19 UTC (permalink / raw) To: Scott Wood; +Cc: linuxppc-dev On Nov 21, 2007, at 11:33 AM, Scott Wood wrote: > On Tue, Nov 20, 2007 at 11:14:40PM -0600, Kumar Gala wrote: >> + - compatible : compatible list, contains 2 entries, >> first is >> + "fsl,CHIP-dma", where CHIP is the processor >> + (mpc8540, mpc8540, etc.) and the second is >> + "fsl,eloplus-dma" > > So if the DMA register set gets tweaked again, will we have > eloplusplus? :-) > Maybe elo2 would be better. Seem unlikely for the forseeable future. > Do we really need completely separate descriptions of the two, or > can we just describe the difference in the compatible section? it seemed easier to duplicate and fix. - k ^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2007-12-03 2:37 UTC | newest] Thread overview: 22+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2007-11-21 5:11 [PATCH 0/3] Device tree docs updates for FSL periphs Kumar Gala 2007-11-21 5:12 ` [PATCH 1/3] [POWERPC] Add docs for Freescale 83xx SATA device tree nodes Kumar Gala 2007-11-25 22:22 ` Arnd Bergmann 2007-11-26 15:41 ` Kumar Gala 2007-11-26 16:06 ` Arnd Bergmann 2007-12-03 2:37 ` Li Yang 2007-11-21 5:13 ` [PATCH 2/3] [POWERPC] Add docs for Freescale RapidIO device tree node Kumar Gala 2007-11-21 17:29 ` Scott Wood 2007-11-21 19:20 ` Kumar Gala 2007-11-21 5:14 ` [PATCH 3/3] [POWERPC] Add docs for Freescale DMA & DMA channel device tree nodes Kumar Gala 2007-11-21 14:59 ` Timur Tabi 2007-11-21 15:33 ` Kumar Gala 2007-11-21 17:35 ` Scott Wood 2007-11-21 19:21 ` Kumar Gala 2007-11-21 19:27 ` Scott Wood 2007-11-21 22:28 ` David Gibson 2007-11-22 0:51 ` Timur Tabi 2007-11-26 15:44 ` Scott Wood 2007-11-22 0:49 ` Timur Tabi 2007-11-22 0:48 ` Timur Tabi 2007-11-21 17:33 ` Scott Wood 2007-11-21 19:19 ` Kumar Gala
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).