Re: [PATCH 2/2] ARM: i.MX53: dts: add support for MCIMX53-START-R
On Fri, Jan 10, 2014 at 10:36:56AM +0100, Sascha Hauer wrote: > On Thu, Jan 09, 2014 at 03:40:08PM +0100, Steffen Trumtrar wrote: > > The start-r QSB has a different pmic than the older start QSB. > > Add a new dts for the QSRB and let barebox generate two images when > > LOCO is selected. > > > > Signed-off-by: Steffen Trumtrar > > --- > > arch/arm/boards/freescale-mx53-loco/lowlevel.c | 13 +++ > > arch/arm/dts/Makefile | 3 +- > > arch/arm/dts/imx53-qsrb.dts| 141 > > + > > images/Makefile.imx| 5 + > > 4 files changed, 161 insertions(+), 1 deletion(-) > > create mode 100644 arch/arm/dts/imx53-qsrb.dts > > > > diff --git a/arch/arm/boards/freescale-mx53-loco/lowlevel.c > > b/arch/arm/boards/freescale-mx53-loco/lowlevel.c > > index 7556a2e..c9e057a 100644 > > --- a/arch/arm/boards/freescale-mx53-loco/lowlevel.c > > +++ b/arch/arm/boards/freescale-mx53-loco/lowlevel.c > > @@ -15,3 +15,16 @@ ENTRY_FUNCTION(start_imx53_loco, r0, r1, r2) > > > > imx53_barebox_entry(fdt); > > } > > + > > +extern char __dtb_imx53_qsrb_start[]; > > + > > +ENTRY_FUNCTION(start_imx53_loco_r, r0, r1, r2) > > +{ > > + uint32_t fdt; > > + > > + arm_cpu_lowlevel_init(); > > + > > + fdt = (uint32_t)__dtb_imx53_qsrb_start - get_runtime_offset(); > > + > > + imx53_barebox_entry(fdt); > > +} > > For the record: This introduces a new image for the r board. Should we > want to later we could use the code from arch/ppc/mach-mpc85xx/fsl_i2c.c > to detect the board version and merge both images into one again. > > > + pmic: ripley@8 { > > + compatible = "fsl,mc34708"; > > + reg = <0x08>; > > + interrupt-parent = <&gpio5>; > > + interrupts = <23 0x8>; > > + regulators { > > + mc34708__sw1a { > > + regulator-name = "SW1"; > > + regulator-min-microvolt = <65>; > > + regulator-max-microvolt = <1437500>; > > + regulator-boot-on; > > + regulator-always-on; > > + }; > > + mc34708__sw1b { > > There should be a blank line between the end of a node and the beginning > of a new one. > Oops...you are right :-( Will fix. str -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0| Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917- | ___ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox
Re: [PATCH 2/2] ARM: i.MX53: dts: add support for MCIMX53-START-R
On Thu, Jan 09, 2014 at 03:40:08PM +0100, Steffen Trumtrar wrote: > The start-r QSB has a different pmic than the older start QSB. > Add a new dts for the QSRB and let barebox generate two images when > LOCO is selected. > > Signed-off-by: Steffen Trumtrar > --- > arch/arm/boards/freescale-mx53-loco/lowlevel.c | 13 +++ > arch/arm/dts/Makefile | 3 +- > arch/arm/dts/imx53-qsrb.dts| 141 > + > images/Makefile.imx| 5 + > 4 files changed, 161 insertions(+), 1 deletion(-) > create mode 100644 arch/arm/dts/imx53-qsrb.dts > > diff --git a/arch/arm/boards/freescale-mx53-loco/lowlevel.c > b/arch/arm/boards/freescale-mx53-loco/lowlevel.c > index 7556a2e..c9e057a 100644 > --- a/arch/arm/boards/freescale-mx53-loco/lowlevel.c > +++ b/arch/arm/boards/freescale-mx53-loco/lowlevel.c > @@ -15,3 +15,16 @@ ENTRY_FUNCTION(start_imx53_loco, r0, r1, r2) > > imx53_barebox_entry(fdt); > } > + > +extern char __dtb_imx53_qsrb_start[]; > + > +ENTRY_FUNCTION(start_imx53_loco_r, r0, r1, r2) > +{ > + uint32_t fdt; > + > + arm_cpu_lowlevel_init(); > + > + fdt = (uint32_t)__dtb_imx53_qsrb_start - get_runtime_offset(); > + > + imx53_barebox_entry(fdt); > +} For the record: This introduces a new image for the r board. Should we want to later we could use the code from arch/ppc/mach-mpc85xx/fsl_i2c.c to detect the board version and merge both images into one again. > + pmic: ripley@8 { > + compatible = "fsl,mc34708"; > + reg = <0x08>; > + interrupt-parent = <&gpio5>; > + interrupts = <23 0x8>; > + regulators { > + mc34708__sw1a { > + regulator-name = "SW1"; > + regulator-min-microvolt = <65>; > + regulator-max-microvolt = <1437500>; > + regulator-boot-on; > + regulator-always-on; > + }; > + mc34708__sw1b { There should be a blank line between the end of a node and the beginning of a new one. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0| Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917- | ___ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox
[PATCH 2/2] ARM: i.MX53: dts: add support for MCIMX53-START-R
The start-r QSB has a different pmic than the older start QSB. Add a new dts for the QSRB and let barebox generate two images when LOCO is selected. Signed-off-by: Steffen Trumtrar --- arch/arm/boards/freescale-mx53-loco/lowlevel.c | 13 +++ arch/arm/dts/Makefile | 3 +- arch/arm/dts/imx53-qsrb.dts| 141 + images/Makefile.imx| 5 + 4 files changed, 161 insertions(+), 1 deletion(-) create mode 100644 arch/arm/dts/imx53-qsrb.dts diff --git a/arch/arm/boards/freescale-mx53-loco/lowlevel.c b/arch/arm/boards/freescale-mx53-loco/lowlevel.c index 7556a2e..c9e057a 100644 --- a/arch/arm/boards/freescale-mx53-loco/lowlevel.c +++ b/arch/arm/boards/freescale-mx53-loco/lowlevel.c @@ -15,3 +15,16 @@ ENTRY_FUNCTION(start_imx53_loco, r0, r1, r2) imx53_barebox_entry(fdt); } + +extern char __dtb_imx53_qsrb_start[]; + +ENTRY_FUNCTION(start_imx53_loco_r, r0, r1, r2) +{ + uint32_t fdt; + + arm_cpu_lowlevel_init(); + + fdt = (uint32_t)__dtb_imx53_qsrb_start - get_runtime_offset(); + + imx53_barebox_entry(fdt); +} diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index bc314e9..ec46c4f 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -5,6 +5,7 @@ dtb-$(CONFIG_ARCH_AM33XX) += \ dtb-$(CONFIG_ARCH_IMX51) += imx51-babbage.dtb \ imx51-genesi-efika-sb.dtb dtb-$(CONFIG_ARCH_IMX53) += imx53-qsb.dtb \ + imx53-qsrb.dtb \ imx53-voipac-bsb.dtb dtb-$(CONFIG_ARCH_IMX6) += imx6q-gk802.dtb \ imx6dl-dfi-fs700-m60-6s.dtb \ @@ -29,7 +30,7 @@ obj-$(CONFIG_BUILTIN_DTB) += $(BUILTIN_DTB).dtb.o pbl-$(CONFIG_MACH_BEAGLEBONE) += am335x-bone.dtb.o am335x-boneblack.dtb.o pbl-$(CONFIG_MACH_EFIKA_MX_SMARTBOOK) += imx51-genesi-efika-sb.dtb.o pbl-$(CONFIG_MACH_FREESCALE_MX51_PDK) += imx51-babbage.dtb.o -pbl-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += imx53-qsb.dtb.o +pbl-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += imx53-qsb.dtb.o imx53-qsrb.dtb.o pbl-$(CONFIG_MACH_FREESCALE_MX53_VMX53) += imx53-voipac-bsb.dtb.o pbl-$(CONFIG_MACH_DFI_FS700_M60) += imx6q-dfi-fs700-m60-6q.dtb.o imx6dl-dfi-fs700-m60-6s.dtb.o pbl-$(CONFIG_MACH_PCM051) += am335x-phytec-phycore.dtb.o diff --git a/arch/arm/dts/imx53-qsrb.dts b/arch/arm/dts/imx53-qsrb.dts new file mode 100644 index 000..e9a9bc6 --- /dev/null +++ b/arch/arm/dts/imx53-qsrb.dts @@ -0,0 +1,141 @@ +/* + * Copyright 2011 Freescale Semiconductor, Inc. + * Copyright 2011 Linaro Ltd. + * + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +#include "imx53-qsb-common.dtsi" + +/ { + model = "Freescale i.MX53 Quick Start-R Board"; + compatible = "fsl,imx53-qsb", "fsl,imx53"; +}; + +&iomuxc { + i2c1 { + /* open drain */ + pinctrl_i2c1_qsrb: i2c1grp-1 { + fsl,pins = < + MX53_PAD_CSI0_DAT8__I2C1_SDA 0x41ec + MX53_PAD_CSI0_DAT9__I2C1_SCL 0x41ec + >; + }; + }; +}; + +&i2c1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c1_qsrb>; + + pmic: ripley@8 { + compatible = "fsl,mc34708"; + reg = <0x08>; + interrupt-parent = <&gpio5>; + interrupts = <23 0x8>; + regulators { + mc34708__sw1a { + regulator-name = "SW1"; + regulator-min-microvolt = <65>; + regulator-max-microvolt = <1437500>; + regulator-boot-on; + regulator-always-on; + }; + mc34708__sw1b { + regulator-name = "SW1B"; + regulator-min-microvolt = <65>; + regulator-max-microvolt = <1437500>; + regulator-boot-on; + regulator-always-on; + }; + mc34708__sw2 { + regulator-name = "SW2"; + regulator-min-microvolt = <65>; + regulator-max-microvolt = <1437500>; + regulator-boot-on; + regulator-always-on; + }; + mc34708__sw3 { + regulator-name = "SW3"; + regulator-min-microvolt = <65>; + regulator-max-microvolt = <1425000>; + regulator-boot-on; +