Merge tag 'samsung-dt-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt
Samsung DTS ARM changes for v5.8 1. Add DTS for Exynos4210-based Samsung Galaxy S2 (GT-I9100) mobile phone, 2. Enable WiFi and Bluetooth in multiple boards, 3. Add new features to S5Pv210-based Aries family of mobile phones (e.g. Samsung Galaxy S): necessary configuration for suspend, audio support, USB mux, touch keys, panel, i2c-gpio adapters, FM radio, ADC, 4. Many minor fixes (e.g. GPIO polarity, interrupts). * tag 'samsung-dt-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (29 commits) ARM: dts: s5pv210: Set MAX8998 GPIO pulls on Aries boards ARM: dts: s5pv210: Correct FIMC definitions ARM: dts: s5pv210: Assign clocks to MMC devices on Aries boards ARM: dts: s5pv210: Enable ADC on Aries boards ARM: dts: s5pv210: Add an ADC node ARM: dts: s5pv210: Disable pull for vibrator enable GPIO on Aries boards ARM: dts: s5pv210: Add si470x FM radio to Galaxy S ARM: dts: s5pv210: Add remaining i2c-gpio adapters to Aries boards ARM: dts: s5pv210: Add panel support to Aries boards ARM: dts: s5pv210: Add touchkey support to Aries boards ARM: dts: s5pv210: Add FSA9480 support to Aries boards ARM: dts: s5pv210: Add WM8994 support to Aries boards ARM: dts: s5pv210: Disable pulls on GPIO I2C adapters for Aries ARM: dts: s5pv210: Set keep-power-in-suspend for SDHCI1 on Aries ARM: dts: s5pv210: Correct gpi pinctrl node name ARM: dts: s5pv210: Add sleep GPIO configuration for Galaxy S ARM: dts: s5pv210: Add sleep GPIO configuration for Fascinate4G ARM: dts: s5pv210: Add helper define for sleep gpio config ARM: dts: exynos: Enable WLAN support for the UniversalC210 board ARM: dts: exynos: Enable WLAN support for the Rinato board ... Link: https://lore.kernel.org/r/20200512122922.5700-2-krzk@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
@@ -52,6 +52,7 @@ properties:
|
||||
items:
|
||||
- enum:
|
||||
- insignal,origen # Insignal Origen
|
||||
- samsung,i9100 # Samsung Galaxy S2 (GT-I9100)
|
||||
- samsung,smdkv310 # Samsung SMDKV310 eval
|
||||
- samsung,trats # Samsung Tizen Reference
|
||||
- samsung,universal_c210 # Samsung C210
|
||||
|
@@ -181,6 +181,7 @@ dtb-$(CONFIG_ARCH_EXYNOS3) += \
|
||||
exynos3250-monk.dtb \
|
||||
exynos3250-rinato.dtb
|
||||
dtb-$(CONFIG_ARCH_EXYNOS4) += \
|
||||
exynos4210-i9100.dtb \
|
||||
exynos4210-origen.dtb \
|
||||
exynos4210-smdkv310.dtb \
|
||||
exynos4210-trats.dtb \
|
||||
|
@@ -57,7 +57,8 @@
|
||||
|
||||
i2c_max77836: i2c-gpio-0 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpd0 2 GPIO_ACTIVE_HIGH>, <&gpd0 3 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpd0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpd0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
|
@@ -50,9 +50,15 @@
|
||||
};
|
||||
};
|
||||
|
||||
wlan_pwrseq: mshc1-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
i2c_max77836: i2c-gpio-0 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpd0 2 GPIO_ACTIVE_HIGH>, <&gpd0 3 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpd0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpd0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
@@ -605,8 +611,6 @@
|
||||
};
|
||||
|
||||
&mshc_0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
broken-cd;
|
||||
non-removable;
|
||||
cap-mmc-highspeed;
|
||||
@@ -625,10 +629,48 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mshc_1 {
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
non-removable;
|
||||
cap-sd-highspeed;
|
||||
cap-sdio-irq;
|
||||
keep-power-in-suspend;
|
||||
samsung,dw-mshc-ciu-div = <1>;
|
||||
samsung,dw-mshc-sdr-timing = <0 1>;
|
||||
samsung,dw-mshc-ddr-timing = <1 2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus1 &sd1_bus4>;
|
||||
bus-width = <4>;
|
||||
|
||||
mmc-pwrseq = <&wlan_pwrseq>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
compatible = "brcm,bcm4334-fmac";
|
||||
reg = <1>;
|
||||
|
||||
interrupt-parent = <&gpx1>;
|
||||
interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&serial_0 {
|
||||
assigned-clocks = <&cmu CLK_SCLK_UART0>;
|
||||
assigned-clock-rates = <100000000>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm4330-bt";
|
||||
max-speed = <3000000>;
|
||||
shutdown-gpios = <&gpe0 0 GPIO_ACTIVE_HIGH>;
|
||||
device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
|
||||
host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
|
||||
clocks = <&s2mps14_osc S2MPS11_CLK_BT>;
|
||||
};
|
||||
};
|
||||
|
||||
&serial_1 {
|
||||
|
768
arch/arm/boot/dts/exynos4210-i9100.dts
Normal file
768
arch/arm/boot/dts/exynos4210-i9100.dts
Normal file
@@ -0,0 +1,768 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree
|
||||
*
|
||||
* Copyright (c) 2012 Samsung Electronics Co., Ltd.
|
||||
* http://www.samsung.com
|
||||
* Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com>
|
||||
* Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "exynos4210.dtsi"
|
||||
#include "exynos4412-ppmu-common.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
|
||||
/ {
|
||||
model = "Samsung Galaxy S2 (GT-I9100)";
|
||||
compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4";
|
||||
|
||||
memory@40000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x40000000 0x40000000>;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial2:115200n8";
|
||||
};
|
||||
|
||||
vemmc_reg: regulator-0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VMEM_VDD_2.8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
tsp_reg: regulator-1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "TSP_FIXED_VOLTAGES";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
|
||||
startup-delay-us = <70000>;
|
||||
enable-active-high;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
cam_af_28v_reg: regulator-2 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "8M_AF_2.8V_EN";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
cam_io_en_reg: regulator-3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "CAM_IO_EN";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
cam_io_12v_reg: regulator-4 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "8M_1.2V_EN";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
vt_core_15v_reg: regulator-5 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VT_CORE_1.5V";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
vol-down {
|
||||
gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
label = "volume down";
|
||||
debounce-interval = <10>;
|
||||
};
|
||||
|
||||
vol-up {
|
||||
gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
label = "volume up";
|
||||
debounce-interval = <10>;
|
||||
};
|
||||
|
||||
power {
|
||||
gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_POWER>;
|
||||
label = "power";
|
||||
debounce-interval = <10>;
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
ok {
|
||||
gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_OK>;
|
||||
label = "ok";
|
||||
debounce-interval = <10>;
|
||||
};
|
||||
};
|
||||
|
||||
wlan_pwrseq: sdhci3-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
i2c_max17042_fuel: i2c-gpio {
|
||||
compatible = "i2c-gpio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <5>;
|
||||
|
||||
battery@36 {
|
||||
compatible = "maxim,max17042";
|
||||
|
||||
interrupt-parent = <&gpx2>;
|
||||
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
pinctrl-0 = <&max17042_fuel_irq>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
reg = <0x36>;
|
||||
maxim,over-heat-temp = <700>;
|
||||
maxim,over-volt = <4500>;
|
||||
};
|
||||
};
|
||||
|
||||
spi-lcd {
|
||||
compatible = "spi-gpio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
num-chipselects = <1>;
|
||||
cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>;
|
||||
sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>;
|
||||
mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
lcd@0 {
|
||||
compatible = "samsung,ld9040";
|
||||
reg = <0>;
|
||||
|
||||
spi-max-frequency = <1200000>;
|
||||
|
||||
vdd3-supply = <&vmipi_reg>;
|
||||
vci-supply = <&vcclcd_reg>;
|
||||
|
||||
reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>;
|
||||
power-on-delay = <10>;
|
||||
reset-delay = <10>;
|
||||
|
||||
panel-width-mm = <90>;
|
||||
panel-height-mm = <154>;
|
||||
|
||||
display-timings {
|
||||
timing {
|
||||
clock-frequency = <23492370>;
|
||||
hactive = <480>;
|
||||
vactive = <800>;
|
||||
hback-porch = <16>;
|
||||
hfront-porch = <16>;
|
||||
vback-porch = <2>;
|
||||
vfront-porch = <28>;
|
||||
hsync-len = <2>;
|
||||
vsync-len = <1>;
|
||||
hsync-active = <0>;
|
||||
vsync-active = <0>;
|
||||
de-active = <0>;
|
||||
pixelclk-active = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
port {
|
||||
lcd_ep: endpoint {
|
||||
remote-endpoint = <&fimd_dpi_ep>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
fixed-rate-clocks {
|
||||
xxti {
|
||||
compatible = "samsung,clock-xxti";
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
|
||||
xusbxti {
|
||||
compatible = "samsung,clock-xusbxti";
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
cpu_thermal: cpu-thermal {
|
||||
cooling-maps {
|
||||
map0 {
|
||||
/* Corresponds to 800MHz */
|
||||
cooling-device = <&cpu0 2 2>;
|
||||
};
|
||||
map1 {
|
||||
/* Corresponds to 200MHz */
|
||||
cooling-device = <&cpu0 4 4>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&camera {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
cpu0-supply = <&varm_breg>;
|
||||
};
|
||||
|
||||
&ehci {
|
||||
status = "okay";
|
||||
|
||||
phys = <&exynos_usbphy 1>;
|
||||
phy-names = "host";
|
||||
};
|
||||
|
||||
&exynos_usbphy {
|
||||
status = "okay";
|
||||
|
||||
vbus-supply = <&safe1_sreg>;
|
||||
};
|
||||
|
||||
&fimc_0 {
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>;
|
||||
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
|
||||
assigned-clock-rates = <0>, <160000000>;
|
||||
};
|
||||
|
||||
&fimc_1 {
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>;
|
||||
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
|
||||
assigned-clock-rates = <0>, <160000000>;
|
||||
};
|
||||
|
||||
&fimc_2 {
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>;
|
||||
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
|
||||
assigned-clock-rates = <0>, <160000000>;
|
||||
};
|
||||
|
||||
&fimc_3 {
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>;
|
||||
assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
|
||||
assigned-clock-rates = <0>, <160000000>;
|
||||
};
|
||||
|
||||
&fimd {
|
||||
status = "okay";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
samsung,invert-vden;
|
||||
samsung,invert-vclk;
|
||||
|
||||
pinctrl-0 = <&lcd_clk>, <&lcd_data24>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
|
||||
fimd_dpi_ep: endpoint {
|
||||
remote-endpoint = <&lcd_ep>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gpu {
|
||||
status = "okay";
|
||||
|
||||
mali-supply = <&vg3d_breg>;
|
||||
regulator-microvolt-offset = <50000>;
|
||||
regulator-microsecs-delay = <50>;
|
||||
};
|
||||
|
||||
&hsotg {
|
||||
status = "okay";
|
||||
|
||||
dr_mode = "otg";
|
||||
vusb_d-supply = <&vusb_reg>;
|
||||
vusb_a-supply = <&vusbdac_reg>;
|
||||
};
|
||||
|
||||
&i2c_3 {
|
||||
status = "okay";
|
||||
|
||||
samsung,i2c-sda-delay = <100>;
|
||||
samsung,i2c-slave-addr = <0x10>;
|
||||
samsung,i2c-max-bus-freq = <100000>;
|
||||
|
||||
pinctrl-0 = <&i2c3_bus>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
mxt224-touchscreen@4a {
|
||||
compatible = "atmel,maxtouch";
|
||||
reg = <0x4a>;
|
||||
|
||||
interrupt-parent = <&gpx0>;
|
||||
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c_5 {
|
||||
status = "okay";
|
||||
|
||||
samsung,i2c-sda-delay = <100>;
|
||||
samsung,i2c-slave-addr = <0x10>;
|
||||
samsung,i2c-max-bus-freq = <100000>;
|
||||
|
||||
pinctrl-0 = <&i2c5_bus>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
max8997_pmic@66 {
|
||||
compatible = "maxim,max8997-pmic";
|
||||
reg = <0x66>;
|
||||
|
||||
interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>,
|
||||
<&gpx2 3 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
max8997,pmic-buck1-uses-gpio-dvs;
|
||||
max8997,pmic-buck2-uses-gpio-dvs;
|
||||
max8997,pmic-buck5-uses-gpio-dvs;
|
||||
|
||||
max8997,pmic-ignore-gpiodvs-side-effect;
|
||||
max8997,pmic-buck125-default-dvs-idx = <0>;
|
||||
|
||||
max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>,
|
||||
<&gpx0 6 GPIO_ACTIVE_HIGH>,
|
||||
<&gpl0 0 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
|
||||
<1250000>, <1200000>,
|
||||
<1150000>, <1100000>,
|
||||
<1000000>, <950000>;
|
||||
|
||||
max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
|
||||
<950000>, <900000>,
|
||||
<1100000>, <1000000>,
|
||||
<950000>, <900000>;
|
||||
|
||||
max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>,
|
||||
<1200000>, <1200000>;
|
||||
|
||||
pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
regulators {
|
||||
vadc_reg: LDO1 {
|
||||
regulator-name = "VADC_3.3V_C210";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
|
||||
};
|
||||
valive_reg: LDO2 {
|
||||
regulator-name = "VALIVE_1.1V_C210";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
|
||||
};
|
||||
|
||||
vusb_reg: LDO3 {
|
||||
regulator-name = "VUSB_1.1V_C210";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
};
|
||||
|
||||
vmipi_reg: LDO4 {
|
||||
regulator-name = "VMIPI_1.8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vhsic_reg: LDO5 {
|
||||
regulator-name = "VHSIC_1.2V";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vpda_reg: LDO6 {
|
||||
regulator-name = "VCC_1.8V_PDA";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcam_reg: LDO7 {
|
||||
regulator-name = "CAM_ISP_1.8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
vusbdac_reg: LDO8 {
|
||||
regulator-name = "VUSB+VDAC_3.3V_C210";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vccpda_reg: LDO9 {
|
||||
regulator-name = "VCC_2.8V_PDA";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vtouch_reg: LDO11 {
|
||||
regulator-name = "TOUCH_2.8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vpll_reg: LDO10 {
|
||||
regulator-name = "VPLL_1.1V";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vtcam_reg: LDO12 {
|
||||
regulator-name = "VT_CAM_1.8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
vcclcd_reg: LDO13 {
|
||||
regulator-name = "VCC_3.0V_LCD";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
};
|
||||
|
||||
vmotor_reg: LDO14 {
|
||||
regulator-name = "VCC_2.8V_MOTOR";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
};
|
||||
|
||||
vled_reg: LDO15 {
|
||||
regulator-name = "LED_A_2.8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
};
|
||||
|
||||
camsensor_reg: LDO16 {
|
||||
regulator-name = "CAM_SENSOR_IO_1.8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
vtf_reg: LDO17 {
|
||||
regulator-name = "VTF_2.8V";
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
};
|
||||
|
||||
vtouchled_reg: LDO18 {
|
||||
regulator-name = "TOUCH_LED_3.3V";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
vddq_reg: LDO21 {
|
||||
regulator-name = "VDDQ_M1M2_1.2V";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
varm_breg: BUCK1 {
|
||||
regulator-name = "VARM_1.2V_C210";
|
||||
regulator-min-microvolt = <65000>;
|
||||
regulator-max-microvolt = <2225000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vint_breg: BUCK2 {
|
||||
regulator-name = "VINT_1.1V_C210";
|
||||
regulator-min-microvolt = <65000>;
|
||||
regulator-max-microvolt = <2225000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vg3d_breg: BUCK3 {
|
||||
regulator-name = "G3D_1.1V";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
camisp_breg: BUCK4 {
|
||||
regulator-name = "CAM_ISP_CORE_1.2V";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
};
|
||||
|
||||
vmem_breg: BUCK5 {
|
||||
regulator-name = "VMEM_1.2V";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vccsub_breg: BUCK7 {
|
||||
regulator-name = "VCC_SUB_2.0V";
|
||||
regulator-min-microvolt = <2000000>;
|
||||
regulator-max-microvolt = <2000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
safe1_sreg: ESAFEOUT1 {
|
||||
regulator-name = "SAFEOUT1";
|
||||
};
|
||||
|
||||
safe2_sreg: ESAFEOUT2 {
|
||||
regulator-name = "SAFEOUT2";
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
charger_reg: CHARGER {
|
||||
regulator-name = "CHARGER";
|
||||
regulator-min-microamp = <60000>;
|
||||
regulator-max-microamp = <2580000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
chargercv_reg: CHARGER_CV {
|
||||
regulator-name = "CHARGER_CV";
|
||||
regulator-min-microvolt = <3800000>;
|
||||
regulator-max-microvolt = <4100000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c_7 {
|
||||
status = "okay";
|
||||
|
||||
samsung,i2c-sda-delay = <100>;
|
||||
samsung,i2c-slave-addr = <0x10>;
|
||||
samsung,i2c-max-bus-freq = <400000>;
|
||||
|
||||
pinctrl-0 = <&i2c7_bus>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
ak8975@c {
|
||||
compatible = "asahi-kasei,ak8975";
|
||||
reg = <0x0c>;
|
||||
|
||||
gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl_0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sleep0>;
|
||||
|
||||
sleep0: sleep-states {
|
||||
gpa0-0 {
|
||||
samsung,pins = "gpa0-0";
|
||||
samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
|
||||
samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
gpa0-1 {
|
||||
samsung,pins = "gpa0-1";
|
||||
samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>;
|
||||
samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
gpa0-2 {
|
||||
samsung,pins = "gpa0-2";
|
||||
samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
|
||||
samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
gpa0-3 {
|
||||
samsung,pins = "gpa0-3";
|
||||
samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>;
|
||||
samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl_1 {
|
||||
mhl_int: mhl-int {
|
||||
samsung,pins = "gpf3-5";
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
i2c_mhl_bus: i2c-mhl-bus {
|
||||
samsung,pins = "gpf0-4", "gpf0-6";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
usb_sel: usb-sel {
|
||||
samsung,pins = "gpl0-6";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
samsung,pin-val = <0>;
|
||||
};
|
||||
|
||||
bt_en: bt-en {
|
||||
samsung,pins = "gpl0-4";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
|
||||
samsung,pin-val = <0>;
|
||||
};
|
||||
|
||||
bt_res: bt-res {
|
||||
samsung,pins = "gpl1-0";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
|
||||
samsung,pin-val = <0>;
|
||||
};
|
||||
|
||||
otg_gp: otg-gp {
|
||||
samsung,pins = "gpx3-3";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
samsung,pin-val = <0>;
|
||||
};
|
||||
|
||||
mag_mhl_gpio: mag-mhl-gpio {
|
||||
samsung,pins = "gpd0-2";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
max8997_irq: max8997-irq {
|
||||
samsung,pins = "gpx0-7";
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
max17042_fuel_irq: max17042-fuel-irq {
|
||||
samsung,pins = "gpx2-3";
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
tsp224_irq: tsp224-irq {
|
||||
samsung,pins = "gpx0-4";
|
||||
samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
|
||||
};
|
||||
};
|
||||
|
||||
&sdhci_0 {
|
||||
status = "okay";
|
||||
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
vmmc-supply = <&vemmc_reg>;
|
||||
|
||||
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&sdhci_2 {
|
||||
status = "okay";
|
||||
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
|
||||
vmmc-supply = <&vtf_reg>;
|
||||
|
||||
pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&sdhci_3 {
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
non-removable;
|
||||
bus-width = <4>;
|
||||
mmc-pwrseq = <&wlan_pwrseq>;
|
||||
vmmc-supply = <&vtf_reg>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
compatible = "brcm,bcm4330-fmac";
|
||||
reg = <1>;
|
||||
|
||||
interrupt-parent = <&gpx2>;
|
||||
interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&serial_0 {
|
||||
status = "okay";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>;
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm4330-bt";
|
||||
|
||||
shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpl1 0 GPIO_ACTIVE_HIGH>;
|
||||
device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
|
||||
host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&serial_1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&serial_2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&serial_3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tmu {
|
||||
status = "okay";
|
||||
};
|
@@ -251,12 +251,7 @@
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
/*
|
||||
* HACK: The real name is VDD_ARM_1.2V,
|
||||
* but exynos-cpufreq does not support
|
||||
* DT-based regulator lookup yet.
|
||||
*/
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VDD_ARM_1.2V";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
|
@@ -121,6 +121,11 @@
|
||||
};
|
||||
};
|
||||
|
||||
wlan_pwrseq: sdhci3-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
fixed-rate-clocks {
|
||||
xxti {
|
||||
compatible = "samsung,clock-xxti";
|
||||
@@ -280,11 +285,10 @@
|
||||
|
||||
max8997_pmic@66 {
|
||||
compatible = "maxim,max8997-pmic";
|
||||
interrupts-extended = <&gpx0 7 0>, <&gpx2 3 0>;
|
||||
|
||||
reg = <0x66>;
|
||||
interrupt-parent = <&gpx0>;
|
||||
interrupts = <7 IRQ_TYPE_NONE>;
|
||||
interrupts-extended = <&gpx0 7 IRQ_TYPE_LEVEL_LOW>,
|
||||
<&gpx2 3 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
max8997,pmic-buck1-uses-gpio-dvs;
|
||||
max8997,pmic-buck2-uses-gpio-dvs;
|
||||
@@ -403,12 +407,7 @@
|
||||
};
|
||||
|
||||
varm_breg: BUCK1 {
|
||||
/*
|
||||
* HACK: The real name is VARM_1.2V_C210,
|
||||
* but exynos-cpufreq does not support
|
||||
* DT-based regulator lookup yet.
|
||||
*/
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VARM_1.2V_C210";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
@@ -471,6 +470,30 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci_3 {
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
non-removable;
|
||||
bus-width = <4>;
|
||||
mmc-pwrseq = <&wlan_pwrseq>;
|
||||
vmmc-supply = <&tflash_reg>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
compatible = "brcm,bcm4330-fmac";
|
||||
reg = <1>;
|
||||
|
||||
interrupt-parent = <&gpx2>;
|
||||
interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&serial_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@@ -50,6 +50,11 @@
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
wlan_pwrseq: sdhci3-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpe3 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
@@ -164,7 +169,8 @@
|
||||
|
||||
hdmi_ddc: i2c-ddc {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpe4 2 GPIO_ACTIVE_HIGH &gpe4 3 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpe4 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpe4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <100>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -317,7 +323,7 @@
|
||||
max8952,sync-freq = <0>;
|
||||
max8952,ramp-speed = <0>;
|
||||
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VARM_1.2V_C210";
|
||||
regulator-min-microvolt = <770000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-always-on;
|
||||
@@ -563,6 +569,29 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci_3 {
|
||||
status = "okay";
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
non-removable;
|
||||
bus-width = <4>;
|
||||
mmc-pwrseq = <&wlan_pwrseq>;
|
||||
vmmc-supply = <&ldo5_reg>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
compatible = "brcm,bcm4330-fmac";
|
||||
reg = <1>;
|
||||
interrupt-parent = <&gpx2>;
|
||||
interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&serial_0 {
|
||||
status = "okay";
|
||||
/delete-property/dmas;
|
||||
|
@@ -53,7 +53,8 @@
|
||||
|
||||
i2c_ak8975: i2c-gpio-0 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpy2 4 GPIO_ACTIVE_HIGH>, <&gpy2 5 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -68,7 +69,8 @@
|
||||
|
||||
i2c_cm36651: i2c-gpio-2 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpf0 0 GPIO_ACTIVE_LOW>, <&gpf0 1 GPIO_ACTIVE_LOW>;
|
||||
sda-gpios = <&gpf0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpf0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@@ -140,7 +140,8 @@
|
||||
|
||||
i2c_max77693: i2c-gpio-1 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpm2 0 GPIO_ACTIVE_HIGH>, <&gpm2 1 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -188,7 +189,8 @@
|
||||
|
||||
i2c_max77693_fuel: i2c-gpio-3 {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>, <&gpf1 4 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpf1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpf1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -228,7 +230,8 @@
|
||||
|
||||
i2c-mhl {
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpf0 4 GPIO_ACTIVE_HIGH>, <&gpf0 6 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&gpf0 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpf0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <100>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -820,7 +823,7 @@
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
regulator-name = "vdd_mif";
|
||||
regulator-name = "VDD_MIF";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
@@ -831,7 +834,7 @@
|
||||
};
|
||||
|
||||
buck2_reg: BUCK2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VDD_ARM";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
@@ -842,7 +845,7 @@
|
||||
};
|
||||
|
||||
buck3_reg: BUCK3 {
|
||||
regulator-name = "vdd_int";
|
||||
regulator-name = "VDD_INT";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <1150000>;
|
||||
regulator-always-on;
|
||||
@@ -853,7 +856,7 @@
|
||||
};
|
||||
|
||||
buck4_reg: BUCK4 {
|
||||
regulator-name = "vdd_g3d";
|
||||
regulator-name = "VDD_G3D";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <1150000>;
|
||||
regulator-boot-on;
|
||||
|
@@ -430,7 +430,7 @@
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
regulator-name = "vdd_mif";
|
||||
regulator-name = "VDD_MIF";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
@@ -438,7 +438,7 @@
|
||||
};
|
||||
|
||||
buck2_reg: BUCK2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VDD_ARM";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
@@ -446,7 +446,7 @@
|
||||
};
|
||||
|
||||
buck3_reg: BUCK3 {
|
||||
regulator-name = "vdd_int";
|
||||
regulator-name = "VDD_INT";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-always-on;
|
||||
@@ -454,7 +454,7 @@
|
||||
};
|
||||
|
||||
buck4_reg: BUCK4 {
|
||||
regulator-name = "vdd_g3d";
|
||||
regulator-name = "VDD_G3D";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-microvolt-offset = <50000>;
|
||||
|
@@ -363,7 +363,7 @@
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
regulator-name = "vdd_mif";
|
||||
regulator-name = "VDD_MIF";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-always-on;
|
||||
@@ -372,7 +372,7 @@
|
||||
};
|
||||
|
||||
buck2_reg: BUCK2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VDD_ARM";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1350000>;
|
||||
regulator-always-on;
|
||||
@@ -381,7 +381,7 @@
|
||||
};
|
||||
|
||||
buck3_reg: BUCK3 {
|
||||
regulator-name = "vdd_int";
|
||||
regulator-name = "VDD_INT";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
@@ -390,7 +390,7 @@
|
||||
};
|
||||
|
||||
buck4_reg: BUCK4 {
|
||||
regulator-name = "vdd_g3d";
|
||||
regulator-name = "VDD_G3D";
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
@@ -399,7 +399,7 @@
|
||||
};
|
||||
|
||||
buck5_reg: BUCK5 {
|
||||
regulator-name = "vdd_m12";
|
||||
regulator-name = "VDD_M12";
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
@@ -408,7 +408,7 @@
|
||||
};
|
||||
|
||||
buck6_reg: BUCK6 {
|
||||
regulator-name = "vdd12_5m";
|
||||
regulator-name = "VDD12_5M";
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
@@ -417,7 +417,7 @@
|
||||
};
|
||||
|
||||
buck9_reg: BUCK9 {
|
||||
regulator-name = "vddf28_emmc";
|
||||
regulator-name = "VDDF28_EMMC";
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-always-on;
|
||||
|
@@ -454,7 +454,7 @@
|
||||
};
|
||||
|
||||
buck1_reg: BUCK1 {
|
||||
regulator-name = "vdd_mif";
|
||||
regulator-name = "VDD_MIF";
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
@@ -463,7 +463,7 @@
|
||||
};
|
||||
|
||||
buck2_reg: BUCK2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "VDD_ARM";
|
||||
regulator-min-microvolt = <912500>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-always-on;
|
||||
@@ -472,7 +472,7 @@
|
||||
};
|
||||
|
||||
buck3_reg: BUCK3 {
|
||||
regulator-name = "vdd_int";
|
||||
regulator-name = "VDD_INT";
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-always-on;
|
||||
@@ -481,7 +481,7 @@
|
||||
};
|
||||
|
||||
buck4_reg: BUCK4 {
|
||||
regulator-name = "vdd_g3d";
|
||||
regulator-name = "VDD_G3D";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-always-on;
|
||||
@@ -641,9 +641,8 @@
|
||||
pinctrl-0 = <&i2c2_gpio_bus>;
|
||||
status = "okay";
|
||||
compatible = "i2c-gpio";
|
||||
gpios = <&gpa0 6 0 /* sda */
|
||||
&gpa0 7 0 /* scl */
|
||||
>;
|
||||
sda-gpios = <&gpa0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpa0 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@@ -673,7 +673,7 @@
|
||||
};
|
||||
|
||||
buck2_reg: BUCK2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-name = "PVDD_ARM_1V0";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <1500000>;
|
||||
regulator-always-on;
|
||||
|
@@ -11,9 +11,15 @@
|
||||
/ {
|
||||
compatible = "samsung,aries", "samsung,s5pv210";
|
||||
|
||||
aliases {
|
||||
aliases: aliases {
|
||||
i2c4 = &i2c_sound;
|
||||
i2c5 = &i2c_accel;
|
||||
i2c6 = &i2c_pmic;
|
||||
i2c7 = &i2c_musb;
|
||||
i2c9 = &i2c_fuel;
|
||||
i2c10 = &i2c_touchkey;
|
||||
i2c11 = &i2c_prox;
|
||||
i2c12 = &i2c_magnetometer;
|
||||
};
|
||||
|
||||
memory@30000000 {
|
||||
@@ -46,6 +52,21 @@
|
||||
regulator-name = "vibrator-en";
|
||||
enable-active-high;
|
||||
gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctr-0 = <&vibrator_ena>;
|
||||
};
|
||||
|
||||
touchkey_vdd: regulator-fixed-1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VTOUCH_3.3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
enable-active-high;
|
||||
gpio = <&gpj3 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&touchkey_vdd_ena>;
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
@@ -57,7 +78,71 @@
|
||||
power-off-delay-us = <500>;
|
||||
};
|
||||
|
||||
i2c_pmic: i2c-gpio-0 {
|
||||
i2c_sound: i2c-gpio-0 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&mp05 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&mp05 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sound_i2c_pins>;
|
||||
|
||||
wm8994: wm8994@1a {
|
||||
compatible = "wlf,wm8994";
|
||||
reg = <0x1a>;
|
||||
|
||||
#sound-dai-cells = <0>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
clocks = <&clocks MOUT_CLKOUT>;
|
||||
clock-names = "MCLK1";
|
||||
|
||||
AVDD2-supply = <&buck3_reg>;
|
||||
DBVDD-supply = <&buck3_reg>;
|
||||
CPVDD-supply = <&buck3_reg>;
|
||||
SPKVDD1-supply = <&buck3_reg>;
|
||||
SPKVDD2-supply = <&buck3_reg>;
|
||||
|
||||
wlf,gpio-cfg = <0xa101 0x8100 0x0100 0x0100 0x8100
|
||||
0xa101 0x0100 0x8100 0x0100 0x0100
|
||||
0x0100>;
|
||||
|
||||
wlf,ldo1ena = <&gpf3 4 GPIO_ACTIVE_HIGH>;
|
||||
wlf,ldo2ena = <&gpf3 4 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
wlf,lineout1-se;
|
||||
wlf,lineout2-se;
|
||||
|
||||
assigned-clocks = <&clocks MOUT_CLKOUT>;
|
||||
assigned-clock-rates = <0>;
|
||||
assigned-clock-parents = <&xusbxti>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&codec_ldo>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c_accel: i2c-gpio-1 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpj3 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpj3 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&accel_i2c_pins>;
|
||||
|
||||
status = "disabled";
|
||||
|
||||
/* bma023 accelerometer, no mainline binding */
|
||||
};
|
||||
|
||||
i2c_pmic: i2c-gpio-2 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpj4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpj4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
@@ -65,6 +150,9 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_i2c_pins>;
|
||||
|
||||
pmic@66 {
|
||||
compatible = "maxim,max8998";
|
||||
reg = <0x66>;
|
||||
@@ -81,6 +169,9 @@
|
||||
max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>;
|
||||
max8998,pmic-buck2-dvs-voltage = <1100000>, <1000000>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_dvs_pins &pmic_irq>;
|
||||
|
||||
regulators {
|
||||
ldo2_reg: LDO2 {
|
||||
regulator-name = "VALIVE_1.2V";
|
||||
@@ -107,7 +198,6 @@
|
||||
regulator-name = "VADC_3.3V";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
@@ -134,8 +224,6 @@
|
||||
regulator-name = "VLCD_1.8V";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
/* Till we get panel driver */
|
||||
regulator-always-on;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
@@ -234,8 +322,6 @@
|
||||
regulator-name = "VCC_3.0V_LCD";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
/* Till we get panel driver */
|
||||
regulator-always-on;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-off-in-suspend;
|
||||
@@ -306,7 +392,29 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_fuel: i2c-gpio-1 {
|
||||
i2c_musb: i2c-gpio-3 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpj3 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpj3 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&musb_i2c_pins>;
|
||||
|
||||
fsa9480: musb@25 {
|
||||
compatible = "fcs,fsa9480";
|
||||
reg = <0x25>;
|
||||
interrupt-parent = <&gph2>;
|
||||
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&musb_irq>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c_fuel: i2c-gpio-4 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&mp05 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&mp05 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
@@ -314,6 +422,9 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fg_i2c_pins>;
|
||||
|
||||
fuelgauge@36 {
|
||||
compatible = "maxim,max17040";
|
||||
interrupt-parent = <&vic0>;
|
||||
@@ -322,6 +433,64 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_touchkey: i2c-gpio-5 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpj3 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpj3 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&touchkey_i2c_pins>;
|
||||
|
||||
touchkey@20 {
|
||||
compatible = "cypress,aries-touchkey";
|
||||
reg = <0x20>;
|
||||
vdd-supply = <&touchkey_vdd>;
|
||||
vcc-supply = <&buck3_reg>;
|
||||
linux,keycodes = <KEY_MENU KEY_BACK
|
||||
KEY_HOMEPAGE KEY_SEARCH>;
|
||||
interrupt-parent = <&gpj4>;
|
||||
interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&touchkey_irq>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c_prox: i2c-gpio-6 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpg2 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpg0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&prox_i2c_pins>;
|
||||
|
||||
status = "disabled";
|
||||
|
||||
/* Sharp gp2a prox/light sensor, incomplete mainline binding */
|
||||
};
|
||||
|
||||
i2c_magnetometer: i2c-gpio-7 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpj0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpj0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&magnetometer_i2c_pins>;
|
||||
|
||||
status = "disabled";
|
||||
|
||||
/* Yamaha yas529 magnetometer, no mainline binding */
|
||||
};
|
||||
|
||||
vibrator: pwm-vibrator {
|
||||
compatible = "pwm-vibrator";
|
||||
pwms = <&pwm 1 44642 0>;
|
||||
@@ -337,6 +506,45 @@
|
||||
offset = <0x681c>; /* PS_HOLD_CONTROL */
|
||||
value = <0x5200>;
|
||||
};
|
||||
|
||||
spi_lcd: spi-gpio-0 {
|
||||
compatible = "spi-gpio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
sck-gpios = <&mp04 1 GPIO_ACTIVE_HIGH>;
|
||||
mosi-gpios = <&mp04 3 GPIO_ACTIVE_HIGH>;
|
||||
cs-gpios = <&mp01 1 GPIO_ACTIVE_HIGH>;
|
||||
num-chipselects = <1>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&lcd_spi_pins>;
|
||||
|
||||
panel@0 {
|
||||
compatible = "samsung,s6e63m0";
|
||||
reg = <0>;
|
||||
reset-gpios = <&mp05 5 GPIO_ACTIVE_LOW>;
|
||||
vdd3-supply = <&ldo7_reg>;
|
||||
vci-supply = <&ldo17_reg>;
|
||||
spi-cs-high;
|
||||
spi-max-frequency = <1200000>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&panel_rst>;
|
||||
|
||||
port {
|
||||
lcd_ep: endpoint {
|
||||
remote-endpoint = <&fimd_ep>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&adc {
|
||||
vdd-supply = <&ldo4_reg>;
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&fimd {
|
||||
@@ -347,18 +555,13 @@
|
||||
samsung,invert-vden;
|
||||
samsung,invert-vclk;
|
||||
|
||||
display-timings {
|
||||
timing-0 {
|
||||
/* 480x800@60Hz */
|
||||
clock-frequency = <25628040>;
|
||||
hactive = <480>;
|
||||
vactive = <800>;
|
||||
hfront-porch = <16>;
|
||||
hback-porch = <16>;
|
||||
hsync-len = <2>;
|
||||
vfront-porch = <28>;
|
||||
vback-porch = <1>;
|
||||
vsync-len = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
fimd_ep: endpoint {
|
||||
remote-endpoint = <&lcd_ep>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -399,12 +602,39 @@
|
||||
samsung,pin-val = <1>;
|
||||
};
|
||||
|
||||
codec_ldo: codec-ldo {
|
||||
samsung,pins = "gpf3-4";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
prox_i2c_pins: gp2a-i2c-pins {
|
||||
samsung,pins = "gpg0-2", "gpg2-2";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
wlan_gpio_rst: wlan-gpio-rst {
|
||||
samsung,pins = "gpg1-2";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
pmic_dvs_pins: pmic-dvs-pins {
|
||||
samsung,pins = "gph0-3", "gph0-4", "gph0-5";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
samsung,pin-val = <0>;
|
||||
};
|
||||
|
||||
pmic_irq: pmic-irq {
|
||||
samsung,pins = "gph0-7";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
wifi_host_wake: wifi-host-wake {
|
||||
samsung,pins = "gph2-4";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
@@ -419,6 +649,13 @@
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
musb_irq: musq-irq {
|
||||
samsung,pins = "gph2-7";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
tf_detect: tf-detect {
|
||||
samsung,pins = "gph3-4";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
@@ -432,12 +669,85 @@
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
};
|
||||
|
||||
magnetometer_i2c_pins: yas529-i2c-pins {
|
||||
samsung,pins = "gpj0-0", "gpj0-1";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
ts_irq: ts-irq {
|
||||
samsung,pins = "gpj0-5";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
vibrator_ena: vibrator-ena {
|
||||
samsung,pins = "gpj1-1";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
touchkey_i2c_pins: touchkey-i2c-pins {
|
||||
samsung,pins = "gpj3-0", "gpj3-1";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
touchkey_vdd_ena: touchkey-vdd-ena {
|
||||
samsung,pins = "gpj3-2";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
musb_i2c_pins: musb-i2c-pins {
|
||||
samsung,pins = "gpj3-4", "gpj3-5";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
accel_i2c_pins: accel-i2c-pins {
|
||||
samsung,pins = "gpj3-6", "gpj3-7";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
pmic_i2c_pins: pmic-i2c-pins {
|
||||
samsung,pins = "gpj4-0", "gpj4-3";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
touchkey_irq: touchkey-irq {
|
||||
samsung,pins = "gpj4-1";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_UP>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
lcd_spi_pins: spi-lcd-pins {
|
||||
samsung,pins = "mp01-1", "mp04-1", "mp04-3";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
fg_i2c_pins: fg-i2c-pins {
|
||||
samsung,pins = "mp05-0", "mp05-1";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
sound_i2c_pins: sound-i2c-pins {
|
||||
samsung,pins = "mp05-2", "mp05-3";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
panel_rst: panel-rst {
|
||||
samsung,pins = "mp05-5";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
};
|
||||
|
||||
&pwm {
|
||||
@@ -454,11 +764,16 @@
|
||||
pinctrl-names = "default";
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
keep-power-in-suspend;
|
||||
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clocks MOUT_MMC1>, <&clocks SCLK_MMC1>;
|
||||
assigned-clock-rates = <0>, <50000000>;
|
||||
assigned-clock-parents = <&clocks MOUT_MPLL>;
|
||||
|
||||
wlan@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
@@ -475,6 +790,10 @@
|
||||
pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &tf_detect>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clocks MOUT_MMC2>, <&clocks SCLK_MMC2>;
|
||||
assigned-clock-rates = <0>, <50000000>;
|
||||
assigned-clock-parents = <&clocks MOUT_MPLL>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
|
@@ -36,3 +36,252 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sleep_cfg>;
|
||||
|
||||
/* Based on vendor kernel v2.6.35.7 */
|
||||
sleep_cfg: sleep-cfg {
|
||||
PIN_SLP(gpa0-0, PREV, NONE);
|
||||
PIN_SLP(gpa0-1, PREV, NONE);
|
||||
PIN_SLP(gpa0-2, PREV, NONE);
|
||||
PIN_SLP(gpa0-3, OUT1, NONE);
|
||||
PIN_SLP(gpa0-4, PREV, NONE);
|
||||
PIN_SLP(gpa0-5, PREV, NONE);
|
||||
PIN_SLP(gpa0-6, PREV, NONE);
|
||||
PIN_SLP(gpa0-7, PREV, NONE);
|
||||
|
||||
PIN_SLP(gpa1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpa1-1, OUT0, NONE);
|
||||
PIN_SLP(gpa1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpa1-3, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpb-0, OUT0, NONE);
|
||||
PIN_SLP(gpb-1, OUT1, NONE);
|
||||
PIN_SLP(gpb-2, OUT0, NONE);
|
||||
PIN_SLP(gpb-3, PREV, NONE);
|
||||
PIN_SLP(gpb-4, INPUT, NONE);
|
||||
PIN_SLP(gpb-5, PREV, NONE);
|
||||
PIN_SLP(gpb-6, INPUT, DOWN);
|
||||
PIN_SLP(gpb-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpc0-0, OUT0, NONE);
|
||||
PIN_SLP(gpc0-1, INPUT, DOWN);
|
||||
PIN_SLP(gpc0-2, OUT0, NONE);
|
||||
PIN_SLP(gpc0-3, INPUT, DOWN);
|
||||
PIN_SLP(gpc0-4, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpc1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-1, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-3, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpd0-0, INPUT, DOWN);
|
||||
PIN_SLP(gpd0-1, OUT0, NONE);
|
||||
PIN_SLP(gpd0-2, INPUT, DOWN);
|
||||
PIN_SLP(gpd0-3, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpd1-0, INPUT, NONE);
|
||||
PIN_SLP(gpd1-1, INPUT, NONE);
|
||||
PIN_SLP(gpd1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpd1-3, INPUT, DOWN);
|
||||
PIN_SLP(gpd1-4, INPUT, DOWN);
|
||||
PIN_SLP(gpd1-5, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpe0-0, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-1, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-2, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-3, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-4, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-5, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-6, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpe1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-1, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-3, OUT0, NONE);
|
||||
PIN_SLP(gpe1-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpf0-0, OUT0, NONE);
|
||||
PIN_SLP(gpf0-1, OUT0, NONE);
|
||||
PIN_SLP(gpf0-2, OUT0, NONE);
|
||||
PIN_SLP(gpf0-3, OUT0, NONE);
|
||||
PIN_SLP(gpf0-4, OUT0, NONE);
|
||||
PIN_SLP(gpf0-5, OUT0, NONE);
|
||||
PIN_SLP(gpf0-6, OUT0, NONE);
|
||||
PIN_SLP(gpf0-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf1-0, OUT0, NONE);
|
||||
PIN_SLP(gpf1-1, OUT0, NONE);
|
||||
PIN_SLP(gpf1-2, OUT0, NONE);
|
||||
PIN_SLP(gpf1-3, OUT0, NONE);
|
||||
PIN_SLP(gpf1-4, OUT0, NONE);
|
||||
PIN_SLP(gpf1-5, OUT0, NONE);
|
||||
PIN_SLP(gpf1-6, OUT0, NONE);
|
||||
PIN_SLP(gpf1-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf2-0, OUT0, NONE);
|
||||
PIN_SLP(gpf2-1, OUT0, NONE);
|
||||
PIN_SLP(gpf2-2, OUT0, NONE);
|
||||
PIN_SLP(gpf2-3, OUT0, NONE);
|
||||
PIN_SLP(gpf2-4, OUT0, NONE);
|
||||
PIN_SLP(gpf2-5, OUT0, NONE);
|
||||
PIN_SLP(gpf2-6, OUT0, NONE);
|
||||
PIN_SLP(gpf2-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf3-0, OUT0, NONE);
|
||||
PIN_SLP(gpf3-1, OUT0, NONE);
|
||||
PIN_SLP(gpf3-2, OUT0, NONE);
|
||||
PIN_SLP(gpf3-3, OUT0, NONE);
|
||||
PIN_SLP(gpf3-4, PREV, NONE);
|
||||
PIN_SLP(gpf3-5, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpg0-0, INPUT, DOWN);
|
||||
PIN_SLP(gpg0-1, INPUT, DOWN);
|
||||
PIN_SLP(gpg0-2, INPUT, NONE);
|
||||
PIN_SLP(gpg0-3, INPUT, DOWN);
|
||||
PIN_SLP(gpg0-4, INPUT, DOWN);
|
||||
PIN_SLP(gpg0-5, INPUT, DOWN);
|
||||
PIN_SLP(gpg0-6, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpg1-0, OUT0, NONE);
|
||||
PIN_SLP(gpg1-1, OUT1, NONE);
|
||||
PIN_SLP(gpg1-2, PREV, NONE);
|
||||
PIN_SLP(gpg1-3, OUT1, NONE);
|
||||
PIN_SLP(gpg1-4, OUT1, NONE);
|
||||
PIN_SLP(gpg1-5, OUT1, NONE);
|
||||
PIN_SLP(gpg1-6, OUT1, NONE);
|
||||
|
||||
PIN_SLP(gpg2-0, OUT0, NONE);
|
||||
PIN_SLP(gpg2-1, OUT0, NONE);
|
||||
PIN_SLP(gpg2-2, INPUT, NONE);
|
||||
PIN_SLP(gpg2-3, OUT0, NONE);
|
||||
PIN_SLP(gpg2-4, OUT0, NONE);
|
||||
PIN_SLP(gpg2-5, OUT0, NONE);
|
||||
PIN_SLP(gpg2-6, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpg3-0, PREV, UP);
|
||||
PIN_SLP(gpg3-1, PREV, UP);
|
||||
PIN_SLP(gpg3-2, INPUT, NONE);
|
||||
PIN_SLP(gpg3-3, INPUT, DOWN);
|
||||
PIN_SLP(gpg3-4, OUT0, NONE);
|
||||
PIN_SLP(gpg3-5, OUT0, NONE);
|
||||
PIN_SLP(gpg3-6, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpi-0, PREV, NONE);
|
||||
PIN_SLP(gpi-1, INPUT, DOWN);
|
||||
PIN_SLP(gpi-2, PREV, NONE);
|
||||
PIN_SLP(gpi-3, PREV, NONE);
|
||||
PIN_SLP(gpi-4, PREV, NONE);
|
||||
PIN_SLP(gpi-5, INPUT, DOWN);
|
||||
PIN_SLP(gpi-6, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpj0-0, INPUT, NONE);
|
||||
PIN_SLP(gpj0-1, INPUT, NONE);
|
||||
PIN_SLP(gpj0-2, INPUT, NONE);
|
||||
PIN_SLP(gpj0-3, INPUT, NONE);
|
||||
PIN_SLP(gpj0-4, INPUT, NONE);
|
||||
PIN_SLP(gpj0-5, INPUT, DOWN);
|
||||
PIN_SLP(gpj0-6, OUT0, NONE);
|
||||
PIN_SLP(gpj0-7, INPUT, NONE);
|
||||
|
||||
PIN_SLP(gpj1-0, OUT1, NONE);
|
||||
PIN_SLP(gpj1-1, OUT0, NONE);
|
||||
PIN_SLP(gpj1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpj1-3, PREV, NONE);
|
||||
PIN_SLP(gpj1-4, PREV, NONE);
|
||||
PIN_SLP(gpj1-5, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpj2-0, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-1, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-2, OUT0, NONE);
|
||||
PIN_SLP(gpj2-3, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-4, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-5, PREV, NONE);
|
||||
PIN_SLP(gpj2-6, PREV, NONE);
|
||||
PIN_SLP(gpj2-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpj3-0, INPUT, NONE);
|
||||
PIN_SLP(gpj3-1, INPUT, NONE);
|
||||
PIN_SLP(gpj3-2, OUT0, NONE);
|
||||
PIN_SLP(gpj3-3, INPUT, DOWN);
|
||||
PIN_SLP(gpj3-4, INPUT, NONE);
|
||||
PIN_SLP(gpj3-5, INPUT, NONE);
|
||||
PIN_SLP(gpj3-6, INPUT, NONE);
|
||||
PIN_SLP(gpj3-7, INPUT, NONE);
|
||||
|
||||
PIN_SLP(gpj4-0, INPUT, NONE);
|
||||
PIN_SLP(gpj4-1, INPUT, DOWN);
|
||||
PIN_SLP(gpj4-2, PREV, NONE);
|
||||
PIN_SLP(gpj4-3, INPUT, NONE);
|
||||
PIN_SLP(gpj4-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp01-0, OUT1, NONE);
|
||||
PIN_SLP(mp01-1, OUT0, NONE);
|
||||
PIN_SLP(mp01-2, INPUT, DOWN);
|
||||
PIN_SLP(mp01-3, INPUT, DOWN);
|
||||
PIN_SLP(mp01-4, OUT1, NONE);
|
||||
PIN_SLP(mp01-5, INPUT, DOWN);
|
||||
PIN_SLP(mp01-6, INPUT, DOWN);
|
||||
PIN_SLP(mp01-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp02-0, INPUT, DOWN);
|
||||
PIN_SLP(mp02-1, INPUT, DOWN);
|
||||
PIN_SLP(mp02-2, INPUT, NONE);
|
||||
PIN_SLP(mp02-3, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp03-0, INPUT, DOWN);
|
||||
PIN_SLP(mp03-1, INPUT, DOWN);
|
||||
PIN_SLP(mp03-2, OUT1, NONE);
|
||||
PIN_SLP(mp03-3, OUT0, NONE);
|
||||
PIN_SLP(mp03-4, INPUT, NONE);
|
||||
PIN_SLP(mp03-5, OUT0, NONE);
|
||||
PIN_SLP(mp03-6, INPUT, DOWN);
|
||||
PIN_SLP(mp03-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp04-0, INPUT, DOWN);
|
||||
PIN_SLP(mp04-1, OUT0, NONE);
|
||||
PIN_SLP(mp04-2, INPUT, DOWN);
|
||||
PIN_SLP(mp04-3, OUT0, NONE);
|
||||
PIN_SLP(mp04-4, INPUT, DOWN);
|
||||
PIN_SLP(mp04-5, INPUT, DOWN);
|
||||
PIN_SLP(mp04-6, OUT0, NONE);
|
||||
PIN_SLP(mp04-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp05-0, INPUT, NONE);
|
||||
PIN_SLP(mp05-1, INPUT, NONE);
|
||||
PIN_SLP(mp05-2, INPUT, NONE);
|
||||
PIN_SLP(mp05-3, INPUT, NONE);
|
||||
PIN_SLP(mp05-4, INPUT, DOWN);
|
||||
PIN_SLP(mp05-5, OUT0, NONE);
|
||||
PIN_SLP(mp05-6, INPUT, DOWN);
|
||||
PIN_SLP(mp05-7, PREV, NONE);
|
||||
|
||||
PIN_SLP(mp06-0, INPUT, DOWN);
|
||||
PIN_SLP(mp06-1, INPUT, DOWN);
|
||||
PIN_SLP(mp06-2, INPUT, DOWN);
|
||||
PIN_SLP(mp06-3, INPUT, DOWN);
|
||||
PIN_SLP(mp06-4, INPUT, DOWN);
|
||||
PIN_SLP(mp06-5, INPUT, DOWN);
|
||||
PIN_SLP(mp06-6, INPUT, DOWN);
|
||||
PIN_SLP(mp06-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp07-0, INPUT, DOWN);
|
||||
PIN_SLP(mp07-1, INPUT, DOWN);
|
||||
PIN_SLP(mp07-2, INPUT, DOWN);
|
||||
PIN_SLP(mp07-3, INPUT, DOWN);
|
||||
PIN_SLP(mp07-4, INPUT, DOWN);
|
||||
PIN_SLP(mp07-5, INPUT, DOWN);
|
||||
PIN_SLP(mp07-6, INPUT, DOWN);
|
||||
PIN_SLP(mp07-7, INPUT, DOWN);
|
||||
};
|
||||
};
|
||||
|
||||
&wm8994 {
|
||||
/* GPIO3 (BCLK2) and GPIO4 (LRCLK2) as outputs */
|
||||
wlf,gpio-cfg = <0xa101 0x8100 0x8100 0x8100 0x8100 0xa101
|
||||
0x0100 0x8100 0x0100 0x0100 0x0100>;
|
||||
};
|
||||
|
@@ -49,15 +49,303 @@
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
||||
|
||||
i2c_fmradio: i2c-gpio-8 {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&gpd1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
scl-gpios = <&gpd1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
||||
i2c-gpio,delay-us = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fm_i2c_pins>;
|
||||
|
||||
fmradio@10 {
|
||||
compatible = "silabs,si470x";
|
||||
reg = <0x10>;
|
||||
interrupt-parent = <&gpj2>;
|
||||
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpj2 5 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fm_irq &fm_rst>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&aliases {
|
||||
i2c8 = &i2c_fmradio;
|
||||
};
|
||||
|
||||
&pinctrl0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sleep_cfg>;
|
||||
|
||||
fm_i2c_pins: fm-i2c-pins {
|
||||
samsung,pins = "gpd1-2", "gpd1-3";
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
fm_irq: fm-irq {
|
||||
samsung,pins = "gpj2-4";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_UP>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
fm_rst: fm-rst {
|
||||
samsung,pins = "gpj2-5";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
massmemory_en: massmemory-en {
|
||||
samsung,pins = "gpj2-7";
|
||||
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
|
||||
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
|
||||
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
|
||||
};
|
||||
|
||||
/* Based on CyanogenMod 3.0.101 kernel */
|
||||
sleep_cfg: sleep-cfg {
|
||||
PIN_SLP(gpa0-0, PREV, NONE);
|
||||
PIN_SLP(gpa0-1, PREV, NONE);
|
||||
PIN_SLP(gpa0-2, PREV, NONE);
|
||||
PIN_SLP(gpa0-3, OUT1, NONE);
|
||||
PIN_SLP(gpa0-4, INPUT, DOWN);
|
||||
PIN_SLP(gpa0-5, OUT0, NONE);
|
||||
PIN_SLP(gpa0-6, INPUT, DOWN);
|
||||
PIN_SLP(gpa0-7, OUT1, NONE);
|
||||
|
||||
PIN_SLP(gpa1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpa1-1, OUT0, NONE);
|
||||
PIN_SLP(gpa1-2, INPUT, NONE);
|
||||
PIN_SLP(gpa1-3, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpb-0, OUT0, NONE);
|
||||
PIN_SLP(gpb-1, OUT1, NONE);
|
||||
PIN_SLP(gpb-2, OUT0, NONE);
|
||||
PIN_SLP(gpb-3, PREV, NONE);
|
||||
PIN_SLP(gpb-4, INPUT, NONE);
|
||||
PIN_SLP(gpb-5, PREV, NONE);
|
||||
PIN_SLP(gpb-6, INPUT, DOWN);
|
||||
PIN_SLP(gpb-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpc0-0, OUT0, NONE);
|
||||
PIN_SLP(gpc0-1, INPUT, DOWN);
|
||||
PIN_SLP(gpc0-2, OUT0, NONE);
|
||||
PIN_SLP(gpc0-3, INPUT, NONE);
|
||||
PIN_SLP(gpc0-4, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpc1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-1, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-3, INPUT, DOWN);
|
||||
PIN_SLP(gpc1-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpd0-0, INPUT, DOWN);
|
||||
PIN_SLP(gpd0-1, OUT0, NONE);
|
||||
PIN_SLP(gpd0-2, INPUT, DOWN);
|
||||
PIN_SLP(gpd0-3, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpd1-0, INPUT, NONE);
|
||||
PIN_SLP(gpd1-1, INPUT, NONE);
|
||||
PIN_SLP(gpd1-2, INPUT, NONE);
|
||||
PIN_SLP(gpd1-3, INPUT, NONE);
|
||||
PIN_SLP(gpd1-4, INPUT, DOWN);
|
||||
PIN_SLP(gpd1-5, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpe0-0, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-1, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-2, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-3, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-4, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-5, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-6, INPUT, DOWN);
|
||||
PIN_SLP(gpe0-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpe1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-1, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpe1-3, OUT0, NONE);
|
||||
PIN_SLP(gpe1-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpf0-0, OUT0, NONE);
|
||||
PIN_SLP(gpf0-1, OUT0, NONE);
|
||||
PIN_SLP(gpf0-2, OUT0, NONE);
|
||||
PIN_SLP(gpf0-3, OUT0, NONE);
|
||||
PIN_SLP(gpf0-4, OUT0, NONE);
|
||||
PIN_SLP(gpf0-5, OUT0, NONE);
|
||||
PIN_SLP(gpf0-6, OUT0, NONE);
|
||||
PIN_SLP(gpf0-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf1-0, OUT0, NONE);
|
||||
PIN_SLP(gpf1-1, OUT0, NONE);
|
||||
PIN_SLP(gpf1-2, OUT0, NONE);
|
||||
PIN_SLP(gpf1-3, OUT0, NONE);
|
||||
PIN_SLP(gpf1-4, OUT0, NONE);
|
||||
PIN_SLP(gpf1-5, OUT0, NONE);
|
||||
PIN_SLP(gpf1-6, OUT0, NONE);
|
||||
PIN_SLP(gpf1-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf2-0, OUT0, NONE);
|
||||
PIN_SLP(gpf2-1, OUT0, NONE);
|
||||
PIN_SLP(gpf2-2, OUT0, NONE);
|
||||
PIN_SLP(gpf2-3, OUT0, NONE);
|
||||
PIN_SLP(gpf2-4, OUT0, NONE);
|
||||
PIN_SLP(gpf2-5, OUT0, NONE);
|
||||
PIN_SLP(gpf2-6, OUT0, NONE);
|
||||
PIN_SLP(gpf2-7, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpf3-0, OUT0, NONE);
|
||||
PIN_SLP(gpf3-1, OUT0, NONE);
|
||||
PIN_SLP(gpf3-2, OUT0, NONE);
|
||||
PIN_SLP(gpf3-3, OUT0, NONE);
|
||||
PIN_SLP(gpf3-4, PREV, NONE);
|
||||
PIN_SLP(gpf3-5, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpg0-0, OUT0, NONE);
|
||||
PIN_SLP(gpg0-1, INPUT, NONE);
|
||||
PIN_SLP(gpg0-2, INPUT, NONE);
|
||||
PIN_SLP(gpg0-3, INPUT, NONE);
|
||||
PIN_SLP(gpg0-4, INPUT, NONE);
|
||||
PIN_SLP(gpg0-5, INPUT, NONE);
|
||||
PIN_SLP(gpg0-6, INPUT, NONE);
|
||||
|
||||
PIN_SLP(gpg1-0, OUT0, NONE);
|
||||
PIN_SLP(gpg1-1, OUT1, NONE);
|
||||
PIN_SLP(gpg1-2, PREV, NONE);
|
||||
PIN_SLP(gpg1-3, OUT1, NONE);
|
||||
PIN_SLP(gpg1-4, OUT1, NONE);
|
||||
PIN_SLP(gpg1-5, OUT1, NONE);
|
||||
PIN_SLP(gpg1-6, OUT1, NONE);
|
||||
|
||||
PIN_SLP(gpg2-0, OUT0, NONE);
|
||||
PIN_SLP(gpg2-1, OUT0, NONE);
|
||||
PIN_SLP(gpg2-2, INPUT, NONE);
|
||||
PIN_SLP(gpg2-3, OUT0, NONE);
|
||||
PIN_SLP(gpg2-4, OUT0, NONE);
|
||||
PIN_SLP(gpg2-5, OUT0, NONE);
|
||||
PIN_SLP(gpg2-6, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpg3-0, OUT1, NONE);
|
||||
PIN_SLP(gpg3-1, OUT0, NONE);
|
||||
PIN_SLP(gpg3-2, INPUT, NONE);
|
||||
PIN_SLP(gpg3-3, INPUT, DOWN);
|
||||
PIN_SLP(gpg3-4, OUT0, NONE);
|
||||
PIN_SLP(gpg3-5, OUT0, NONE);
|
||||
PIN_SLP(gpg3-6, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpi-0, PREV, NONE);
|
||||
PIN_SLP(gpi-1, INPUT, DOWN);
|
||||
PIN_SLP(gpi-2, PREV, NONE);
|
||||
PIN_SLP(gpi-3, PREV, NONE);
|
||||
PIN_SLP(gpi-4, PREV, NONE);
|
||||
PIN_SLP(gpi-5, INPUT, DOWN);
|
||||
PIN_SLP(gpi-6, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(gpj0-0, INPUT, NONE);
|
||||
PIN_SLP(gpj0-1, INPUT, NONE);
|
||||
PIN_SLP(gpj0-2, INPUT, NONE);
|
||||
PIN_SLP(gpj0-3, INPUT, NONE);
|
||||
PIN_SLP(gpj0-4, INPUT, NONE);
|
||||
PIN_SLP(gpj0-5, INPUT, DOWN);
|
||||
PIN_SLP(gpj0-6, OUT0, NONE);
|
||||
PIN_SLP(gpj0-7, INPUT, NONE);
|
||||
|
||||
PIN_SLP(gpj1-0, INPUT, DOWN);
|
||||
PIN_SLP(gpj1-1, OUT0, NONE);
|
||||
PIN_SLP(gpj1-2, INPUT, DOWN);
|
||||
PIN_SLP(gpj1-3, PREV, NONE);
|
||||
PIN_SLP(gpj1-4, PREV, NONE);
|
||||
PIN_SLP(gpj1-5, OUT0, NONE);
|
||||
|
||||
PIN_SLP(gpj2-0, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-1, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-2, OUT0, NONE);
|
||||
PIN_SLP(gpj2-3, INPUT, DOWN);
|
||||
PIN_SLP(gpj2-4, INPUT, UP);
|
||||
PIN_SLP(gpj2-5, PREV, NONE);
|
||||
PIN_SLP(gpj2-6, PREV, NONE);
|
||||
PIN_SLP(gpj2-7, OUT1, NONE);
|
||||
|
||||
PIN_SLP(gpj3-0, INPUT, NONE);
|
||||
PIN_SLP(gpj3-1, INPUT, NONE);
|
||||
PIN_SLP(gpj3-2, OUT0, NONE);
|
||||
PIN_SLP(gpj3-3, INPUT, DOWN);
|
||||
PIN_SLP(gpj3-4, INPUT, NONE);
|
||||
PIN_SLP(gpj3-5, INPUT, NONE);
|
||||
PIN_SLP(gpj3-6, INPUT, NONE);
|
||||
PIN_SLP(gpj3-7, INPUT, NONE);
|
||||
|
||||
PIN_SLP(gpj4-0, INPUT, NONE);
|
||||
PIN_SLP(gpj4-1, INPUT, DOWN);
|
||||
PIN_SLP(gpj4-2, PREV, NONE);
|
||||
PIN_SLP(gpj4-3, INPUT, NONE);
|
||||
PIN_SLP(gpj4-4, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp01-0, INPUT, DOWN);
|
||||
PIN_SLP(mp01-1, OUT0, NONE);
|
||||
PIN_SLP(mp01-2, INPUT, DOWN);
|
||||
PIN_SLP(mp01-3, INPUT, DOWN);
|
||||
PIN_SLP(mp01-4, OUT1, NONE);
|
||||
PIN_SLP(mp01-5, INPUT, DOWN);
|
||||
PIN_SLP(mp01-6, INPUT, DOWN);
|
||||
PIN_SLP(mp01-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp02-0, INPUT, DOWN);
|
||||
PIN_SLP(mp02-1, INPUT, DOWN);
|
||||
PIN_SLP(mp02-2, INPUT, NONE);
|
||||
PIN_SLP(mp02-3, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp03-0, INPUT, DOWN);
|
||||
PIN_SLP(mp03-1, INPUT, DOWN);
|
||||
PIN_SLP(mp03-2, OUT1, NONE);
|
||||
PIN_SLP(mp03-3, OUT0, NONE);
|
||||
PIN_SLP(mp03-4, INPUT, NONE);
|
||||
PIN_SLP(mp03-5, OUT1, NONE);
|
||||
PIN_SLP(mp03-6, INPUT, DOWN);
|
||||
PIN_SLP(mp03-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp04-0, INPUT, DOWN);
|
||||
PIN_SLP(mp04-1, OUT0, NONE);
|
||||
PIN_SLP(mp04-2, INPUT, DOWN);
|
||||
PIN_SLP(mp04-3, OUT0, NONE);
|
||||
PIN_SLP(mp04-4, INPUT, DOWN);
|
||||
PIN_SLP(mp04-5, INPUT, DOWN);
|
||||
PIN_SLP(mp04-6, OUT0, NONE);
|
||||
PIN_SLP(mp04-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp05-0, INPUT, NONE);
|
||||
PIN_SLP(mp05-1, INPUT, NONE);
|
||||
PIN_SLP(mp05-2, INPUT, NONE);
|
||||
PIN_SLP(mp05-3, INPUT, NONE);
|
||||
PIN_SLP(mp05-4, INPUT, DOWN);
|
||||
PIN_SLP(mp05-5, OUT0, NONE);
|
||||
PIN_SLP(mp05-6, INPUT, DOWN);
|
||||
PIN_SLP(mp05-7, PREV, NONE);
|
||||
|
||||
PIN_SLP(mp06-0, INPUT, DOWN);
|
||||
PIN_SLP(mp06-1, INPUT, DOWN);
|
||||
PIN_SLP(mp06-2, INPUT, DOWN);
|
||||
PIN_SLP(mp06-3, INPUT, DOWN);
|
||||
PIN_SLP(mp06-4, INPUT, DOWN);
|
||||
PIN_SLP(mp06-5, INPUT, DOWN);
|
||||
PIN_SLP(mp06-6, INPUT, DOWN);
|
||||
PIN_SLP(mp06-7, INPUT, DOWN);
|
||||
|
||||
PIN_SLP(mp07-0, INPUT, DOWN);
|
||||
PIN_SLP(mp07-1, INPUT, DOWN);
|
||||
PIN_SLP(mp07-2, INPUT, DOWN);
|
||||
PIN_SLP(mp07-3, INPUT, DOWN);
|
||||
PIN_SLP(mp07-4, INPUT, DOWN);
|
||||
PIN_SLP(mp07-5, INPUT, DOWN);
|
||||
PIN_SLP(mp07-6, INPUT, DOWN);
|
||||
PIN_SLP(mp07-7, INPUT, DOWN);
|
||||
};
|
||||
};
|
||||
|
||||
&sdhci0 {
|
||||
@@ -67,4 +355,8 @@
|
||||
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
assigned-clocks = <&clocks MOUT_MMC0>, <&clocks SCLK_MMC0>;
|
||||
assigned-clock-rates = <0>, <52000000>;
|
||||
assigned-clock-parents = <&clocks MOUT_MPLL>;
|
||||
};
|
||||
|
@@ -18,6 +18,13 @@
|
||||
|
||||
#include <dt-bindings/pinctrl/samsung.h>
|
||||
|
||||
#define PIN_SLP(_pin, _mode, _pull) \
|
||||
_pin { \
|
||||
samsung,pins = #_pin; \
|
||||
samsung,pin-con-pdn = <EXYNOS_PIN_PDN_ ##_mode>; \
|
||||
samsung,pin-pud-pdn = <S3C64XX_PIN_PULL_ ##_pull>; \
|
||||
}
|
||||
|
||||
&pinctrl0 {
|
||||
gpa0: gpa0 {
|
||||
gpio-controller;
|
||||
@@ -195,7 +202,7 @@
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
gpgi: gpgi {
|
||||
gpi: gpi {
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
@@ -159,6 +159,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
adc: adc@e1700000 {
|
||||
compatible = "samsung,s5pv210-adc";
|
||||
reg = <0xe1700000 0x1000>;
|
||||
interrupt-parent = <&vic2>;
|
||||
interrupts = <23>, <24>;
|
||||
clocks = <&clocks CLK_TSADC>;
|
||||
clock-names = "adc";
|
||||
#io-channel-cells = <1>;
|
||||
io-channel-ranges;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
spi0: spi@e1300000 {
|
||||
compatible = "samsung,s5pv210-spi";
|
||||
reg = <0xe1300000 0x1000>;
|
||||
@@ -614,7 +626,7 @@
|
||||
clock-names = "fimc",
|
||||
"sclk_fimc";
|
||||
samsung,pix-limits = <4224 8192 1920 4224>;
|
||||
samsung,mainscaler-ext;
|
||||
samsung,min-pix-alignment = <16 8>;
|
||||
samsung,cam-if;
|
||||
};
|
||||
|
||||
@@ -628,8 +640,10 @@
|
||||
clock-names = "fimc",
|
||||
"sclk_fimc";
|
||||
samsung,pix-limits = <4224 8192 1920 4224>;
|
||||
samsung,min-pix-alignment = <1 1>;
|
||||
samsung,mainscaler-ext;
|
||||
samsung,cam-if;
|
||||
samsung,lcd-wb;
|
||||
};
|
||||
|
||||
fimc2: fimc@fb400000 {
|
||||
@@ -641,9 +655,10 @@
|
||||
<&clocks SCLK_FIMC2>;
|
||||
clock-names = "fimc",
|
||||
"sclk_fimc";
|
||||
samsung,pix-limits = <4224 8192 1920 4224>;
|
||||
samsung,mainscaler-ext;
|
||||
samsung,lcd-wb;
|
||||
samsung,pix-limits = <1920 8192 1280 1920>;
|
||||
samsung,min-pix-alignment = <16 8>;
|
||||
samsung,rotators = <0>;
|
||||
samsung,cam-if;
|
||||
};
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user