lkml.org 
[lkml]   [2017]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 13/13] arm64: allwinner: add BananaPi-M64 support
    Date
    From: Andre Przywara <andre.przywara@arm.com>

    The Banana Pi M64 board is a typical single board computer based on the
    Allwinner A64 SoC. Aside from the usual peripherals it features eMMC
    storage, which is connected to the 8-bit capable SDHC2 controller.
    Also it has a soldered WiFi/Bluetooth chip, so we enable UART1 and SDHC1
    as those two interfaces are connected to it.

    Signed-off-by: Andre Przywara <andre.przywara@arm.com>
    Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
    ---
    arch/arm64/boot/dts/allwinner/Makefile | 1 +-
    arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 120 +++++++-
    2 files changed, 121 insertions(+), 0 deletions(-)
    create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts

    diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
    index 1e29a5ae8282..bc6f342be59f 100644
    --- a/arch/arm64/boot/dts/allwinner/Makefile
    +++ b/arch/arm64/boot/dts/allwinner/Makefile
    @@ -1,3 +1,4 @@
    +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-bananapi-m64.dtb
    dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb

    always := $(dtb-y)
    diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
    new file mode 100644
    index 000000000000..6872135d7f84
    --- /dev/null
    +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
    @@ -0,0 +1,120 @@
    +/*
    + * Copyright (c) 2016 ARM Ltd.
    + *
    + * This file is dual-licensed: you can use it either under the terms
    + * of the GPL or the X11 license, at your option. Note that this dual
    + * licensing only applies to this file, and not this project as a
    + * whole.
    + *
    + * a) This library 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.
    + *
    + * This library is distributed in the hope that it will be useful,
    + * but WITHOUT ANY WARRANTY; without even the implied warranty of
    + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    + * GNU General Public License for more details.
    + *
    + * Or, alternatively,
    + *
    + * b) Permission is hereby granted, free of charge, to any person
    + * obtaining a copy of this software and associated documentation
    + * files (the "Software"), to deal in the Software without
    + * restriction, including without limitation the rights to use,
    + * copy, modify, merge, publish, distribute, sublicense, and/or
    + * sell copies of the Software, and to permit persons to whom the
    + * Software is furnished to do so, subject to the following
    + * conditions:
    + *
    + * The above copyright notice and this permission notice shall be
    + * included in all copies or substantial portions of the Software.
    + *
    + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
    + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
    + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
    + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
    + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
    + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
    + * OTHER DEALINGS IN THE SOFTWARE.
    + */
    +
    +/dts-v1/;
    +
    +#include "sun50i-a64.dtsi"
    +
    +#include <dt-bindings/gpio/gpio.h>
    +
    +/ {
    + model = "BananaPi-M64";
    + compatible = "sinovoip,bananapi-m64", "allwinner,sun50i-a64";
    +
    + aliases {
    + serial0 = &uart0;
    + serial1 = &uart1;
    + };
    +
    + chosen {
    + stdout-path = "serial0:115200n8";
    + };
    +
    + reg_vcc3v3: vcc3v3 {
    + compatible = "regulator-fixed";
    + regulator-name = "vcc3v3";
    + regulator-min-microvolt = <3300000>;
    + regulator-max-microvolt = <3300000>;
    + };
    +};
    +
    +&i2c1 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&i2c1_pins>;
    + status = "okay";
    +};
    +
    +&i2c1_pins {
    + bias-pull-up;
    +};
    +
    +&mmc0 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&mmc0_pins>;
    + vmmc-supply = <&reg_vcc3v3>;
    + cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
    + cd-inverted;
    + disable-wp;
    + bus-width = <4>;
    + status = "okay";
    +};
    +
    +&mmc1 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&mmc1_pins>;
    + vmmc-supply = <&reg_vcc3v3>;
    + bus-width = <4>;
    + non-removable;
    + status = "okay";
    +};
    +
    +&mmc2 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&mmc2_pins>;
    + vmmc-supply = <&reg_vcc3v3>;
    + bus-width = <8>;
    + non-removable;
    + cap-mmc-hw-reset;
    + status = "okay";
    +};
    +
    +&uart0 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&uart0_pins_a>;
    + status = "okay";
    +};
    +
    +&uart1 {
    + pinctrl-names = "default";
    + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
    + status = "okay";
    +};
    --
    git-series 0.8.11
    \
     
     \ /
      Last update: 2017-01-16 18:00    [W:5.711 / U:0.328 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site