All of lore.kernel.org
 help / color / mirror / Atom feed
From: andrej@inversepath.com (Andrej Rosano)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: dts: imx53: add support for USB armory board
Date: Mon, 27 Apr 2015 15:15:01 +0200	[thread overview]
Message-ID: <20150427131501.GA11598@core.inversepath.com> (raw)
In-Reply-To: <CAGHP0p+hHcbqhntLdbYM5+KKa8UPmGMo+KOjsY_vpSZmZzesSg@mail.gmail.com>

On Fri, Apr 24, 2015 at 01:08:40PM -0700, Chris Kuethe wrote:
> Don't forget to patch the makefile...
> 
> Tested-by: Chris Kuethe <chris.kuethe@gmail.com>
> 
> --- arch/arm/boot/dts/Makefile.orig 2016-04-24 12:54:17.219917799 -0700
> +++ arch/arm/boot/dts/Makefile 2015-04-24 12:55:49.255690003 -0700
> @@ -244,6 +244,8 @@
>   imx53-smd.dtb \
>   imx53-tx53-x03x.dtb \
>   imx53-tx53-x13x.dtb \
> + imx53-usbarmory.dtb \
> + imx53-usbarmory-host.dtb \
>   imx53-voipac-bsb.dtb
>  dtb-$(CONFIG_SOC_IMX6Q) += \
>   imx6dl-aristainetos_4.dtb \

Sure!

Thanks,
Andrej

> 
> On Fri, Apr 24, 2015 at 6:33 AM,  <andrej@inversepath.com> wrote:
> > From: Andrej Rosano <andrej@inversepath.com>
> >
> > Add support for Inverse Path USB armory board, an open source
> > flash-drive sized computer based on Freescale i.MX53 SoC.
> >
> > http://inversepath.com/usbarmory
> >
> > As the device can work in either USB device mode or USB host mode,
> > two different device tree file are needed along with one common
> > include file.
> >
> > Signed-off-by: Andrej Rosano <andrej@inversepath.com>
> > Cc: Shawn Guo <shawn.guo@linaro.org>
> > Cc: Sascha Hauer <kernel@pengutronix.de>
> > Cc: Matthias Brugger <matthias.bgg@gmail.com>
> > Cc: Chris Kuethe <chris.kuethe@gmail.com>
> > Cc: Vagrant Cascadian <vagrant@debian.org>
> > ---
> >  .../devicetree/bindings/vendor-prefixes.txt        |    1 +
> >  arch/arm/boot/dts/imx53-usbarmory-common.dtsi      |  205 ++++++++++++++++++++
> >  arch/arm/boot/dts/imx53-usbarmory-host.dts         |   18 ++
> >  arch/arm/boot/dts/imx53-usbarmory.dts              |   18 ++
> >  4 files changed, 242 insertions(+)
> >  create mode 100644 arch/arm/boot/dts/imx53-usbarmory-common.dtsi
> >  create mode 100644 arch/arm/boot/dts/imx53-usbarmory-host.dts
> >  create mode 100644 arch/arm/boot/dts/imx53-usbarmory.dts
> >
> > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> > index 83737a3..e7a10ce 100644
> > --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> > +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> > @@ -102,6 +102,7 @@ img Imagination Technologies Ltd.
> >  innolux        Innolux Corporation
> >  intel  Intel Corporation
> >  intercontrol   Inter Control Group
> > +inversepath    Inverse Path, S.r.l.
> >  isee   ISEE 2007 S.L.
> >  isil   Intersil
> >  karo   Ka-Ro electronics GmbH
> > diff --git a/arch/arm/boot/dts/imx53-usbarmory-common.dtsi b/arch/arm/boot/dts/imx53-usbarmory-common.dtsi
> > new file mode 100644
> > index 0000000..4b4feae
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/imx53-usbarmory-common.dtsi
> > @@ -0,0 +1,205 @@
> > +/*
> > + * USB armory MkI device tree include file
> > + * http://inversepath.com/usbarmory
> > + *
> > + * Copyright (C) 2015, Inverse Path
> > + * Andrej Rosano <andrej@inversepath.com>
> > + *
> > + * Licensed under GPLv2
> > + */
> > +
> > +#include "imx53.dtsi"
> > +
> > +/ {
> > +       model = "Inverse Path USB armory";
> > +       compatible = "inversepath,imx53-usbarmory", "fsl,imx53";
> > +};
> > +
> > +/ {
> > +       chosen {
> > +               stdout-path = &uart1;
> > +       };
> > +
> > +       memory {
> > +               reg = <0x70000000 0x20000000>;
> > +       };
> > +
> > +       leds {
> > +               compatible = "gpio-leds";
> > +               pinctrl-names = "default";
> > +               pinctrl-0 = <&led_pin_gpio4_27>;
> > +
> > +               user {
> > +                       label = "LED";
> > +                       gpios = <&gpio4 27 0>;
> > +                       linux,default-trigger = "heartbeat";
> > +               };
> > +       };
> > +
> > +       soc {
> > +               aips at 60000000 {
> > +                       sahara: crypto at 63ff8000 {
> > +                               compatible = "fsl,imx53-sahara";
> > +                               reg = <0x63ff8000 0x4000>;
> > +                               interrupts = <19 20>;
> > +                               clocks = <&clks IMX5_CLK_SAHARA_IPG_GATE>,
> > +                                        <&clks IMX5_CLK_SAHARA_IPG_GATE>;
> > +                               clock-names = "ipg", "ahb";
> > +                       };
> > +               };
> > +       };
> > +};
> > +
> > +&cpu0 {
> > +       device_type = "cpu";
> > +       compatible = "arm,cortex-a8";
> > +       reg = <0x0>;
> > +       clocks = <&clks IMX5_CLK_ARM>;
> > +       clock-latency = <61036>;
> > +       voltage-tolerance = <5>;
> > +       operating-points = <
> > +               /* kHz */
> > +                166666  850000
> > +                400000  900000
> > +                800000 1050000
> > +       >;
> > +};
> > +
> > +&esdhc1 {
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_esdhc1>;
> > +       status = "okay";
> > +};
> > +
> > +&iomuxc {
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_hog>;
> > +
> > +       imx53-usbarmory {
> > +               pinctrl_hog: hoggrp {
> > +                       fsl,pins = <
> > +                               MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x80000000
> > +                               MX53_PAD_GPIO_8__GPIO1_8          0x80000000
> > +                               MX53_PAD_PATA_DATA14__GPIO2_14    0x80000000
> > +                               MX53_PAD_PATA_DATA15__GPIO2_15    0x80000000
> > +                               MX53_PAD_EIM_DA11__GPIO3_11       0x80000000
> > +                               MX53_PAD_EIM_DA12__GPIO3_12       0x80000000
> > +                               MX53_PAD_PATA_DA_0__GPIO7_6       0x80000000
> > +                               MX53_PAD_PATA_DA_2__GPIO7_8       0x80000000
> > +                               MX53_PAD_GPIO_16__GPIO7_11        0x80000000
> > +                       >;
> > +               };
> > +
> > +               led_pin_gpio4_27: led_gpio4_27 at 0 {
> > +                       fsl,pins = <
> > +                               MX53_PAD_DISP0_DAT6__GPIO4_27 0x80000000
> > +                       >;
> > +               };
> > +
> > +               pinctrl_esdhc1: esdhc1grp {
> > +                       fsl,pins = <
> > +                               MX53_PAD_SD1_DATA0__ESDHC1_DAT0         0x1d5
> > +                               MX53_PAD_SD1_DATA1__ESDHC1_DAT1         0x1d5
> > +                               MX53_PAD_SD1_DATA2__ESDHC1_DAT2         0x1d5
> > +                               MX53_PAD_SD1_DATA3__ESDHC1_DAT3         0x1d5
> > +                               MX53_PAD_SD1_CMD__ESDHC1_CMD            0x1d5
> > +                               MX53_PAD_SD1_CLK__ESDHC1_CLK            0x1d5
> > +                       >;
> > +               };
> > +
> > +               pinctrl_i2c1: i2c1grp {
> > +                       fsl,pins = <
> > +                               MX53_PAD_CSI0_DAT8__I2C1_SDA    0xc0000000
> > +                               MX53_PAD_CSI0_DAT9__I2C1_SCL    0xc0000000
> > +                       >;
> > +               };
> > +
> > +               pinctrl_uart1: uart1grp {
> > +                       fsl,pins = <
> > +                               MX53_PAD_CSI0_DAT10__UART1_TXD_MUX      0x1e4
> > +                               MX53_PAD_CSI0_DAT11__UART1_RXD_MUX      0x1e4
> > +                       >;
> > +               };
> > +       };
> > +};
> > +
> > +&uart1 {
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_uart1>;
> > +       status = "okay";
> > +};
> > +
> > +&vpu {
> > +       status = "okay";
> > +};
> > +
> > +&i2c1 {
> > +       ltc3589: pmic at 34 {
> > +               compatible = "lltc,ltc3589-2";
> > +               reg = <0x34>;
> > +
> > +               regulators {
> > +                       sw1_reg: sw1 {
> > +                               regulator-min-microvolt = <591930>;
> > +                               regulator-max-microvolt = <1224671>;
> > +                               lltc,fb-voltage-divider = <100000 158000>;
> > +                               regulator-ramp-delay = <7000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +
> > +                       sw2_reg: sw2 {
> > +                               regulator-min-microvolt = <704123>;
> > +                               regulator-max-microvolt = <1456803>;
> > +                               lltc,fb-voltage-divider = <180000 191000>;
> > +                               regulator-ramp-delay = <7000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +
> > +                       sw3_reg: sw3 {
> > +                               regulator-min-microvolt = <1341250>;
> > +                               regulator-max-microvolt = <2775000>;
> > +                               lltc,fb-voltage-divider = <270000 100000>;
> > +                               regulator-ramp-delay = <7000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +
> > +                       bb_out_reg: bb-out {
> > +                               regulator-min-microvolt = <3387341>;
> > +                               regulator-max-microvolt = <3387341>;
> > +                               lltc,fb-voltage-divider = <511000 158000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +                       ldo1_reg: ldo1 {
> > +                               regulator-min-microvolt = <1306329>;
> > +                               regulator-max-microvolt = <1306329>;
> > +                               lltc,fb-voltage-divider = <100000 158000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +
> > +                       ldo2_reg: ldo2 {
> > +                               regulator-min-microvolt = <704123>;
> > +                               regulator-max-microvolt = <1456806>;
> > +                               lltc,fb-voltage-divider = <180000 191000>;
> > +                               regulator-ramp-delay = <7000>;
> > +                               regulator-boot-on;
> > +                               regulator-always-on;
> > +                       };
> > +
> > +                       ldo3_reg: ldo3 {
> > +                               regulator-min-microvolt = <2800000>;
> > +                               regulator-max-microvolt = <2800000>;
> > +                               regulator-boot-on;
> > +                       };
> > +
> > +                       ldo4_reg: ldo4 {
> > +                               regulator-min-microvolt = <1200000>;
> > +                               regulator-max-microvolt = <3200000>;
> > +                       };
> > +               };
> > +       };
> > +};
> > diff --git a/arch/arm/boot/dts/imx53-usbarmory-host.dts b/arch/arm/boot/dts/imx53-usbarmory-host.dts
> > new file mode 100644
> > index 0000000..ea2ea45
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/imx53-usbarmory-host.dts
> > @@ -0,0 +1,18 @@
> > +/*
> > + * USB armory MkI host mode device tree file
> > + * http://inversepath.com/usbarmory
> > + *
> > + * Copyright (C) 2015, Inverse Path
> > + * Andrej Rosano <andrej@inversepath.com>
> > + *
> > + * Licensed under GPLv2
> > + */
> > +
> > +/dts-v1/;
> > +
> > +#include "imx53-usbarmory-common.dtsi"
> > +
> > +&usbotg {
> > +       dr_mode = "host";
> > +       status = "okay";
> > +};
> > diff --git a/arch/arm/boot/dts/imx53-usbarmory.dts b/arch/arm/boot/dts/imx53-usbarmory.dts
> > new file mode 100644
> > index 0000000..902a73b
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/imx53-usbarmory.dts
> > @@ -0,0 +1,18 @@
> > +/*
> > + * USB armory MkI device mode device tree file
> > + * http://inversepath.com/usbarmory
> > + *
> > + * Copyright (C) 2015, Inverse Path
> > + * Andrej Rosano <andrej@inversepath.com>
> > + *
> > + * Licensed under GPLv2
> > + */
> > +
> > +/dts-v1/;
> > +
> > +#include "imx53-usbarmory-common.dtsi"
> > +
> > +&usbotg {
> > +       dr_mode = "peripheral";
> > +       status = "okay";
> > +};
> > --
> > 1.7.10.4
> >
> 
> 
> 
> -- 
> GDB has a 'break' feature; why doesn't it have 'fix' too?

--
Andrej Rosano                                           Inverse Path Srl
<andrej@inversepath.com>                      http://www.inversepath.com

0x01939B21            5BB8 574E 68E8 D841 E18F  D5E9 CEAD E0CF 0193 9B21

  reply	other threads:[~2015-04-27 13:15 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-24 13:33 [PATCH] ARM: dts: imx53: add support for USB armory board andrej at inversepath.com
2015-04-24 20:08 ` Chris Kuethe
2015-04-27 13:15   ` Andrej Rosano [this message]
2015-04-24 20:26 ` Fabio Estevam
2015-04-27 13:26   ` Andrej Rosano
2015-04-27 14:37     ` Shawn Guo
2015-04-27 13:08 ` Shawn Guo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150427131501.GA11598@core.inversepath.com \
    --to=andrej@inversepath.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.