> -----Original Message----- > From: Wood Scott-B07421 > Sent: Thursday, September 12, 2013 5:11 AM > To: Kushwaha Prabhakar-B32579 > Cc: linuxppc-dev@lists.ozlabs.org; ga...@kernel.crashing.org; Jain > Priyanka-B32167; Aggrwal Poonam-B10812 > Subject: Re: [PATCH 1/2] powerpc/fsl-booke: Add initial T104x_QDS board > support > > On Wed, 2013-09-11 at 12:28 +0530, Prabhakar Kushwaha wrote: > > Add support for T104x board in board file t104x_qds.c, It is common > > for both T1040 and T1042 as they share same QDS board. > > > > T1040QDS board Overview > > ----------------------- > > - SERDES Connections, 8 lanes supporting: > > — PCI Express: supporting Gen 1 and Gen 2; > > — SGMII > > — QSGMII > > — SATA 2.0 > > — Aurora debug with dedicated connectors (T1040 only) > > - DDR Controller > > - Supports rates of up to 1600 MHz data-rate > > - Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank > types. > > -IFC/Local Bus > > - NAND flash: 8-bit, async, up to 2GB. > > - NOR: 8-bit or 16-bit, non-multiplexed, up to 512MB > > - GASIC: Simple (minimal) target within Qixis FPGA > > - PromJET rapid memory download support > > - Ethernet > > - Two on-board RGMII 10/100/1G ethernet ports. > > - PHY #0 remains powered up during deep-sleep (T1040 only) > > - QIXIS System Logic FPGA > > - Clocks > > - System and DDR clock (SYSCLK, “DDRCLK”) > > - SERDES clocks > > - Power Supplies > > - Video > > - DIU supports video at up to 1280x1024x32bpp > > - USB > > - Supports two USB 2.0 ports with integrated PHYs > > — Two type A ports with 5V@1.5A per port. > > — Second port can be converted to OTG mini-AB > > - SDHC > > - SDHC port connects directly to an adapter card slot, featuring: > > - Supporting SD slots for: SD, SDHC (1x, 4x, 8x) and/or MMC > > — Supporting eMMC memory devices > > - SPI > > - On-board support of 3 different devices and sizes > > - Other IO > > - Two Serial ports > > - ProfiBus port > > - Four I2C ports > > > > Add T104xQDS support in Kconfig and Makefile. Also create device tree. > > > > Signed-off-by: Priyanka Jain <priyanka.j...@freescale.com> > > Signed-off-by: Poonam Aggrwal <poonam.aggr...@freescale.com> > > Signed-off-by: Prabhakar Kushwaha <prabha...@freescale.com> > > --- > > Based upon > > git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git > > > > TODO: Add noded for ethernet and board stuff > > "board stuff"? > > Isn't "board stuff" the whole point of this patch? :-) >
:) > > arch/powerpc/boot/dts/t1040qds.dts | 201 > +++++++++++++++++++++++++++++++ > > arch/powerpc/boot/dts/t1042qds.dts | 201 > +++++++++++++++++++++++++++++++ > > arch/powerpc/platforms/85xx/Kconfig | 20 +++ > > arch/powerpc/platforms/85xx/Makefile | 1 + > > arch/powerpc/platforms/85xx/t104x_qds.c | 102 ++++++++++++++++ > > 5 files changed, 525 insertions(+) > > create mode 100644 arch/powerpc/boot/dts/t1040qds.dts > > create mode 100644 arch/powerpc/boot/dts/t1042qds.dts > > create mode 100644 arch/powerpc/platforms/85xx/t104x_qds.c > > > > diff --git a/arch/powerpc/boot/dts/t1040qds.dts > > b/arch/powerpc/boot/dts/t1040qds.dts > > new file mode 100644 > > index 0000000..cea5632 > > --- /dev/null > > +++ b/arch/powerpc/boot/dts/t1040qds.dts > > @@ -0,0 +1,201 @@ > > +/* > > + * T1040QDS Device Tree Source > > + * > > + * Copyright 2013 Freescale Semiconductor Inc. > > + * > > + * Redistribution and use in source and binary forms, with or without > > + * modification, are permitted provided that the following conditions > are met: > > + * * Redistributions of source code must retain the above > copyright > > + * notice, this list of conditions and the following disclaimer. > > + * * Redistributions in binary form must reproduce the above > copyright > > + * notice, this list of conditions and the following disclaimer in > the > > + * documentation and/or other materials provided with the > distribution. > > + * * Neither the name of Freescale Semiconductor nor the > > + * names of its contributors may be used to endorse or promote > products > > + * derived from this software without specific prior written > permission. > > + * > > + * > > + * ALTERNATIVELY, this software may be distributed under the terms of > > +the > > + * GNU General Public License ("GPL") as published by the Free > > +Software > > + * Foundation, either version 2 of that License or (at your option) > > +any > > + * later version. > > + * > > + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND > > +ANY > > + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE > > +IMPLIED > > + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE > > +ARE > > + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE > > +FOR ANY > > + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL > > +DAMAGES > > + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR > > +SERVICES; > > + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER > > +CAUSED AND > > + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > > +OR TORT > > + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE > > +USE OF THIS > > + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > > + */ > > + > > +/include/ "fsl/t104xsi-pre.dtsi" > > + > > +/ { > > + model = "fsl,T1040QDS"; > > + compatible = "fsl,T1040QDS"; > > + #address-cells = <2>; > > + #size-cells = <2>; > > + interrupt-parent = <&mpic>; > > + > > + aliases { > > + /* TODO */ > > + }; > > TODO? Did you mean this patch as an RFC? > actually, this patch is not adding in dpaa related node(fman,bman etc). I am keeping place holder for alias of Ethernet nodes. > Also, whitespace. > does whitespace is not captured in checkpatch? > > + i2c@118000 { > > + pca9547@77 { > > + compatible = "philips,pca9547"; > > + reg = <0x77>; > > + }; > > + rtc@68 { > > + compatible = "dallas,ds3232"; > > + reg = <0x68>; > > + interrupts = <0x1 0x1 0 0>; > > + }; > > + }; > > + > > + }; > > Whitespace > > > + > > + pci0: pcie@ffe240000 { > > + reg = <0xf 0xfe240000 0 0x10000>; > > + ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 > 0x10000000 > > + 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 > 0x00010000>; > > + pcie@0 { > > + ranges = <0x02000000 0 0xe0000000 > > + 0x02000000 0 0xe0000000 > > + 0 0x10000000 > > + > > + 0x01000000 0 0x00000000 > > + 0x01000000 0 0x00000000 > > + 0 0x00010000>; > > + }; > > + }; > > + > > + pci1: pcie@ffe250000 { > > + reg = <0xf 0xfe250000 0 0x10000>; > > + ranges = <0x02000000 0x0 0xe0000000 0xc 0x20000000 0x0 > 0x10000000 > > + 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 > 0x00010000>; > > + pcie@0 { > > + ranges = <0x02000000 0 0xe0000000 > > + 0x02000000 0 0xe0000000 > > + 0 0x10000000 > > + > > + 0x01000000 0 0x00000000 > > + 0x01000000 0 0x00000000 > > + 0 0x00010000>; > > + }; > > + }; > > + > > + pci2: pcie@ffe260000 { > > + reg = <0xf 0xfe260000 0 0x1000>; > > + ranges = <0x02000000 0 0xe0000000 0xc 0x40000000 0 0x10000000 > > + 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>; > > + pcie@0 { > > + ranges = <0x02000000 0 0xe0000000 > > + 0x02000000 0 0xe0000000 > > + 0 0x10000000 > > + > > + 0x01000000 0 0x00000000 > > + 0x01000000 0 0x00000000 > > + 0 0x00010000>; > > + }; > > + }; > > + > > + pci3: pcie@ffe270000 { > > + reg = <0xf 0xfe270000 0 0x10000>; > > + ranges = <0x02000000 0 0xe0000000 0xc 0x60000000 0 0x10000000 > > + 0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>; > > + pcie@0 { > > + ranges = <0x02000000 0 0xe0000000 > > + 0x02000000 0 0xe0000000 > > + 0 0x10000000 > > + > > + 0x01000000 0 0x00000000 > > + 0x01000000 0 0x00000000 > > + 0 0x00010000>; > > + }; > > + }; > > +}; > > Maybe some of this stuff could be put in a common dtsi between t1040 and > t1042? > > Ideally for t1042 you'd just take the entire t1040 tree as an include, > and add the switch > means, I just create T1042qds.dts and for T1040.dts include t1042dts + switch > > diff --git a/arch/powerpc/platforms/85xx/t104x_qds.c > > b/arch/powerpc/platforms/85xx/t104x_qds.c > > new file mode 100644 > > index 0000000..d28da14 > > --- /dev/null > > +++ b/arch/powerpc/platforms/85xx/t104x_qds.c > > @@ -0,0 +1,102 @@ > > +/* > > + * T104x QDS Setup > > + * Should apply for QDS platform of T1040 and it's personalities. > > + * viz T1040/T1042 > > + * > > + * Copyright 2013 Freescale Semiconductor Inc. > > + * > > + * This program is free software; you can redistribute it and/or > modify it > > + * under the terms of the GNU General Public License as > published by the > > + * Free Software Foundation; either version 2 of the License, or > > +(at your > > + * option) any later version. > > + */ > > + > > +#include <linux/kernel.h> > > +#include <linux/pci.h> > > +#include <linux/kdev_t.h> > > +#include <linux/delay.h> > > +#include <linux/interrupt.h> > > +#include <linux/phy.h> > > + > > +#include <asm/time.h> > > +#include <asm/machdep.h> > > +#include <asm/pci-bridge.h> > > +#include <mm/mmu_decl.h> > > +#include <asm/prom.h> > > +#include <asm/udbg.h> > > +#include <asm/mpic.h> > > + > > +#include <linux/of_platform.h> > > +#include <sysdev/fsl_soc.h> > > +#include <sysdev/fsl_pci.h> > > +#include <asm/ehv_pic.h> > > + > > +#include "corenet_ds.h" > > You don't need all of these includes. > > > +define_machine(t104x_qds) { > > + .name = "T104x QDS", > > + .probe = t104x_qds_probe, > > Should we have two machine descriptions, so that the proper chip name > shows up (e.g. in /proc/cpuinfo)? > > > +/* coreint doesn't play nice with lazy EE, use legacy mpic for now */ > > +#ifdef CONFIG_PPC64 > > + .get_irq = mpic_get_irq, > > +#else > > + .get_irq = mpic_get_coreint_irq, > > +#endif > > This isn't true any more. When submitting code that was copied from > elsewhere, please check whether there were any updates in the code that > you copied from (unless you copied from b4qds, which the update missed > -- I just sent a patch to fix that). > I will check on latest code base. Regards, Prabhakar _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev