1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright (C) 2016 Savoir-Faire Linux
4 * Author: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
5 */
6
7/dts-v1/;
8#include "imx28.dtsi"
9#include "dt-bindings/gpio/gpio.h"
10
11/ {
12
13	model = "Technologic Systems i.MX28 TS-4600";
14	compatible = "technologic,imx28-ts4600", "fsl,imx28";
15
16	memory@40000000 {
17		device_type = "memory";
18		reg = <0x40000000 0x10000000>;   /* 256MB */
19	};
20
21	apb@80000000 {
22		apbh@80000000 {
23			ssp0: spi@80010000 {
24				compatible = "fsl,imx28-mmc";
25				pinctrl-names = "default";
26				pinctrl-0 = <&mmc0_4bit_pins_a
27					     &mmc0_sck_cfg
28					     &en_sd_pwr>;
29				broken-cd = <1>;
30				bus-width = <4>;
31				vmmc-supply = <&reg_vddio_sd0>;
32				status = "okay";
33			};
34
35			pinctrl@80018000 {
36
37				en_sd_pwr: en-sd-pwr@0 {
38					reg = <0>;
39					fsl,pinmux-ids = <
40						MX28_PAD_PWM3__GPIO_3_28
41					>;
42					fsl,drive-strength = <MXS_DRIVE_4mA>;
43					fsl,voltage = <MXS_VOLTAGE_HIGH>;
44					fsl,pull-up = <MXS_PULL_DISABLE>;
45				};
46
47			};
48		};
49
50		apbx@80040000 {
51			pwm: pwm@80064000 {
52				pinctrl-names = "default";
53				pinctrl-0 = <&pwm2_pins_a>;
54				status = "okay";
55			};
56
57			duart: serial@80074000 {
58				pinctrl-names = "default";
59				pinctrl-0 = <&duart_pins_a>;
60				status = "okay";
61			};
62		};
63	};
64
65	reg_vddio_sd0: regulator-vddio-sd0 {
66		compatible = "regulator-fixed";
67		regulator-name = "vddio-sd0";
68		regulator-min-microvolt = <3300000>;
69		regulator-max-microvolt = <3300000>;
70		regulator-boot-on;
71		gpio = <&gpio3 28 GPIO_ACTIVE_LOW>;
72	};
73
74};
75