MIPS: dts: Add initial DTS for the PIC32MZDA Starter Kit
This adds basic DTS configuration for the PIC32MZDA chip and in turn the PIC32MZDA Starter Kit. Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Pawel Moll <pawel.moll@arm.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Ian Campbell <ijc+devicetree@hellion.org.uk> Cc: Kumar Gala <galak@codeaurora.org> Cc: Andrew Bresticker <abrestic@chromium.org> Cc: Paul Burton <paul.burton@imgtec.com> Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: devicetree@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/12104/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:

committed by
Ralf Baechle

orang tua
2572f00db8
melakukan
842b6b16f5
281
arch/mips/boot/dts/pic32/pic32mzda.dtsi
Normal file
281
arch/mips/boot/dts/pic32/pic32mzda.dtsi
Normal file
@@ -0,0 +1,281 @@
|
||||
/*
|
||||
* Copyright (C) 2015 Microchip Technology Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
#include "pic32mzda-clk.dtsi"
|
||||
|
||||
/ {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
interrupt-parent = <&evic>;
|
||||
|
||||
aliases {
|
||||
gpio0 = &gpio0;
|
||||
gpio1 = &gpio1;
|
||||
gpio2 = &gpio2;
|
||||
gpio3 = &gpio3;
|
||||
gpio4 = &gpio4;
|
||||
gpio5 = &gpio5;
|
||||
gpio6 = &gpio6;
|
||||
gpio7 = &gpio7;
|
||||
gpio8 = &gpio8;
|
||||
gpio9 = &gpio9;
|
||||
serial0 = &uart1;
|
||||
serial1 = &uart2;
|
||||
serial2 = &uart3;
|
||||
serial3 = &uart4;
|
||||
serial4 = &uart5;
|
||||
serial5 = &uart6;
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
cpu@0 {
|
||||
compatible = "mti,mips14KEc";
|
||||
device_type = "cpu";
|
||||
};
|
||||
};
|
||||
|
||||
soc {
|
||||
compatible = "microchip,pic32mzda-infra";
|
||||
interrupts = <0 IRQ_TYPE_EDGE_RISING>;
|
||||
};
|
||||
|
||||
evic: interrupt-controller@1f810000 {
|
||||
compatible = "microchip,pic32mzda-evic";
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
reg = <0x1f810000 0x1000>;
|
||||
microchip,external-irqs = <3 8 13 18 23>;
|
||||
};
|
||||
|
||||
pic32_pinctrl: pinctrl@1f801400{
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
compatible = "microchip,pic32mzda-pinctrl";
|
||||
reg = <0x1f801400 0x400>;
|
||||
clocks = <&PBCLK1>;
|
||||
};
|
||||
|
||||
/* PORTA */
|
||||
gpio0: gpio0@1f860000 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860000 0x100>;
|
||||
interrupts = <118 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <0>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 0 16>;
|
||||
};
|
||||
|
||||
/* PORTB */
|
||||
gpio1: gpio1@1f860100 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860100 0x100>;
|
||||
interrupts = <119 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <1>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 16 16>;
|
||||
};
|
||||
|
||||
/* PORTC */
|
||||
gpio2: gpio2@1f860200 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860200 0x100>;
|
||||
interrupts = <120 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <2>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 32 16>;
|
||||
};
|
||||
|
||||
/* PORTD */
|
||||
gpio3: gpio3@1f860300 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860300 0x100>;
|
||||
interrupts = <121 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <3>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 48 16>;
|
||||
};
|
||||
|
||||
/* PORTE */
|
||||
gpio4: gpio4@1f860400 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860400 0x100>;
|
||||
interrupts = <122 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <4>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 64 16>;
|
||||
};
|
||||
|
||||
/* PORTF */
|
||||
gpio5: gpio5@1f860500 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860500 0x100>;
|
||||
interrupts = <123 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <5>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 80 16>;
|
||||
};
|
||||
|
||||
/* PORTG */
|
||||
gpio6: gpio6@1f860600 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860600 0x100>;
|
||||
interrupts = <124 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <6>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 96 16>;
|
||||
};
|
||||
|
||||
/* PORTH */
|
||||
gpio7: gpio7@1f860700 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860700 0x100>;
|
||||
interrupts = <125 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <7>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 112 16>;
|
||||
};
|
||||
|
||||
/* PORTI does not exist */
|
||||
|
||||
/* PORTJ */
|
||||
gpio8: gpio8@1f860800 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860800 0x100>;
|
||||
interrupts = <126 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <8>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 128 16>;
|
||||
};
|
||||
|
||||
/* PORTK */
|
||||
gpio9: gpio9@1f860900 {
|
||||
compatible = "microchip,pic32mzda-gpio";
|
||||
reg = <0x1f860900 0x100>;
|
||||
interrupts = <127 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
clocks = <&PBCLK4>;
|
||||
microchip,gpio-bank = <9>;
|
||||
gpio-ranges = <&pic32_pinctrl 0 144 16>;
|
||||
};
|
||||
|
||||
sdhci: sdhci@1f8ec000 {
|
||||
compatible = "microchip,pic32mzda-sdhci";
|
||||
reg = <0x1f8ec000 0x100>;
|
||||
interrupts = <191 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&REFCLKO4>, <&PBCLK5>;
|
||||
clock-names = "base_clk", "sys_clk";
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart1: serial@1f822000 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822000 0x50>;
|
||||
interrupts = <112 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<113 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<114 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart2: serial@1f822200 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822200 0x50>;
|
||||
interrupts = <145 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<146 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<147 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart3: serial@1f822400 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822400 0x50>;
|
||||
interrupts = <157 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<158 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<159 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart4: serial@1f822600 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822600 0x50>;
|
||||
interrupts = <170 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<171 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<172 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart5: serial@1f822800 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822800 0x50>;
|
||||
interrupts = <179 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<180 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<181 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart6: serial@1f822A00 {
|
||||
compatible = "microchip,pic32mzda-uart";
|
||||
reg = <0x1f822A00 0x50>;
|
||||
interrupts = <188 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<189 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<190 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&PBCLK2>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user