Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: sun7i: Add Itead Ibox support

The Itead Ibox is a multi board device based on the Allwinner A20 SoC.
It contains the A20 Itead Core module and a base board for the external
interfaces.

The core module comes with 4GB NAND and 1GB DDR RAM.

The base board to which the core board is connected provides 3 USB 2.0 Host
ports, 1 USB 2.0 OTG, 1 uSD slot, 10/100 Ethernet port, HDMI, IR receiver,
SPDIF and a 32-pin GPIO header. This header expands the features of core
board by exposing the VGA pins, audio In/Out pins, SATA, SPI, I2C, UARTS,
USB-OTG and power.

Signed-off-by: Marcus Cooper <codekipper@gmail.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>

authored by

Marcus Cooper and committed by
Maxime Ripard
d27415d4 7c1639e7

+126
+1
arch/arm/boot/dts/Makefile
··· 666 666 sun7i-a20-cubieboard2.dtb \ 667 667 sun7i-a20-cubietruck.dtb \ 668 668 sun7i-a20-hummingbird.dtb \ 669 + sun7i-a20-itead-ibox.dtb \ 669 670 sun7i-a20-i12-tvbox.dtb \ 670 671 sun7i-a20-icnova-swac.dtb \ 671 672 sun7i-a20-m3.dtb \
+125
arch/arm/boot/dts/sun7i-a20-itead-ibox.dts
··· 1 + /* 2 + * Copyright 2015 - Marcus Cooper <codekipper@gmail.com> 3 + * 4 + * This file is dual-licensed: you can use it either under the terms 5 + * of the GPL or the X11 license, at your option. Note that this dual 6 + * licensing only applies to this file, and not this project as a 7 + * whole. 8 + * 9 + * a) This file is free software; you can redistribute it and/or 10 + * modify it under the terms of the GNU General Public License as 11 + * published by the Free Software Foundation; either version 2 of the 12 + * License, or (at your option) any later version. 13 + * 14 + * This file is distributed in the hope that it will be useful, 15 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 + * GNU General Public License for more details. 18 + * 19 + * Or, alternatively, 20 + * 21 + * b) Permission is hereby granted, free of charge, to any person 22 + * obtaining a copy of this software and associated documentation 23 + * files (the "Software"), to deal in the Software without 24 + * restriction, including without limitation the rights to use, 25 + * copy, modify, merge, publish, distribute, sublicense, and/or 26 + * sell copies of the Software, and to permit persons to whom the 27 + * Software is furnished to do so, subject to the following 28 + * conditions: 29 + * 30 + * The above copyright notice and this permission notice shall be 31 + * included in all copies or substantial portions of the Software. 32 + * 33 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40 + * OTHER DEALINGS IN THE SOFTWARE. 41 + */ 42 + 43 + /dts-v1/; 44 + #include "sun7i-a20.dtsi" 45 + #include "sunxi-itead-core-common.dtsi" 46 + 47 + / { 48 + model = "Itead Ibox A20"; 49 + compatible = "itead,itead-ibox-a20", "allwinner,sun7i-a20"; 50 + 51 + leds { 52 + compatible = "gpio-leds"; 53 + pinctrl-names = "default"; 54 + pinctrl-0 = <&led_pins_itead_core>; 55 + 56 + green { 57 + label = "itead_core:green:usr"; 58 + gpios = <&pio 7 20 GPIO_ACTIVE_HIGH>; 59 + default-state = "on"; 60 + }; 61 + 62 + blue { 63 + label = "itead_core:blue:usr"; 64 + gpios = <&pio 7 21 GPIO_ACTIVE_HIGH>; 65 + default-state = "on"; 66 + }; 67 + }; 68 + }; 69 + 70 + &ahci { 71 + target-supply = <&reg_ahci_5v>; 72 + status = "okay"; 73 + }; 74 + 75 + &codec { 76 + status = "okay"; 77 + }; 78 + 79 + &gmac { 80 + pinctrl-names = "default"; 81 + pinctrl-0 = <&gmac_pins_mii_a>; 82 + phy = <&phy1>; 83 + phy-mode = "mii"; 84 + status = "okay"; 85 + 86 + phy1: ethernet-phy@1 { 87 + reg = <1>; 88 + }; 89 + }; 90 + 91 + &i2c0 { 92 + axp209: pmic@34 { 93 + interrupt-parent = <&nmi_intc>; 94 + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 95 + }; 96 + }; 97 + 98 + &ir0 { 99 + pinctrl-names = "default"; 100 + pinctrl-0 = <&ir0_rx_pins_a>; 101 + status = "okay"; 102 + }; 103 + 104 + &mmc0 { 105 + pinctrl-names = "default"; 106 + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>; 107 + vmmc-supply = <&reg_vcc3v3>; 108 + bus-width = <4>; 109 + cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ 110 + cd-inverted; 111 + status = "okay"; 112 + }; 113 + 114 + &pio { 115 + led_pins_itead_core: led_pins@0 { 116 + allwinner,pins = "PH20","PH21"; 117 + allwinner,function = "gpio_out"; 118 + allwinner,drive = <SUN4I_PINCTRL_20_MA>; 119 + allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; 120 + }; 121 + }; 122 + 123 + &reg_ahci_5v { 124 + status = "okay"; 125 + };