Device tree changes for omap variants for v4.18 merge window

This series adds support for am335x-pockebeagle and also add missing
 pinctrl configuration for am335x evm and beagle bone variants.
 
 There are also changes to add missing omap3 oscillator clocks for audio,
 and fixes am437x tps65218 irq type used for various board specific
 files.
 
 There are also few minor fixes included that are not urgent. The
 fixes for n8x0 audio also depend on driver changes, and the hp t410
 mmc card detect mux typo is harmless.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAlrshakRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXOpKQ//S6SIffY3vW7/+1P5zJVNxbThK1wYZoxZ
 6XxkyWBhJtdNU47j8WUw0/1niYtTQLn9gFMM8H5MM7zaWmWlxQOA4VmoeOssivwU
 WZjqR+6M6M1JfdMWnToR6DhGsUwAkcvCoYFCCkEepRXcvUHGhdY+fyiyB8tJXaKC
 YlInFEwgrlJUrR3mY4MFj9jaUIH/HaskSWVMfkBIqYtYhKbMytZDcSR3JLY2XppX
 KatbK/vbToHDgebEkYGEm2FNcUtxPBI19aOvbKnMKSIEwxG6aTwoZOrqkiAQtKVn
 roCdgpxzhhyDcKOuTffhLc77idTEIRKaLcKmy2EeuvRDuiXnG0Q8e4m87L8YvJ9U
 26vVLBmNKd+1M3KFNloETKfUuBAH1yGHZkNR8ST1iFdbSvPlIvXVb09n96d8WOes
 +/FqUplRz4Bze+rUVHp1WzVGdCRb2mVGZYXJbPlrc0NMVF3i4NYtzxl4f4ZmsN5K
 Z49kiPtLagyT2GhpltqcY8GjVPpBr3CTu1pJm5XFkzZ+hBXqrKfcOavcCjwfs0ef
 vcbHGVvtdQLJME/W7hDj7LzOLPqo/cvmlaa1ALZQ/tfKj7a8+tCl/HA4Gsq1nHey
 UEtb07s7ywoQOf9z6p8bdtUyoxNz5cSOmhzmZuahkBF8GYkxNlWBlbjlVs21UoqA
 UKbrZW+u4AE=
 =y/p3
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.18/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Device tree changes for omap variants for v4.18 merge window

This series adds support for am335x-pockebeagle and also add missing
pinctrl configuration for am335x evm and beagle bone variants.

There are also changes to add missing omap3 oscillator clocks for audio,
and fixes am437x tps65218 irq type used for various board specific
files.

There are also few minor fixes included that are not urgent. The
fixes for n8x0 audio also depend on driver changes, and the hp t410
mmc card detect mux typo is harmless.

* tag 'omap-for-v4.18/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: correct invalid I/O definition for MMC/SD card detect on T410
  ARM: dts: omap2420-n810: Correct the audio codec (tlv320aic33) node
  ARM: dts: omap2420-n810: Enable McBSP2 for audio
  ARM: dts: am437x-sk-evm: Correct tps65218 irq type
  ARM: dts: am437x-epos-evm: Correct tps65218 irq type
  ARM: dts: am437x-cm-t43: Correct tps65218 irq type
  ARM: dts: am437x-gp-evm: Correct tps65218 irq type
  ARM: dts: Add am335x-pocketbeagle
  ARM: dts: am33xx: Add pinmux data for mmc1 in am335x-evm, evmsk and beaglebone
  ARM: dts: omap3-gta04: Add fixed 26MHz clock as fck for twl
  ARM: dts: omap3-pandora: Add fixed 26MHz clock as fck for twl
  ARM: dts: omap3-beagle-xm: Add fixed 26MHz clock as fck for twl
  ARM: dts: logicpd-som-lv: Enable Touchscreen controller

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2018-05-14 01:19:33 -07:00
commit ccba0c6848
16 changed files with 507 additions and 10 deletions

View File

@ -688,6 +688,7 @@ dtb-$(CONFIG_SOC_AM33XX) += \
am335x-pdu001.dtb \ am335x-pdu001.dtb \
am335x-pepper.dtb \ am335x-pepper.dtb \
am335x-phycore-rdk.dtb \ am335x-phycore-rdk.dtb \
am335x-pocketbeagle.dtb \
am335x-shc.dtb \ am335x-shc.dtb \
am335x-sbc-t335.dtb \ am335x-sbc-t335.dtb \
am335x-sl50.dtb \ am335x-sl50.dtb \

View File

@ -161,7 +161,14 @@ AM33XX_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
mmc1_pins: pinmux_mmc1_pins { mmc1_pins: pinmux_mmc1_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* GPIO0_6 */ AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spio0_cs1.gpio0_6 */
AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat0.mmc0_dat0 */
AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat1.mmc0_dat1 */
AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat2.mmc0_dat2 */
AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */
AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_cmd.mmc0_cmd */
AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_clk.mmc0_clk */
AM33XX_IOPAD(0x9a0, PIN_INPUT | MUX_MODE4) /* mcasp0_aclkr.mmc0_sdwp */
>; >;
}; };

View File

@ -303,7 +303,14 @@ AM33XX_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
mmc1_pins: pinmux_mmc1_pins { mmc1_pins: pinmux_mmc1_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */ AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat0.mmc0_dat0 */
AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat1.mmc0_dat1 */
AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat2.mmc0_dat2 */
AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */
AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_cmd.mmc0_cmd */
AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_clk.mmc0_clk */
AM33XX_IOPAD(0x9a0, PIN_INPUT | MUX_MODE4) /* mcasp0_aclkr.mmc0_sdwp */
>; >;
}; };

View File

@ -399,7 +399,14 @@ AM33XX_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
mmc1_pins: pinmux_mmc1_pins { mmc1_pins: pinmux_mmc1_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */ AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat0.mmc0_dat0 */
AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat1.mmc0_dat1 */
AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat2.mmc0_dat2 */
AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */
AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_cmd.mmc0_cmd */
AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_clk.mmc0_clk */
AM33XX_IOPAD(0x9a0, PIN_INPUT | MUX_MODE4) /* mcasp0_aclkr.mmc0_sdwp */
>; >;
}; };

View File

@ -0,0 +1,124 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
*
* Author: Robert Nelson <robertcnelson@gmail.com>
*/
/ {
cpus {
cpu@0 {
cpu0-supply = <&dcdc2_reg>;
};
};
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0x20000000>; /* 512 MB */
};
};
&cpu0_opp_table {
/*
* Octavo Systems:
* The EFUSE_SMA register is not programmed for any of the AM335x wafers
* we get and we are not programming them during our production test.
* Therefore, from a DEVICE_ID revision point of view, the silicon looks
* like it is Revision 2.1. However, from an EFUSE_SMA point of view for
* the HW OPP table, the silicon looks like it is Revision 1.0 (ie the
* EFUSE_SMA register reads as all zeros).
*/
oppnitro-1000000000 {
opp-supported-hw = <0x06 0x0100>;
};
};
&am33xx_pinmux {
i2c0_pins: pinmux-i2c0-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x988, PIN_INPUT_PULLUP | MUX_MODE0) /* (C17) I2C0_SDA.I2C0_SDA */
AM33XX_IOPAD(0x98c, PIN_INPUT_PULLUP | MUX_MODE0) /* (C16) I2C0_SCL.I2C0_SCL */
>;
};
};
&i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
status = "okay";
clock-frequency = <400000>;
tps: tps@24 {
reg = <0x24>;
};
};
/include/ "tps65217.dtsi"
&tps {
interrupts = <7>; /* NMI */
interrupt-parent = <&intc>;
ti,pmic-shutdown-controller;
pwrbutton {
interrupts = <2>;
status = "okay";
};
regulators {
dcdc1_reg: regulator@0 {
regulator-name = "vdds_dpr";
regulator-always-on;
};
dcdc2_reg: regulator@1 {
/* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
regulator-name = "vdd_mpu";
regulator-min-microvolt = <925000>;
regulator-max-microvolt = <1351500>;
regulator-boot-on;
regulator-always-on;
};
dcdc3_reg: regulator@2 {
/* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
regulator-name = "vdd_core";
regulator-min-microvolt = <925000>;
regulator-max-microvolt = <1150000>;
regulator-boot-on;
regulator-always-on;
};
ldo1_reg: regulator@3 {
regulator-name = "vio,vrtc,vdds";
regulator-always-on;
};
ldo2_reg: regulator@4 {
regulator-name = "vdd_3v3aux";
regulator-always-on;
};
ldo3_reg: regulator@5 {
regulator-name = "vdd_1v8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
ldo4_reg: regulator@6 {
regulator-name = "vdd_3v3a";
regulator-always-on;
};
};
};
&aes {
status = "okay";
};
&sham {
status = "okay";
};

View File

@ -0,0 +1,237 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
*
* Author: Robert Nelson <robertcnelson@gmail.com>
*/
/dts-v1/;
#include "am33xx.dtsi"
#include "am335x-osd335x-common.dtsi"
/ {
model = "TI AM335x PocketBeagle";
compatible = "ti,am335x-pocketbeagle", "ti,am335x-bone", "ti,am33xx";
chosen {
stdout-path = &uart0;
};
leds {
pinctrl-names = "default";
pinctrl-0 = <&usr_leds_pins>;
compatible = "gpio-leds";
usr0 {
label = "beaglebone:green:usr0";
gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "heartbeat";
default-state = "off";
};
usr1 {
label = "beaglebone:green:usr1";
gpios = <&gpio1 22 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "mmc0";
default-state = "off";
};
usr2 {
label = "beaglebone:green:usr2";
gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "cpu0";
default-state = "off";
};
usr3 {
label = "beaglebone:green:usr3";
gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
default-state = "off";
};
};
vmmcsd_fixed: fixedregulator0 {
compatible = "regulator-fixed";
regulator-name = "vmmcsd_fixed";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
};
&am33xx_pinmux {
i2c2_pins: pinmux-i2c2-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE3) /* (D17) uart1_rtsn.I2C2_SCL */
AM33XX_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE3) /* (D18) uart1_ctsn.I2C2_SDA */
>;
};
ehrpwm0_pins: pinmux-ehrpwm0-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x990, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (A13) mcasp0_aclkx.ehrpwm0A */
>;
};
ehrpwm1_pins: pinmux-ehrpwm1-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x848, PIN_OUTPUT_PULLDOWN | MUX_MODE6) /* (U14) gpmc_a2.ehrpwm1A */
>;
};
mmc0_pins: pinmux-mmc0-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* (C15) spi0_cs1.gpio0[6] */
AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* (G16) mmc0_dat0.mmc0_dat0 */
AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* (G15) mmc0_dat1.mmc0_dat1 */
AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* (F18) mmc0_dat2.mmc0_dat2 */
AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* (F17) mmc0_dat3.mmc0_dat3 */
AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* (G18) mmc0_cmd.mmc0_cmd */
AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* (G17) mmc0_clk.mmc0_clk */
AM33XX_IOPAD(0x9a0, PIN_INPUT | MUX_MODE4) /* (B12) mcasp0_aclkr.mmc0_sdwp */
>;
};
spi0_pins: pinmux-spi0-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x950, PIN_INPUT_PULLUP | MUX_MODE0) /* (A17) spi0_sclk.spi0_sclk */
AM33XX_IOPAD(0x954, PIN_INPUT_PULLUP | MUX_MODE0) /* (B17) spi0_d0.spi0_d0 */
AM33XX_IOPAD(0x958, PIN_INPUT_PULLUP | MUX_MODE0) /* (B16) spi0_d1.spi0_d1 */
AM33XX_IOPAD(0x95c, PIN_INPUT_PULLUP | MUX_MODE0) /* (A16) spi0_cs0.spi0_cs0 */
>;
};
spi1_pins: pinmux-spi1-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x964, PIN_INPUT_PULLUP | MUX_MODE4) /* (C18) eCAP0_in_PWM0_out.spi1_sclk */
AM33XX_IOPAD(0x968, PIN_INPUT_PULLUP | MUX_MODE4) /* (E18) uart0_ctsn.spi1_d0 */
AM33XX_IOPAD(0x96c, PIN_INPUT_PULLUP | MUX_MODE4) /* (E17) uart0_rtsn.spi1_d1 */
AM33XX_IOPAD(0x9b0, PIN_INPUT_PULLUP | MUX_MODE4) /* (A15) xdma_event_intr0.spi1_cs1 */
>;
};
usr_leds_pins: pinmux-usr-leds-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x854, PIN_OUTPUT | MUX_MODE7) /* (V15) gpmc_a5.gpio1[21] - USR_LED_0 */
AM33XX_IOPAD(0x858, PIN_OUTPUT | MUX_MODE7) /* (U15) gpmc_a6.gpio1[22] - USR_LED_1 */
AM33XX_IOPAD(0x85c, PIN_OUTPUT | MUX_MODE7) /* (T15) gpmc_a7.gpio1[23] - USR_LED_2 */
AM33XX_IOPAD(0x860, PIN_OUTPUT | MUX_MODE7) /* (V16) gpmc_a8.gpio1[24] - USR_LED_3 */
>;
};
uart0_pins: pinmux-uart0-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) /* (E15) uart0_rxd.uart0_rxd */
AM33XX_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* (E16) uart0_txd.uart0_txd */
>;
};
uart4_pins: pinmux-uart4-pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE6) /* (T17) gpmc_wait0.uart4_rxd */
AM33XX_IOPAD(0x874, PIN_OUTPUT_PULLDOWN | MUX_MODE6) /* (U17) gpmc_wpn.uart4_txd */
>;
};
};
&epwmss0 {
status = "okay";
};
&ehrpwm0 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&ehrpwm0_pins>;
};
&epwmss1 {
status = "okay";
};
&ehrpwm1 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&ehrpwm1_pins>;
};
&i2c0 {
eeprom: eeprom@50 {
compatible = "atmel,24c256";
reg = <0x50>;
};
};
&i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
status = "okay";
clock-frequency = <400000>;
};
&mmc1 {
status = "okay";
vmmc-supply = <&vmmcsd_fixed>;
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
};
&rtc {
system-power-controller;
};
&tscadc {
status = "okay";
adc {
ti,adc-channels = <0 1 2 3 4 5 6 7>;
ti,chan-step-avg = <16 16 16 16 16 16 16 16>;
ti,chan-step-opendelay = <0x98 0x98 0x98 0x98 0x98 0x98 0x98 0x98>;
ti,chan-step-sampledelay = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
};
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pins>;
status = "okay";
};
&uart4 {
pinctrl-names = "default";
pinctrl-0 = <&uart4_pins>;
status = "okay";
};
&usb {
status = "okay";
};
&usb_ctrl_mod {
status = "okay";
};
&usb0_phy {
status = "okay";
};
&usb0 {
status = "okay";
dr_mode = "otg";
};
&usb1_phy {
status = "okay";
};
&usb1 {
status = "okay";
dr_mode = "host";
};
&cppi41dma {
status = "okay";
};

View File

@ -203,7 +203,7 @@ &i2c0 {
tps65218: tps65218@24 { tps65218: tps65218@24 {
compatible = "ti,tps65218"; compatible = "ti,tps65218";
reg = <0x24>; reg = <0x24>;
interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* NMIn */ interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_LOW>; /* NMIn */
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;

View File

@ -543,7 +543,7 @@ &i2c0 {
tps65218: tps65218@24 { tps65218: tps65218@24 {
reg = <0x24>; reg = <0x24>;
compatible = "ti,tps65218"; compatible = "ti,tps65218";
interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* NMIn */ interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_LOW>; /* NMIn */
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;

View File

@ -429,7 +429,7 @@ &i2c0 {
tps@24 { tps@24 {
compatible = "ti,tps65218"; compatible = "ti,tps65218";
reg = <0x24>; reg = <0x24>;
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;

View File

@ -595,7 +595,7 @@ &i2c0 {
tps65218: tps65218@24 { tps65218: tps65218@24 {
reg = <0x24>; reg = <0x24>;
compatible = "ti,tps65218"; compatible = "ti,tps65218";
interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* NMIn */ interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_LOW>; /* NMIn */
interrupt-controller; interrupt-controller;
#interrupt-cells = <2>; #interrupt-cells = <2>;

View File

@ -77,7 +77,7 @@ DM814X_IOPAD(0x09d8, PIN_INPUT_PULLUP | 0x1) /* SD2_DAT[1] */
DM814X_IOPAD(0x09dc, PIN_INPUT_PULLUP | 0x1) /* SD2_DAT[0] */ DM814X_IOPAD(0x09dc, PIN_INPUT_PULLUP | 0x1) /* SD2_DAT[0] */
DM814X_IOPAD(0x09e0, PIN_INPUT | 0x1) /* SD2_CLK */ DM814X_IOPAD(0x09e0, PIN_INPUT | 0x1) /* SD2_CLK */
DM814X_IOPAD(0x09f4, PIN_INPUT_PULLUP | 0x2) /* SD2_CMD */ DM814X_IOPAD(0x09f4, PIN_INPUT_PULLUP | 0x2) /* SD2_CMD */
DM814X_IOPAD(0x0920, PIN_INPUT | 40) /* SD2_SDCD */ DM814X_IOPAD(0x0920, PIN_INPUT | 0x40) /* SD2_SDCD */
>; >;
}; };

View File

@ -91,6 +91,25 @@ &i2c2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>; pinctrl-0 = <&i2c2_pins>;
clock-frequency = <400000>; clock-frequency = <400000>;
touchscreen: tsc2004@48 {
compatible = "ti,tsc2004";
reg = <0x48>;
vio-supply = <&vaux1>;
pinctrl-names = "default";
pinctrl-0 = <&tsc2004_pins>;
interrupts-extended = <&gpio5 25 IRQ_TYPE_EDGE_RISING>; /* gpio 153 */
touchscreen-fuzz-x = <4>;
touchscreen-fuzz-y = <7>;
touchscreen-fuzz-pressure = <2>;
touchscreen-size-x = <4096>;
touchscreen-size-y = <4096>;
touchscreen-max-pressure = <2048>;
ti,x-plate-ohms = <280>;
ti,esd-recovery-timeout-ms = <8000>;
};
}; };
&i2c3 { &i2c3 {
@ -201,6 +220,12 @@ OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT | MUX_MODE0) /* i2c1_scl.i2c1_scl */
OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0) /* i2c1_sda.i2c1_sda */ OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0) /* i2c1_sda.i2c1_sda */
>; >;
}; };
tsc2004_pins: pinmux_tsc2004_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x2186, PIN_INPUT | MUX_MODE4) /* mcbsp4_dr.gpio_153 */
>;
};
}; };
&omap3_pmx_wkup { &omap3_pmx_wkup {

View File

@ -6,11 +6,70 @@
/ { / {
model = "Nokia N810"; model = "Nokia N810";
compatible = "nokia,n810", "nokia,n8x0", "ti,omap2420", "ti,omap2"; compatible = "nokia,n810", "nokia,n8x0", "ti,omap2420", "ti,omap2";
vio_ape: vio_ape {
compatible = "regulator-fixed";
regulator-name = "vio_ape";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
v28_aic: v28_aic {
compatible = "regulator-fixed";
regulator-name = "v28_aic";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
};
&omap2420_pmx {
mcbsp2_pins: mcbsp2_pins {
pinctrl-single,pins = <
OMAP2420_CORE_IOPAD(0x0124, PIN_INPUT | MUX_MODE1) /* eac_ac_sclk.mcbsp2_clkx */
OMAP2420_CORE_IOPAD(0x0125, PIN_INPUT | MUX_MODE1) /* eac_ac_fs.mcbsp2_fsx */
OMAP2420_CORE_IOPAD(0x0126, PIN_INPUT | MUX_MODE1) /* eac_ac_din.mcbsp2_dr */
OMAP2420_CORE_IOPAD(0x0127, PIN_OUTPUT | MUX_MODE1) /* eac_ac_dout.mcbsp2_dx */
>;
};
aic33_pins: aic33_pins {
pinctrl-single,pins = <
OMAP2420_CORE_IOPAD(0x0129, PIN_OUTPUT | MUX_MODE3) /* eac_ac_rst.gpio118 */
OMAP2420_CORE_IOPAD(0x00e8, PIN_OUTPUT | MUX_MODE2) /* vlynq_tx1.sys_clkout2 */
>;
};
}; };
&i2c2 { &i2c2 {
aic3x@18 { aic33@18 {
compatible = "tlv320aic3x"; compatible = "ti,tlv320aic33";
reg = <0x18>; reg = <0x18>;
pinctrl-names = "default";
pinctrl-0 = <&aic33_pins>;
gpio-reset = <&gpio4 22 GPIO_ACTIVE_LOW>; /* gpio118 */
ai3x-gpio-func = <
10 /* AIC3X_GPIO1_FUNC_DIGITAL_MIC_MODCLK */
5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
>;
ai3x-micbias-vg = <1>; /* 2V */
AVDD-supply = <&v28_aic>;
DRVDD-supply = <&v28_aic>;
IOVDD-supply = <&vio_ape>;
DVDD-supply = <&vio_ape>;
assigned-clocks = <&sys_clkout2_src>, <&sys_clkout2>;
assigned-clock-parents = <&func_96m_ck>;
assigned-clock-rates = <0>, <12000000>;
}; };
}; };
&mcbsp2 {
pinctrl-names = "default";
pinctrl-0 = <&mcbsp2_pins>;
status = "okay";
};

View File

@ -30,6 +30,13 @@ aliases {
ethernet = &ethernet; ethernet = &ethernet;
}; };
/* fixed 26MHz oscillator */
hfclk_26m: oscillator {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <26000000>;
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
@ -274,6 +281,9 @@ twl: twl@48 {
interrupts = <7>; /* SYS_NIRQ cascaded to intc */ interrupts = <7>; /* SYS_NIRQ cascaded to intc */
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
clocks = <&hfclk_26m>;
clock-names = "fck";
twl_audio: audio { twl_audio: audio {
compatible = "ti,twl4030-audio"; compatible = "ti,twl4030-audio";
codec { codec {

View File

@ -30,6 +30,13 @@ aliases {
display0 = &lcd; display0 = &lcd;
}; };
/* fixed 26MHz oscillator */
hfclk_26m: oscillator {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <26000000>;
};
gpio-keys { gpio-keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
@ -312,6 +319,9 @@ twl: twl@48 {
interrupts = <7>; /* SYS_NIRQ cascaded to intc */ interrupts = <7>; /* SYS_NIRQ cascaded to intc */
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
clocks = <&hfclk_26m>;
clock-names = "fck";
twl_audio: audio { twl_audio: audio {
compatible = "ti,twl4030-audio"; compatible = "ti,twl4030-audio";
ti,enable-vibra = <1>; ti,enable-vibra = <1>;

View File

@ -27,6 +27,13 @@ aliases {
display0 = &lcd; display0 = &lcd;
}; };
/* fixed 26MHz oscillator */
hfclk_26m: oscillator {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <26000000>;
};
tv: connector { tv: connector {
compatible = "connector-analog-tv"; compatible = "connector-analog-tv";
label = "tv"; label = "tv";
@ -357,6 +364,9 @@ twl: twl@48 {
interrupts = <7>; /* SYS_NIRQ cascaded to intc */ interrupts = <7>; /* SYS_NIRQ cascaded to intc */
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
clocks = <&hfclk_26m>;
clock-names = "fck";
twl_power: power { twl_power: power {
compatible = "ti,twl4030-power-reset"; compatible = "ti,twl4030-power-reset";
ti,use_poweroff; ti,use_poweroff;