| // SPDX-License-Identifier: GPL-2.0 | 
 | /* | 
 |  * Common support for CompuLab CM-T3x30 CoMs | 
 |  */ | 
 |  | 
 | #include "omap3-cm-t3x.dtsi" | 
 |  | 
 | / { | 
 | 	cpus { | 
 | 		cpu@0 { | 
 | 			cpu0-supply = <&vcc>; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	sound { | 
 | 		compatible = "ti,omap-twl4030"; | 
 | 		ti,model = "cm-t35"; | 
 |  | 
 | 		ti,mcbsp = <&mcbsp2>; | 
 | 	}; | 
 | }; | 
 |  | 
 | &omap3_pmx_core { | 
 |  | 
 | 	smsc1_pins: pinmux_smsc1_pins { | 
 | 		pinctrl-single,pins = < | 
 | 			OMAP3_CORE1_IOPAD(0x20b8, PIN_OUTPUT | MUX_MODE0)	/* gpmc_ncs5.gpmc_ncs5 */ | 
 | 			OMAP3_CORE1_IOPAD(0x219a, PIN_INPUT_PULLUP | MUX_MODE4)	/* uart3_cts_rctx.gpio_163 */ | 
 | 		>; | 
 | 	}; | 
 |  | 
 |  	hsusb0_pins: pinmux_hsusb0_pins { | 
 | 		pinctrl-single,pins = < | 
 | 			OMAP3_CORE1_IOPAD(0x21a2, PIN_OUTPUT | MUX_MODE0)		/* hsusb0_clk.hsusb0_clk */ | 
 | 			OMAP3_CORE1_IOPAD(0x21a4, PIN_OUTPUT | MUX_MODE0)		/* hsusb0_stp.hsusb0_stp */ | 
 | 			OMAP3_CORE1_IOPAD(0x21a6, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_dir.hsusb0_dir */ | 
 | 			OMAP3_CORE1_IOPAD(0x21a8, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_nxt.hsusb0_nxt */ | 
 | 			OMAP3_CORE1_IOPAD(0x21aa, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data0.hsusb2_data0 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21ac, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data1.hsusb0_data1 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21ae, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data2.hsusb0_data2 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21b0, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data7.hsusb0_data3 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21b2, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data7.hsusb0_data4 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21b4, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data7.hsusb0_data5 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21b6, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data7.hsusb0_data6 */ | 
 | 			OMAP3_CORE1_IOPAD(0x21b8, PIN_INPUT_PULLDOWN | MUX_MODE0)	/* hsusb0_data7.hsusb0_data7 */ | 
 | 		>; | 
 | 	}; | 
 | }; | 
 |  | 
 | #include "omap-gpmc-smsc911x.dtsi" | 
 |  | 
 | &gpmc { | 
 | 	ranges = <5 0 0x2c000000 0x01000000>, /* CM-T3x30 SMSC9x Eth */ | 
 | 		 <0 0 0x00000000 0x01000000>; /* CM-T3x NAND */ | 
 |  | 
 | 	smsc1: ethernet@gpmc { | 
 | 		compatible = "smsc,lan9221", "smsc,lan9115"; | 
 | 		pinctrl-names = "default"; | 
 | 		pinctrl-0 = <&smsc1_pins>; | 
 | 		interrupt-parent = <&gpio6>; | 
 | 		interrupts = <3 IRQ_TYPE_LEVEL_LOW>; | 
 | 		reg = <5 0 0xff>; | 
 | 	}; | 
 | }; | 
 |  | 
 | &i2c1 { | 
 | 	twl: twl@48 { | 
 | 		reg = <0x48>; | 
 | 		interrupts = <7>; /* SYS_NIRQ cascaded to intc */ | 
 | 		interrupt-parent = <&intc>; | 
 |  | 
 | 		twl_audio: audio { | 
 | 			compatible = "ti,twl4030-audio"; | 
 | 			codec { | 
 | 			}; | 
 | 		}; | 
 | 	}; | 
 | }; | 
 |  | 
 | #include "twl4030.dtsi" | 
 | #include "twl4030_omap3.dtsi" | 
 | #include <dt-bindings/input/input.h> | 
 |  | 
 | &venc { | 
 | 	vdda-supply = <&vdac>; | 
 | }; | 
 |  | 
 | &mmc1 { | 
 | 	vmmc-supply = <&vmmc1>; | 
 | }; | 
 |  | 
 | &twl_gpio { | 
 | 	ti,use-leds; | 
 | 	/* pullups: BIT(0) */ | 
 | 	ti,pullups = <0x000001>; | 
 | }; | 
 |  | 
 | &twl_keypad { | 
 | 	linux,keymap = < | 
 | 				MATRIX_KEY(0x00, 0x01, KEY_A) | 
 | 				MATRIX_KEY(0x00, 0x02, KEY_B) | 
 | 				MATRIX_KEY(0x00, 0x03, KEY_LEFT) | 
 |  | 
 | 				MATRIX_KEY(0x01, 0x01, KEY_UP) | 
 | 				MATRIX_KEY(0x01, 0x02, KEY_ENTER) | 
 | 				MATRIX_KEY(0x01, 0x03, KEY_DOWN) | 
 |  | 
 | 				MATRIX_KEY(0x02, 0x01, KEY_RIGHT) | 
 | 				MATRIX_KEY(0x02, 0x02, KEY_C) | 
 | 				MATRIX_KEY(0x02, 0x03, KEY_D) | 
 | 			>; | 
 | }; | 
 |  | 
 | &hsusb1_phy { | 
 | 	reset-gpios = <&twl_gpio 6 GPIO_ACTIVE_LOW>; | 
 | }; | 
 |  | 
 | &hsusb2_phy { | 
 | 	reset-gpios = <&twl_gpio 7 GPIO_ACTIVE_LOW>; | 
 | }; | 
 |  | 
 | &usb_otg_hs { | 
 | 	pinctrl-names = "default"; | 
 | 	pinctrl-0 = <&hsusb0_pins>; | 
 | 	interface-type = <0>; | 
 | 	usb-phy = <&usb2_phy>; | 
 | 	phys = <&usb2_phy>; | 
 | 	phy-names = "usb2-phy"; | 
 | 	mode = <3>; | 
 | 	power = <50>; | 
 | }; |