Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b51c5cb5 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'keystone_dts_for_4.15' of...

Merge tag 'keystone_dts_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/dt

Pull "ARM: Keystone DTS update for 4.15" from Santosh Shilimkar:

- McASP support for K2G EVM
- I2C support for K2G EVM
- USB support for K2G EVM
- SPI & SPI NOR flash support for K2G EVM
- ECAP PWM support for K2G EVM

* tag 'keystone_dts_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: dts: keystone-k2g-evm: add bindings for SPI NOR flash
  ARM: dts: keystone-k2g: Add SPI nodes
  ARM: dts: keystone-k2g-evm: Enable PWM ECAP0
  ARM: dts: keystone-k2g: Add ECAP PWM DT nodes
  ARM: dts: k2g-evm: Enable USB 0 and 1
  ARM: dts: k2g: Add USB instances
  ARM: dts: keystone-k2g-evm: Add I2C EEPROM DT entry
  ARM: dts: keystone-k2g: Add I2C nodes
  ARM: dts: keystone-k2g: Add McASP nodes
parents 877b203e 1efed407
Loading
Loading
Loading
Loading
+93 −0
Original line number Diff line number Diff line
@@ -45,6 +45,22 @@
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
	};

	ecap0_pins: ecap0_pins {
		pinctrl-single,pins = <
			K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4)	/* pr1_mdio_data.ecap0_in_apwm0_out */
		>;
	};

	spi1_pins: pinmux_spi1_pins {
		pinctrl-single,pins = <
			K2G_CORE_IOPAD(0x11a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_scs0.spi1_scs0 */
			K2G_CORE_IOPAD(0x11ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_clk.spi1_clk */
			K2G_CORE_IOPAD(0x11b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_miso.spi1_miso */
			K2G_CORE_IOPAD(0x11b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_mosi.spi1_mosi */
		>;
	};

};

&k2g_pinctrl {
@@ -81,6 +97,14 @@
			K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_cmd.mmc1_cmd */
		>;
	};

	i2c0_pins: pinmux_i2c0_pins {
		pinctrl-single,pins = <
			K2G_CORE_IOPAD(0x137c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* i2c0_scl.i2c0_scl */
			K2G_CORE_IOPAD(0x1380) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
		>;
	};

};

&uart0 {
@@ -112,3 +136,72 @@
	memory-region = <&dsp_common_memory>;
	status = "okay";
};

&i2c0 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c0_pins>;
	status = "okay";

	eeprom@50 {
		compatible = "atmel,24c1024";
		reg = <0x50>;
	};
};

&keystone_usb0 {
	status = "okay";
};

&usb0_phy {
	status = "okay";
};

&usb0 {
	dr_mode = "host";
	status = "okay";
};

&keystone_usb1 {
	status = "okay";
};

&usb1_phy {
	status = "okay";
};

&usb1 {
	dr_mode = "peripheral";
	status = "okay";
};

&ecap0 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&ecap0_pins>;
};

&spi1 {
	pinctrl-names = "default";
	pinctrl-0 = <&spi1_pins>;
	status = "okay";

	spi_nor: flash@0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "jedec,spi-nor";
		spi-max-frequency = <5000000>;
		m25p,fast-read;
		reg = <0>;

		partition@0 {
			label = "u-boot-spl";
			reg = <0x0 0x100000>;
			read-only;
		};

		partition@1 {
			label = "misc";
			reg = <0x100000 0xf00000>;
		};
	};
};
+208 −0
Original line number Diff line number Diff line
@@ -28,6 +28,9 @@

	aliases {
		serial0 = &uart0;
		i2c0 = &i2c0;
		i2c1 = &i2c1;
		i2c2 = &i2c2;
		rproc0 = &dsp0;
	};

@@ -133,6 +136,39 @@
			clocks = <&k2g_clks 0x0009 1>;
		};

		i2c0: i2c@2530000 {
			compatible = "ti,keystone-i2c";
			reg = <0x02530000 0x400>;
			clocks = <&k2g_clks 0x003a 0>;
			power-domains = <&k2g_pds 0x003a>;
			interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		i2c1: i2c@2530400 {
			compatible = "ti,keystone-i2c";
			reg = <0x02530400 0x400>;
			clocks = <&k2g_clks 0x003b 0>;
			power-domains = <&k2g_pds 0x003b>;
			interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		i2c2: i2c@2530800 {
			compatible = "ti,keystone-i2c";
			reg = <0x02530800 0x400>;
			clocks = <&k2g_clks 0x003c 0>;
			power-domains = <&k2g_pds 0x003c>;
			interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		kirq0: keystone_irq@26202a0 {
			compatible = "ti,keystone-irq";
			interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>;
@@ -343,5 +379,177 @@
			clock-names = "fck", "mmchsdb_fck";
			status = "disabled";
		};

		mcasp0: mcasp@2340000 {
			compatible = "ti,am33xx-mcasp-audio";
			reg = <0x02340000 0x2000>,
			      <0x21804000 0x1000>;
			reg-names = "mpu","dat";
			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "tx", "rx";
			dmas = <&edma0 24 1>, <&edma0 25 1>;
			dma-names = "tx", "rx";
			power-domains = <&k2g_pds 0x4>;
			clocks = <&k2g_clks 0x4 0>;
			clock-names = "fck";
			status = "disabled";
		};

		mcasp1: mcasp@2342000 {
			compatible = "ti,am33xx-mcasp-audio";
			reg = <0x02342000 0x2000>,
			      <0x21804400 0x1000>;
			reg-names = "mpu","dat";
			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "tx", "rx";
			dmas = <&edma1 48 1>, <&edma1 49 1>;
			dma-names = "tx", "rx";
			power-domains = <&k2g_pds 0x5>;
			clocks = <&k2g_clks 0x5 0>;
			clock-names = "fck";
			status = "disabled";
		};

		mcasp2: mcasp@2344000 {
			compatible = "ti,am33xx-mcasp-audio";
			reg = <0x02344000 0x2000>,
			      <0x21804800 0x1000>;
			reg-names = "mpu","dat";
			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "tx", "rx";
			dmas = <&edma1 50 1>, <&edma1 51 1>;
			dma-names = "tx", "rx";
			power-domains = <&k2g_pds 0x6>;
			clocks = <&k2g_clks 0x6 0>;
			clock-names = "fck";
			status = "disabled";
		};

		usb0_phy: usb-phy@0 {
			compatible = "usb-nop-xceiv";
			status = "disabled";
		};

		keystone_usb0: keystone-dwc3@2680000 {
			compatible = "ti,keystone-dwc3";
			#address-cells = <1>;
			#size-cells = <1>;
			reg = <0x2680000 0x10000>;
			interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
			ranges;
			dma-coherent;
			dma-ranges;
			status = "disabled";
			power-domains = <&k2g_pds 0x0016>;

			usb0: usb@2690000 {
				compatible = "snps,dwc3";
				reg = <0x2690000 0x10000>;
				interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
				maximum-speed = "high-speed";
				dr_mode = "otg";
				usb-phy = <&usb0_phy>;
				status = "disabled";
			};
		};

		usb1_phy: usb-phy@1 {
			compatible = "usb-nop-xceiv";
			status = "disabled";
		};

		keystone_usb1: keystone-dwc3@2580000 {
			compatible = "ti,keystone-dwc3";
			#address-cells = <1>;
			#size-cells = <1>;
			reg = <0x2580000 0x10000>;
			interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
			ranges;
			dma-coherent;
			dma-ranges;
			status = "disabled";
			power-domains = <&k2g_pds 0x0017>;

			usb1: usb@2590000 {
				compatible = "snps,dwc3";
				reg = <0x2590000 0x10000>;
				interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
				maximum-speed = "high-speed";
				dr_mode = "otg";
				usb-phy = <&usb1_phy>;
				status = "disabled";
			};
		};

		ecap0: pwm@21d1800 {
			compatible = "ti,k2g-ecap", "ti,am3352-ecap";
			#pwm-cells = <3>;
			reg = <0x021d1800 0x60>;
			power-domains = <&k2g_pds 0x38>;
			clocks = <&k2g_clks 0x38 0>;
			clock-names = "fck";
			status = "disabled";
		};

		ecap1: pwm@21d1c00 {
			compatible = "ti,k2g-ecap", "ti,am3352-ecap";
			#pwm-cells = <3>;
			reg = <0x021d1c00 0x60>;
			power-domains = <&k2g_pds 0x39>;
			clocks = <&k2g_clks 0x39 0x0>;
			clock-names = "fck";
			status = "disabled";
		};

		spi0: spi@21805400 {
			compatible = "ti,keystone-spi";
			reg = <0x21805400 0x200>;
			num-cs = <4>;
			ti,davinci-spi-intr-line = <0>;
			interrupts = <GIC_SPI 64 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			power-domains = <&k2g_pds 0x0010>;
			clocks = <&k2g_clks 0x0010 0>;
		};

		spi1: spi@21805800 {
			compatible = "ti,keystone-spi";
			reg = <0x21805800 0x200>;
			num-cs = <4>;
			ti,davinci-spi-intr-line = <0>;
			interrupts = <GIC_SPI 66 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			power-domains = <&k2g_pds 0x0011>;
			clocks = <&k2g_clks 0x0011 0>;
		};

		spi2: spi@21805c00 {
			compatible = "ti,keystone-spi";
			reg = <0x21805C00 0x200>;
			num-cs = <4>;
			ti,davinci-spi-intr-line = <0>;
			interrupts = <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			power-domains = <&k2g_pds 0x0012>;
			clocks = <&k2g_clks 0x0012 0>;
		};

		spi3: spi@21806000 {
			compatible = "ti,keystone-spi";
			reg = <0x21806000 0x200>;
			num-cs = <4>;
			ti,davinci-spi-intr-line = <0>;
			interrupts = <GIC_SPI 70 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			power-domains = <&k2g_pds 0x0013>;
			clocks = <&k2g_clks 0x0013 0>;
		};
	};
};