Skip to content
Snippets Groups Projects
Commit 08663c02 authored by Clemens Terasa's avatar Clemens Terasa
Browse files

arm:dts: Add support for SANTINO

 Add support for the Garz& Fricke SANTINO platform. The SANTINO platform
 is based on an NXP i.MX6 Solo or DuaslLite. It includes support for an
 RGB Display, I2C Touch, RS232, RS485, SD-Cards and USB.
parent d171bc3f
No related branches found
No related tags found
No related merge requests found
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_SOC_IMX6Q) += \
imx6dl-santino.dtb
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright 2013 Freescale Semiconductor, Inc.
* Copyright 2020 Garz & Fricke GmbH
*
* Authors: Fabio Estevam <fabio.estevam@freescale.com>
* Clemens Terasa <clemens.terasa@garz-fricke.com>
*
* TODO: split this up in SANTINO 1.x and SANTINO 2.x files
*/
/dts-v1/;
#include "../imx6dl.dtsi"
#include "imx6dl-santino.dtsi"
/ {
model = "Santino i.MX6 Dual Lite Board";
compatible = "guf,imx6dl-santino", "fsl,imx6dl";
};
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright 2013 Freescale Semiconductor, Inc.
* Copyright 2020 Garz & Fricke GmbH
*
* Author: Fabio Estevam <fabio.estevam@freescale.com>
* Clemens Terasa <clemens.terasa@garz-fricke.com>
*
* TODO: split file up in SANTINO 1.x and SANTINO 2.x files
*/
#include <dt-bindings/sound/fsl-imx-audmux.h>
#include "imx6qdl-san.dtsi"
/ {
memory {
device_type = "memory";
reg = <0x10000000 0x20000000>;
};
lcd_display: disp0 {
compatible = "fsl,imx-parallel-display";
#address-cells = <1>;
#size-cells = <0>;
interface-pix-fmt = "rgb666";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ipu1_lcdif18bpp>;
status = "okay";
port@0 {
reg = <0>;
lcd_display_in: endpoint {
remote-endpoint = <&ipu1_di0_disp0>;
};
};
port@1 {
reg = <1>;
lcd_display_out: endpoint {
remote-endpoint = <&lcd_panel_in>;
};
};
};
panel: panel {
compatible = "guf,panel-dt";
backlight = <&backlight>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lcd_enable1>;
power-supply = <&reg_SW4_3V3>;
enable-gpios = <&gpio5 21 GPIO_ACTIVE_HIGH>;
status = "okay";
port {
lcd_panel_in: endpoint {
remote-endpoint = <&lcd_display_out>;
};
};
};
reg_5p0: regulator-5v0 {
compatible = "regulator-fixed";
regulator-name = "5P0V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
reg_eth_phy: regulator-eth-phy {
compatible = "regulator-fixed";
regulator-name = "ETH_PHY";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
};
&backlight {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_bl_on1>;
enable-gpios = <&gpio1 18 GPIO_ACTIVE_HIGH>;
status = "okay";
};
&can1 {
xceiver-supply = <&reg_5p0>;
};
&codec {
VDDD-supply = <&sw3_reg>;
};
&gpio6 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_keypad_gpio1>;
gpio-line-names = "", "", "", "", "", "", "", "keypad_pin4",
"keypad_pin3", "keypad_pin5", "keypad_pin6", "keypad_pin7", "", "", "", "keypad_pin8",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "";
};
&i2c1 {
pmic: pfuze3000@8 {
compatible = "fsl,pfuze3000";
reg = <0x08>;
regulators {
sw1a_reg: sw1ab {
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1875000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <6250>;
};
sw1b_reg: sw1b {
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1875000>;
regulator-boot-on;
regulator-always-on;
regulator-ramp-delay = <6250>;
};
reg_SW4_3V3:sw2_reg: sw2 {
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};
sw3_reg: sw3 {
/* FNGBoot sets correct voltage, shall not be touched by the OS */
compatible = "regulator-fixed";
regulator-name = "DDR_1V5 (sw3)";
regulator-boot-on;
regulator-always-on;
};
swbst_reg: swbst {
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5150000>;
regulator-boot-on;
regulator-always-on;
};
snvs_reg: vsnvs {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3000000>;
regulator-boot-on;
regulator-always-on;
};
vref_reg: vrefddr {
regulator-boot-on;
regulator-always-on;
};
v33_reg: v33 {
regulator-min-microvolt = <2850000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
vldo2_reg: vldo2 {
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1550000>;
regulator-always-on;
regulator-boot-on;
};
};
};
};
&i2c2 {
status = "disabled";
};
&ipu1_di0_disp0 {
remote-endpoint = <&lcd_display_in>;
};
&lm75 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lm75_1>;
interrupts = <7 0x4>;
interrupt-parent = <&gpio4>;
status = "okay";
};
&pwm1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm1>;
status = "okay";
};
&reg_usb_otg_vbus {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbotgvbus1>;
gpio = <&gpio3 22 0>;
};
&rtc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rtc1>;
status = "okay";
};
&sound {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_audmux4>;
status = "okay";
cpu_dai: simple-audio-card,cpu {
sound-dai = <&ssi2>;
};
};
&ssi2 {
status = "okay";
};
&uart1 {
linux,rs485-enabled-at-boot-time;
rs485-rx-during-tx;
status = "okay";
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2_rxtx &pinctrl_uart2_rcts1>;
uart-has-rtscts;
status = "okay";
};
&uart4 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart4_rxtx &pinctrl_uart4_rcts>;
uart-has-rtscts;
status = "okay";
};
&uart5 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5_rxtx &pinctrl_uart5_rcts>;
uart-has-rtscts;
status = "okay";
};
&usbotg {
vbus-supply = <&reg_usb_otg_vbus>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbotg>;
disable-over-current;
srp-disable;
hnp-disable;
adp-disable;
status = "okay";
};
&usdhc2 {
wp-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
status = "okay";
};
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment