Omap dts changes for v4.3 merge window. There are also related
changes for reemoteproc platform_data and audio options for omap2plus_defconfig to keep audio working when changing boards to use SIMPLE_CARD. The summary of changes is: - A large set of audio related changes for SIMPLE_CARD from Peter Ujfalusi <peter.ujfalusi@ti.com> for am335x and am437x - Pinctrl dts defines for dra7 virtual mode to configure timings - Change to use cpsw slave0 for dra7 Ethernet - Remove unconfigured and wrong l3-mux entry for dm816x - Add support for Gumstix Palo35 and TobiDuo boards, and Overo PoP NAND and McBSP2 - Start using new HDMI binding for tilcdc - Start using new sDMA crossbar for dra7 - Start using rproc for am335x and am437x M3 coprocessor -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJVpj6yAAoJEBvUPslcq6VzfckP/AvU56IuA4wHlnHgLGtXprhb etGAW40xAzWlBF+fZcIUkKnRmncJ59j5s9Ou9D47q0PvDobRDiqYsZUg7M4qd1SX DhiALUhZS1q5+JvW5CCUhz3kKsQ1iSicJE+0lSOmlHNfXK0r8DO868M6+TQqVHlW 0B5bo9cKDjWxF19wQfUv1Q3PtYcTXZI/oDFGH3zD2PhPZQLkTGs9h2rhrmqqpcuj OH6qRUOQmpCVTjrcp1aqODn8qy3laivSH5TUyqsuYt7uPVIwPNtZFNLSCLHSs4o2 N8EgOV/R09+4u4JRIXra1ooawJp+izSt6057180UZfkdnkV/qX9dYshs4v95QN1U iiv2fFTtSvlwHKAFn27LKS1crDtcNKDmlGePOnYufCfcRl+Zy6t48o49LBS7Xyoq nafdLpqSRhhjkNNwgSNaBLHbZS6alRnTQIDykLlVTkIcMXF13AN5yOZs2gqT5+HQ SLohf5PAb1u4iGRW+4vF5jGFKAANZEdpOMSxy1BVOKRsE712C81hTzgN1/z28IW5 REB1OHMnguf78fIqnhPYl9ml69Q358YtLtHQacqzCxA8QpHn/dEe+F6CyJINCl53 qJwg8UpEUQRheJJJTGlZ1tSpy7gnn89ZPx0QVQZPYYvO/fWA9C6Vq6RJ5PNTy69Q q7uHoCL0bETCNK0BiUEH =sPfQ -----END PGP SIGNATURE----- Merge tag 'omap-for-v4.3/dt-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt Merge "omap dts changes for v4.3, part 1" from Tony Lindgren: Omap dts changes for v4.3 merge window. There are also related changes for reemoteproc platform_data and audio options for omap2plus_defconfig to keep audio working when changing boards to use SIMPLE_CARD. The summary of changes is: - A large set of audio related changes for SIMPLE_CARD from Peter Ujfalusi <peter.ujfalusi@ti.com> for am335x and am437x - Pinctrl dts defines for dra7 virtual mode to configure timings - Change to use cpsw slave0 for dra7 Ethernet - Remove unconfigured and wrong l3-mux entry for dm816x - Add support for Gumstix Palo35 and TobiDuo boards, and Overo PoP NAND and McBSP2 - Start using new HDMI binding for tilcdc - Start using new sDMA crossbar for dra7 - Start using rproc for am335x and am437x M3 coprocessor * tag 'omap-for-v4.3/dt-pt1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (32 commits) ARM: dts: am335x-evm: Switch using simple-audio-card for audio support ARM: dts: am335x-evm: Add sleep pin settings for mcasp1 ARM: dts: am335x-evm: Rename pinctrl section for McASP1 ARM: dts: am335x-evm: Fix mcasp1 node's indentation ARM: dts: am335x-evmsk: Switch using simple-audio-card for audio support ARM: dts: am335x-evmsk: Add sleep pin settings for mcasp1 ARM: dts: am335x-evmsk: Fix mcasp1 node's indentation ARM: dts: am437x-gp-evm: Enable analog audio via simple-card ARM: dts: am437x-gp-evm: McASP1 node for audio support ARM: dts: am437x-gp-evm: Add node for tlv320aic3106 audio codec ARM: dts: am437x-gp-evm: Rename fixed regulator vmmcsd_fixed to evm_v3_3d ARM: dts: am437x-gp-evm: Add gpio-hog for configuring the display/audio mux ARM: dts: am43xx-epos-evm: Enable analog audio via simple-card ARM: dts: am43xx-epos-evm: Add node for tlv320aic3111 audio codec ARM: dts: am43xx-epos-evm: McASP1 node for audio support ARM: dts: am43xx-epos-evm: Add regulator for VBAT and DCDC4 of tps65218 ARM: dts: am43xx-epos-evm: Add gpio-hog for configuring the display/audio mux ARM: dts: am437x-sk-evm: Switch using simple-audio-card for audio support ARM: dts: am437x-sk-evm: Add sleep pin settings for mcasp1 ARM: omap2plus_defconfig: Enable audio related config options ... Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
b1d725ee58
|
@ -409,15 +409,19 @@ dtb-$(CONFIG_ARCH_OMAP3) += \
|
|||
omap3-overo-alto35.dtb \
|
||||
omap3-overo-chestnut43.dtb \
|
||||
omap3-overo-gallop43.dtb \
|
||||
omap3-overo-palo35.dtb \
|
||||
omap3-overo-palo43.dtb \
|
||||
omap3-overo-storm-alto35.dtb \
|
||||
omap3-overo-storm-chestnut43.dtb \
|
||||
omap3-overo-storm-gallop43.dtb \
|
||||
omap3-overo-storm-palo35.dtb \
|
||||
omap3-overo-storm-palo43.dtb \
|
||||
omap3-overo-storm-summit.dtb \
|
||||
omap3-overo-storm-tobi.dtb \
|
||||
omap3-overo-storm-tobiduo.dtb \
|
||||
omap3-overo-summit.dtb \
|
||||
omap3-overo-tobi.dtb \
|
||||
omap3-overo-tobiduo.dtb \
|
||||
omap3-pandora-600mhz.dtb \
|
||||
omap3-pandora-1ghz.dtb \
|
||||
omap3-sbc-t3517.dtb \
|
||||
|
|
|
@ -68,16 +68,26 @@
|
|||
|
||||
&lcdc {
|
||||
status = "okay";
|
||||
port {
|
||||
lcdc_0: endpoint@0 {
|
||||
remote-endpoint = <&hdmi_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
hdmi {
|
||||
compatible = "ti,tilcdc,slave";
|
||||
i2c = <&i2c0>;
|
||||
&i2c0 {
|
||||
tda19988 {
|
||||
compatible = "nxp,tda998x";
|
||||
reg = <0x70>;
|
||||
pinctrl-names = "default", "off";
|
||||
pinctrl-0 = <&nxp_hdmi_bonelt_pins>;
|
||||
pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>;
|
||||
status = "okay";
|
||||
|
||||
port {
|
||||
hdmi_0: endpoint@0 {
|
||||
remote-endpoint = <&lcdc_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -136,16 +136,29 @@
|
|||
};
|
||||
|
||||
sound {
|
||||
compatible = "ti,da830-evm-audio";
|
||||
ti,model = "AM335x-EVM";
|
||||
ti,audio-codec = <&tlv320aic3106>;
|
||||
ti,mcasp-controller = <&mcasp1>;
|
||||
ti,codec-clock-rate = <12000000>;
|
||||
ti,audio-routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT",
|
||||
"LINE1L", "Line In",
|
||||
"LINE1R", "Line In";
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "AM335x-EVM";
|
||||
simple-audio-card,widgets =
|
||||
"Headphone", "Headphone Jack",
|
||||
"Line", "Line In";
|
||||
simple-audio-card,routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT",
|
||||
"LINE1L", "Line In",
|
||||
"LINE1R", "Line In";
|
||||
simple-audio-card,format = "dsp_b";
|
||||
simple-audio-card,bitclock-master = <&sound_master>;
|
||||
simple-audio-card,frame-master = <&sound_master>;
|
||||
simple-audio-card,bitclock-inversion;
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&mcasp1>;
|
||||
};
|
||||
|
||||
sound_master: simple-audio-card,codec {
|
||||
sound-dai = <&tlv320aic3106>;
|
||||
system-clock-frequency = <12000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -342,7 +355,7 @@
|
|||
>;
|
||||
};
|
||||
|
||||
am335x_evm_audio_pins: am335x_evm_audio_pins {
|
||||
mcasp1_pins: mcasp1_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_rxerr.mcasp1_fsx */
|
||||
|
@ -351,6 +364,15 @@
|
|||
>;
|
||||
};
|
||||
|
||||
mcasp1_pins_sleep: mcasp1_pins_sleep {
|
||||
pinctrl-single,pins = <
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x108 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
|
||||
dcan1_pins_default: dcan1_pins_default {
|
||||
pinctrl-single,pins = <
|
||||
0x168 (PIN_OUTPUT | MUX_MODE2) /* uart0_ctsn.d_can1_tx */
|
||||
|
@ -460,6 +482,7 @@
|
|||
};
|
||||
|
||||
tlv320aic3106: tlv320aic3106@1b {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ti,tlv320aic3106";
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
|
@ -575,19 +598,21 @@
|
|||
#include "tps65910.dtsi"
|
||||
|
||||
&mcasp1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&am335x_evm_audio_pins>;
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
pinctrl-1 = <&mcasp1_pins_sleep>;
|
||||
|
||||
status = "okay";
|
||||
status = "okay";
|
||||
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializers */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
0 0 1 2
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializers */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
0 0 1 2
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
};
|
||||
|
||||
&tps {
|
||||
|
|
|
@ -141,14 +141,26 @@
|
|||
};
|
||||
|
||||
sound {
|
||||
compatible = "ti,da830-evm-audio";
|
||||
ti,model = "AM335x-EVMSK";
|
||||
ti,audio-codec = <&tlv320aic3106>;
|
||||
ti,mcasp-controller = <&mcasp1>;
|
||||
ti,codec-clock-rate = <24000000>;
|
||||
ti,audio-routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT";
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "AM335x-EVMSK";
|
||||
simple-audio-card,widgets =
|
||||
"Headphone", "Headphone Jack";
|
||||
simple-audio-card,routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT";
|
||||
simple-audio-card,format = "dsp_b";
|
||||
simple-audio-card,bitclock-master = <&sound_master>;
|
||||
simple-audio-card,frame-master = <&sound_master>;
|
||||
simple-audio-card,bitclock-inversion;
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&mcasp1>;
|
||||
};
|
||||
|
||||
sound_master: simple-audio-card,codec {
|
||||
sound-dai = <&tlv320aic3106>;
|
||||
system-clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
panel {
|
||||
|
@ -396,6 +408,15 @@
|
|||
>;
|
||||
};
|
||||
|
||||
mcasp1_pins_sleep: mcasp1_pins_sleep {
|
||||
pinctrl-single,pins = <
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x108 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
|
||||
mmc2_pins: pinmux_mmc2_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_31 */
|
||||
|
@ -462,6 +483,7 @@
|
|||
};
|
||||
|
||||
tlv320aic3106: tlv320aic3106@1b {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ti,tlv320aic3106";
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
|
@ -661,19 +683,21 @@
|
|||
};
|
||||
|
||||
&mcasp1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
pinctrl-1 = <&mcasp1_pins_sleep>;
|
||||
|
||||
status = "okay";
|
||||
status = "okay";
|
||||
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializers */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
0 0 1 2
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializers */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
0 0 1 2
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
};
|
||||
|
||||
&tscadc {
|
||||
|
|
|
@ -103,6 +103,15 @@
|
|||
#size-cells = <1>;
|
||||
ranges = <0 0x44c00000 0x280000>;
|
||||
|
||||
wkup_m3: wkup_m3@100000 {
|
||||
compatible = "ti,am3352-wkup-m3";
|
||||
reg = <0x100000 0x4000>,
|
||||
<0x180000 0x2000>;
|
||||
reg-names = "umem", "dmem";
|
||||
ti,hwmods = "wkup_m3";
|
||||
ti,pm-firmware = "am335x-pm-firmware.elf";
|
||||
};
|
||||
|
||||
prcm: prcm@200000 {
|
||||
compatible = "ti,am3-prcm";
|
||||
reg = <0x200000 0x4000>;
|
||||
|
@ -762,14 +771,6 @@
|
|||
reg = <0x40300000 0x10000>; /* 64k */
|
||||
};
|
||||
|
||||
wkup_m3: wkup_m3@44d00000 {
|
||||
compatible = "ti,am3353-wkup-m3";
|
||||
reg = <0x44d00000 0x4000 /* M3 UMEM */
|
||||
0x44d80000 0x2000>; /* M3 DMEM */
|
||||
ti,hwmods = "wkup_m3";
|
||||
ti,no-reset-on-init;
|
||||
};
|
||||
|
||||
elm: elm@48080000 {
|
||||
compatible = "ti,am3352-elm";
|
||||
reg = <0x48080000 0x2000>;
|
||||
|
|
|
@ -83,6 +83,15 @@
|
|||
#size-cells = <1>;
|
||||
ranges = <0 0x44c00000 0x287000>;
|
||||
|
||||
wkup_m3: wkup_m3@100000 {
|
||||
compatible = "ti,am4372-wkup-m3";
|
||||
reg = <0x100000 0x4000>,
|
||||
<0x180000 0x2000>;
|
||||
reg-names = "umem", "dmem";
|
||||
ti,hwmods = "wkup_m3";
|
||||
ti,pm-firmware = "am335x-pm-firmware.elf";
|
||||
};
|
||||
|
||||
prcm: prcm@1f0000 {
|
||||
compatible = "ti,am4-prcm";
|
||||
reg = <0x1f0000 0x11000>;
|
||||
|
|
|
@ -24,9 +24,9 @@
|
|||
serial3 = &uart3;
|
||||
};
|
||||
|
||||
vmmcsd_fixed: fixedregulator-sd {
|
||||
evm_v3_3d: fixedregulator-v3_3d {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vmmcsd_fixed";
|
||||
regulator-name = "evm_v3_3d";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
enable-active-high;
|
||||
|
@ -83,17 +83,6 @@
|
|||
compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";
|
||||
label = "lcd";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&lcd_pins>;
|
||||
|
||||
/*
|
||||
* SelLCDorHDMI, LOW to select HDMI. This is not really the
|
||||
* panel's enable GPIO, but we don't have HDMI driver support nor
|
||||
* support to switch between two displays, so using this gpio as
|
||||
* panel's enable should be safe.
|
||||
*/
|
||||
enable-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
panel-timing {
|
||||
clock-frequency = <33000000>;
|
||||
hactive = <800>;
|
||||
|
@ -124,6 +113,32 @@
|
|||
clock-frequency = <12000000>;
|
||||
};
|
||||
|
||||
sound0: sound@0 {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "AM437x-GP-EVM";
|
||||
simple-audio-card,widgets =
|
||||
"Headphone", "Headphone Jack",
|
||||
"Line", "Line In";
|
||||
simple-audio-card,routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT",
|
||||
"LINE1L", "Line In",
|
||||
"LINE1R", "Line In";
|
||||
simple-audio-card,format = "dsp_b";
|
||||
simple-audio-card,bitclock-master = <&sound0_master>;
|
||||
simple-audio-card,frame-master = <&sound0_master>;
|
||||
simple-audio-card,bitclock-inversion;
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&mcasp1>;
|
||||
system-clock-frequency = <12000000>;
|
||||
};
|
||||
|
||||
sound0_master: simple-audio-card,codec {
|
||||
sound-dai = <&tlv320aic3106>;
|
||||
system-clock-frequency = <12000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&am43xx_pinmux {
|
||||
|
@ -270,7 +285,7 @@
|
|||
>;
|
||||
};
|
||||
|
||||
lcd_pins: lcd_pins {
|
||||
display_mux_pins: display_mux_pins {
|
||||
pinctrl-single,pins = <
|
||||
/* GPIO 5_8 to select LCD / HDMI */
|
||||
0x238 (PIN_OUTPUT_PULLUP | MUX_MODE7)
|
||||
|
@ -409,6 +424,24 @@
|
|||
0x234 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_rtsn.uart3_rtsn */
|
||||
>;
|
||||
};
|
||||
|
||||
mcasp1_pins: mcasp1_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x108 (PIN_OUTPUT_PULLDOWN | MUX_MODE4) /* mii1_col.mcasp1_axr2 */
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_rxerr.mcasp1_fsx */
|
||||
0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
|
||||
>;
|
||||
};
|
||||
|
||||
mcasp1_sleep_pins: mcasp1_sleep_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x108 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
|
@ -521,6 +554,19 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
tlv320aic3106: tlv320aic3106@1b {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ti,tlv320aic3106";
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
|
||||
/* Regulators */
|
||||
IOVDD-supply = <&evm_v3_3d>; /* V3_3D -> <tps63031> EN: V1_8D -> VBAT */
|
||||
AVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
|
||||
DRVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
|
||||
DVDD-supply = <&ldo1>; /* V1_8D -> LDO1 */
|
||||
};
|
||||
};
|
||||
|
||||
&epwmss0 {
|
||||
|
@ -558,13 +604,27 @@
|
|||
};
|
||||
|
||||
&gpio5 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&display_mux_pins>;
|
||||
status = "okay";
|
||||
ti,no-reset-on-init;
|
||||
|
||||
p8 {
|
||||
/*
|
||||
* SelLCDorHDMI selects between display and audio paths:
|
||||
* Low: HDMI display with audio via HDMI
|
||||
* High: LCD display with analog audio via aic3111 codec
|
||||
*/
|
||||
gpio-hog;
|
||||
gpios = <8 GPIO_ACTIVE_HIGH>;
|
||||
output-high;
|
||||
line-name = "SelLCDorHDMI";
|
||||
};
|
||||
};
|
||||
|
||||
&mmc1 {
|
||||
status = "okay";
|
||||
vmmc-supply = <&vmmcsd_fixed>;
|
||||
vmmc-supply = <&evm_v3_3d>;
|
||||
bus-width = <4>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc1_pins>;
|
||||
|
@ -790,3 +850,21 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mcasp1 {
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
pinctrl-1 = <&mcasp1_sleep_pins>;
|
||||
|
||||
status = "okay";
|
||||
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializers */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
0 0 1 2
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
};
|
||||
|
|
|
@ -32,14 +32,29 @@
|
|||
};
|
||||
|
||||
sound {
|
||||
compatible = "ti,da830-evm-audio";
|
||||
ti,model = "AM437x-SK-EVM";
|
||||
ti,audio-codec = <&tlv320aic3106>;
|
||||
ti,mcasp-controller = <&mcasp1>;
|
||||
ti,codec-clock-rate = <24000000>;
|
||||
ti,audio-routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT";
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "AM437x-SK-EVM";
|
||||
simple-audio-card,widgets =
|
||||
"Headphone", "Headphone Jack",
|
||||
"Line", "Line In";
|
||||
simple-audio-card,routing =
|
||||
"Headphone Jack", "HPLOUT",
|
||||
"Headphone Jack", "HPROUT",
|
||||
"LINE1L", "Line In",
|
||||
"LINE1R", "Line In";
|
||||
simple-audio-card,format = "dsp_b";
|
||||
simple-audio-card,bitclock-master = <&sound_master>;
|
||||
simple-audio-card,frame-master = <&sound_master>;
|
||||
simple-audio-card,bitclock-inversion;
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&mcasp1>;
|
||||
};
|
||||
|
||||
sound_master: simple-audio-card,codec {
|
||||
sound-dai = <&tlv320aic3106>;
|
||||
system-clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
matrix_keypad: matrix_keypad@0 {
|
||||
|
@ -364,6 +379,15 @@
|
|||
>;
|
||||
};
|
||||
|
||||
mcasp1_pins_sleep: mcasp1_pins_sleep {
|
||||
pinctrl-single,pins = <
|
||||
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x108 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
|
||||
lcd_pins: lcd_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x1c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpcm_ad7.gpio1_7 */
|
||||
|
@ -480,6 +504,7 @@
|
|||
};
|
||||
|
||||
tlv320aic3106: tlv320aic3106@1b {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ti,tlv320aic3106";
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
|
@ -640,8 +665,10 @@
|
|||
};
|
||||
|
||||
&mcasp1 {
|
||||
pinctrl-names = "default";
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
pinctrl-1 = <&mcasp1_pins_sleep>;
|
||||
|
||||
status = "okay";
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include <dt-bindings/pinctrl/am43xx.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/pwm/pwm.h>
|
||||
#include <dt-bindings/sound/tlv320aic31xx-micbias.h>
|
||||
|
||||
/ {
|
||||
model = "TI AM43x EPOS EVM";
|
||||
|
@ -31,21 +32,18 @@
|
|||
enable-active-high;
|
||||
};
|
||||
|
||||
vbat: fixedregulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbat";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
lcd0: display {
|
||||
compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";
|
||||
label = "lcd";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&lcd_pins>;
|
||||
|
||||
/*
|
||||
* SelLCDorHDMI, LOW to select HDMI. This is not really the
|
||||
* panel's enable GPIO, but we don't have HDMI driver support nor
|
||||
* support to switch between two displays, so using this gpio as
|
||||
* panel's enable should be safe.
|
||||
*/
|
||||
enable-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
panel-timing {
|
||||
clock-frequency = <33000000>;
|
||||
hactive = <800>;
|
||||
|
@ -108,6 +106,38 @@
|
|||
brightness-levels = <0 51 53 56 62 75 101 152 255>;
|
||||
default-brightness-level = <8>;
|
||||
};
|
||||
|
||||
sound0: sound@0 {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "AM43-EPOS-EVM";
|
||||
simple-audio-card,widgets =
|
||||
"Microphone", "Microphone Jack",
|
||||
"Headphone", "Headphone Jack",
|
||||
"Speaker", "Speaker";
|
||||
simple-audio-card,routing =
|
||||
"MIC1LP", "Microphone Jack",
|
||||
"MIC1RP", "Microphone Jack",
|
||||
"MIC1LP", "MICBIAS",
|
||||
"MIC1RP", "MICBIAS",
|
||||
"Headphone Jack", "HPL",
|
||||
"Headphone Jack", "HPR",
|
||||
"Speaker", "SPL",
|
||||
"Speaker", "SPR";
|
||||
simple-audio-card,format = "dsp_b";
|
||||
simple-audio-card,bitclock-master = <&sound0_master>;
|
||||
simple-audio-card,frame-master = <&sound0_master>;
|
||||
simple-audio-card,bitclock-inversion;
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&mcasp1>;
|
||||
system-clock-frequency = <12000000>;
|
||||
};
|
||||
|
||||
sound0_master: simple-audio-card,codec {
|
||||
sound-dai = <&tlv320aic3111>;
|
||||
system-clock-frequency = <12000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&am43xx_pinmux {
|
||||
|
@ -278,7 +308,7 @@
|
|||
>;
|
||||
};
|
||||
|
||||
lcd_pins: lcd_pins {
|
||||
display_mux_pins: display_mux_pins {
|
||||
pinctrl-single,pins = <
|
||||
/* GPMC CLK -> GPIO 2_1 to select LCD / HDMI */
|
||||
0x08C (PIN_OUTPUT_PULLUP | MUX_MODE7)
|
||||
|
@ -320,6 +350,24 @@
|
|||
0x204 (DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
|
||||
mcasp1_pins: mcasp1_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x1a0 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_ACLKR/MCASP1_ACLKX */
|
||||
0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_FSR/MCASP1_FSX */
|
||||
0x1a8 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)/* MCASP0_AXR1/MCASP1_AXR0 */
|
||||
0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_AHCLKX/MCASP1_AXR1 */
|
||||
>;
|
||||
};
|
||||
|
||||
mcasp1_sleep_pins: mcasp1_sleep_pins {
|
||||
pinctrl-single,pins = <
|
||||
0x1a0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE7)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&mmc1 {
|
||||
|
@ -399,6 +447,15 @@
|
|||
regulator-always-on;
|
||||
};
|
||||
|
||||
dcdc4: regulator-dcdc4 {
|
||||
compatible = "ti,tps65218-dcdc4";
|
||||
regulator-name = "vdcdc4";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dcdc5: regulator-dcdc5 {
|
||||
compatible = "ti,tps65218-dcdc5";
|
||||
regulator-name = "v1_0bat";
|
||||
|
@ -441,6 +498,23 @@
|
|||
touchscreen-size-x = <1024>;
|
||||
touchscreen-size-y = <600>;
|
||||
};
|
||||
|
||||
tlv320aic3111: tlv320aic3111@18 {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "ti,tlv320aic3111";
|
||||
reg = <0x18>;
|
||||
status = "okay";
|
||||
|
||||
ai31xx-micbias-vg = <MICBIAS_2_0V>;
|
||||
|
||||
/* Regulators */
|
||||
HPVDD-supply = <&dcdc4>; /* v3_3AUD -> V3_3D -> DCDC4 */
|
||||
SPRVDD-supply = <&vbat>; /* vbat */
|
||||
SPLVDD-supply = <&vbat>; /* vbat */
|
||||
AVDD-supply = <&dcdc4>; /* v3_3AUD -> V3_3D -> DCDC4 */
|
||||
IOVDD-supply = <&dcdc4>; /* V3_3D -> DCDC4 */
|
||||
DVDD-supply = <&ldo1>; /* V1_8AUD -> V1_8D -> LDO1 */
|
||||
};
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
|
@ -458,7 +532,21 @@
|
|||
};
|
||||
|
||||
&gpio2 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&display_mux_pins>;
|
||||
status = "okay";
|
||||
|
||||
p1 {
|
||||
/*
|
||||
* SelLCDorHDMI selects between display and audio paths:
|
||||
* Low: HDMI display with audio via HDMI
|
||||
* High: LCD display with analog audio via aic3111 codec
|
||||
*/
|
||||
gpio-hog;
|
||||
gpios = <1 GPIO_ACTIVE_HIGH>;
|
||||
output-high;
|
||||
line-name = "SelLCDorHDMI";
|
||||
};
|
||||
};
|
||||
|
||||
&gpio3 {
|
||||
|
@ -686,3 +774,21 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mcasp1 {
|
||||
#sound-dai-cells = <0>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&mcasp1_pins>;
|
||||
pinctrl-1 = <&mcasp1_sleep_pins>;
|
||||
|
||||
status = "okay";
|
||||
|
||||
op-mode = <0>; /* MCASP_IIS_MODE */
|
||||
tdm-slots = <2>;
|
||||
/* 4 serializer */
|
||||
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
||||
1 2 0 0
|
||||
>;
|
||||
tx-num-evt = <32>;
|
||||
rx-num-evt = <32>;
|
||||
};
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
* the whole bus hierarchy.
|
||||
*/
|
||||
ocp {
|
||||
compatible = "ti,omap3-l3-smx", "simple-bus";
|
||||
compatible = "simple-bus";
|
||||
reg = <0x44000000 0x10000>;
|
||||
interrupts = <9 10>;
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -308,6 +308,15 @@
|
|||
dma-requests = <127>;
|
||||
};
|
||||
|
||||
sdma_xbar: dma-router@4a002b78 {
|
||||
compatible = "ti,dra7-dma-crossbar";
|
||||
reg = <0x4a002b78 0xfc>;
|
||||
#dma-cells = <1>;
|
||||
dma-requests = <205>;
|
||||
ti,dma-safe-map = <0>;
|
||||
dma-masters = <&sdma>;
|
||||
};
|
||||
|
||||
gpio1: gpio@4ae10000 {
|
||||
compatible = "ti,omap4-gpio";
|
||||
reg = <0x4ae10000 0x200>;
|
||||
|
@ -403,7 +412,7 @@
|
|||
ti,hwmods = "uart1";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 49>, <&sdma 50>;
|
||||
dmas = <&sdma_xbar 49>, <&sdma_xbar 50>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -414,7 +423,7 @@
|
|||
ti,hwmods = "uart2";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 51>, <&sdma 52>;
|
||||
dmas = <&sdma_xbar 51>, <&sdma_xbar 52>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -425,7 +434,7 @@
|
|||
ti,hwmods = "uart3";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 53>, <&sdma 54>;
|
||||
dmas = <&sdma_xbar 53>, <&sdma_xbar 54>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -436,7 +445,7 @@
|
|||
ti,hwmods = "uart4";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 55>, <&sdma 56>;
|
||||
dmas = <&sdma_xbar 55>, <&sdma_xbar 56>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -447,7 +456,7 @@
|
|||
ti,hwmods = "uart5";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 63>, <&sdma 64>;
|
||||
dmas = <&sdma_xbar 63>, <&sdma_xbar 64>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -458,7 +467,7 @@
|
|||
ti,hwmods = "uart6";
|
||||
clock-frequency = <48000000>;
|
||||
status = "disabled";
|
||||
dmas = <&sdma 79>, <&sdma 80>;
|
||||
dmas = <&sdma_xbar 79>, <&sdma_xbar 80>;
|
||||
dma-names = "tx", "rx";
|
||||
};
|
||||
|
||||
|
@ -867,7 +876,7 @@
|
|||
ti,hwmods = "mmc1";
|
||||
ti,dual-volt;
|
||||
ti,needs-special-reset;
|
||||
dmas = <&sdma 61>, <&sdma 62>;
|
||||
dmas = <&sdma_xbar 61>, <&sdma_xbar 62>;
|
||||
dma-names = "tx", "rx";
|
||||
status = "disabled";
|
||||
pbias-supply = <&pbias_mmc_reg>;
|
||||
|
@ -879,7 +888,7 @@
|
|||
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
|
||||
ti,hwmods = "mmc2";
|
||||
ti,needs-special-reset;
|
||||
dmas = <&sdma 47>, <&sdma 48>;
|
||||
dmas = <&sdma_xbar 47>, <&sdma_xbar 48>;
|
||||
dma-names = "tx", "rx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -890,7 +899,7 @@
|
|||
interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
|
||||
ti,hwmods = "mmc3";
|
||||
ti,needs-special-reset;
|
||||
dmas = <&sdma 77>, <&sdma 78>;
|
||||
dmas = <&sdma_xbar 77>, <&sdma_xbar 78>;
|
||||
dma-names = "tx", "rx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -901,7 +910,7 @@
|
|||
interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
|
||||
ti,hwmods = "mmc4";
|
||||
ti,needs-special-reset;
|
||||
dmas = <&sdma 57>, <&sdma 58>;
|
||||
dmas = <&sdma_xbar 57>, <&sdma_xbar 58>;
|
||||
dma-names = "tx", "rx";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -1046,14 +1055,14 @@
|
|||
#size-cells = <0>;
|
||||
ti,hwmods = "mcspi1";
|
||||
ti,spi-num-cs = <4>;
|
||||
dmas = <&sdma 35>,
|
||||
<&sdma 36>,
|
||||
<&sdma 37>,
|
||||
<&sdma 38>,
|
||||
<&sdma 39>,
|
||||
<&sdma 40>,
|
||||
<&sdma 41>,
|
||||
<&sdma 42>;
|
||||
dmas = <&sdma_xbar 35>,
|
||||
<&sdma_xbar 36>,
|
||||
<&sdma_xbar 37>,
|
||||
<&sdma_xbar 38>,
|
||||
<&sdma_xbar 39>,
|
||||
<&sdma_xbar 40>,
|
||||
<&sdma_xbar 41>,
|
||||
<&sdma_xbar 42>;
|
||||
dma-names = "tx0", "rx0", "tx1", "rx1",
|
||||
"tx2", "rx2", "tx3", "rx3";
|
||||
status = "disabled";
|
||||
|
@ -1067,10 +1076,10 @@
|
|||
#size-cells = <0>;
|
||||
ti,hwmods = "mcspi2";
|
||||
ti,spi-num-cs = <2>;
|
||||
dmas = <&sdma 43>,
|
||||
<&sdma 44>,
|
||||
<&sdma 45>,
|
||||
<&sdma 46>;
|
||||
dmas = <&sdma_xbar 43>,
|
||||
<&sdma_xbar 44>,
|
||||
<&sdma_xbar 45>,
|
||||
<&sdma_xbar 46>;
|
||||
dma-names = "tx0", "rx0", "tx1", "rx1";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -1083,7 +1092,7 @@
|
|||
#size-cells = <0>;
|
||||
ti,hwmods = "mcspi3";
|
||||
ti,spi-num-cs = <2>;
|
||||
dmas = <&sdma 15>, <&sdma 16>;
|
||||
dmas = <&sdma_xbar 15>, <&sdma_xbar 16>;
|
||||
dma-names = "tx0", "rx0";
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -1096,7 +1105,7 @@
|
|||
#size-cells = <0>;
|
||||
ti,hwmods = "mcspi4";
|
||||
ti,spi-num-cs = <1>;
|
||||
dmas = <&sdma 70>, <&sdma 71>;
|
||||
dmas = <&sdma_xbar 70>, <&sdma_xbar 71>;
|
||||
dma-names = "tx0", "rx0";
|
||||
status = "disabled";
|
||||
};
|
||||
|
|
|
@ -343,6 +343,12 @@
|
|||
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
cpsw_sel_s0 {
|
||||
gpio-hog;
|
||||
gpios = <4 GPIO_ACTIVE_HIGH>;
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -571,9 +577,10 @@
|
|||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&cpsw_default>;
|
||||
pinctrl-1 = <&cpsw_sleep>;
|
||||
slaves = <1>;
|
||||
};
|
||||
|
||||
&cpsw_emac1 {
|
||||
&cpsw_emac0 {
|
||||
phy_id = <&davinci_mdio>, <3>;
|
||||
phy-mode = "rgmii";
|
||||
};
|
||||
|
@ -582,7 +589,6 @@
|
|||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&davinci_mdio_default>;
|
||||
pinctrl-1 = <&davinci_mdio_sleep>;
|
||||
active_slave = <1>;
|
||||
};
|
||||
|
||||
&dcan1 {
|
||||
|
|
|
@ -218,3 +218,58 @@
|
|||
pinctrl-0 = <&uart2_pins>;
|
||||
};
|
||||
|
||||
&mcbsp2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpmc {
|
||||
ranges = <0 0 0x00000000 0x20000000>;
|
||||
|
||||
nand@0,0 {
|
||||
linux,mtd-name= "micron,mt29c4g96maz";
|
||||
reg = <0 0 0>;
|
||||
nand-bus-width = <16>;
|
||||
gpmc,device-width = <2>;
|
||||
ti,nand-ecc-opt = "bch8";
|
||||
|
||||
gpmc,sync-clk-ps = <0>;
|
||||
gpmc,cs-on-ns = <0>;
|
||||
gpmc,cs-rd-off-ns = <44>;
|
||||
gpmc,cs-wr-off-ns = <44>;
|
||||
gpmc,adv-on-ns = <6>;
|
||||
gpmc,adv-rd-off-ns = <34>;
|
||||
gpmc,adv-wr-off-ns = <44>;
|
||||
gpmc,we-off-ns = <40>;
|
||||
gpmc,oe-off-ns = <54>;
|
||||
gpmc,access-ns = <64>;
|
||||
gpmc,rd-cycle-ns = <82>;
|
||||
gpmc,wr-cycle-ns = <82>;
|
||||
gpmc,wr-access-ns = <40>;
|
||||
gpmc,wr-data-mux-bus-ns = <0>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "SPL";
|
||||
reg = <0 0x80000>; /* 512KiB */
|
||||
};
|
||||
partition@80000 {
|
||||
label = "U-Boot";
|
||||
reg = <0x80000 0x1C0000>; /* 1792KiB */
|
||||
};
|
||||
partition@1c0000 {
|
||||
label = "Environment";
|
||||
reg = <0x240000 0x40000>; /* 256KiB */
|
||||
};
|
||||
partition@280000 {
|
||||
label = "Kernel";
|
||||
reg = <0x280000 0x800000>; /* 8192KiB */
|
||||
};
|
||||
partition@780000 {
|
||||
label = "Filesystem";
|
||||
reg = <0xA80000 0>;
|
||||
/* HACK: MTDPART_SIZ_FULL=0 so fill to end */
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -62,6 +62,7 @@
|
|||
OMAP3_CORE1_IOPAD(0x21ca, PIN_INPUT | MUX_MODE0) /* mcspi1_simo.mcspi1_simo */
|
||||
OMAP3_CORE1_IOPAD(0x21cc, PIN_INPUT | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
|
||||
OMAP3_CORE1_IOPAD(0x21ce, PIN_INPUT | MUX_MODE0) /* mcspi1_cs0.mcspi1_cs0 */
|
||||
OMAP3_CORE1_IOPAD(0x21d0, PIN_INPUT | MUX_MODE0) /* mcspi1_cs1.mcspi1_cs1 */
|
||||
>;
|
||||
};
|
||||
|
||||
|
@ -123,7 +124,7 @@
|
|||
label = "lcd";
|
||||
|
||||
reg = <1>; /* CS1 */
|
||||
spi-max-frequency = <10000000>;
|
||||
spi-max-frequency = <500000>;
|
||||
spi-cpol;
|
||||
spi-cpha;
|
||||
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Palo35 expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
#include "omap3-overo-common-peripherals.dtsi"
|
||||
#include "omap3-overo-common-lcd35.dtsi"
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&led_pins>;
|
||||
heartbeat {
|
||||
label = "overo:red:gpio21";
|
||||
gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; /* gpio_21 */
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
gpio22 {
|
||||
label = "overo:blue:gpio22";
|
||||
gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; /* gpio_22 */
|
||||
};
|
||||
};
|
||||
|
||||
gpio_keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&button_pins>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
button0@23 {
|
||||
label = "button0";
|
||||
linux,code = <BTN_0>;
|
||||
gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; /* gpio_23 */
|
||||
gpio-key,wakeup;
|
||||
};
|
||||
button1@14 {
|
||||
label = "button1";
|
||||
linux,code = <BTN_1>;
|
||||
gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; /* gpio_14 */
|
||||
gpio-key,wakeup;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Palo35 expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "omap3-overo.dtsi"
|
||||
#include "omap3-overo-palo35-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "OMAP35xx Gumstix Overo on Palo35";
|
||||
compatible = "gumstix,omap3-overo-palo35", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3";
|
||||
};
|
||||
|
||||
&omap3_pmx_core2 {
|
||||
led_pins: pinmux_led_pins {
|
||||
pinctrl-single,pins = <
|
||||
OMAP3430_CORE2_IOPAD(0x25ea, PIN_OUTPUT | MUX_MODE4) /* etk_d7.gpio_21 */
|
||||
OMAP3430_CORE2_IOPAD(0x25ec, PIN_OUTPUT | MUX_MODE4) /* etk_d8.gpio_22 */
|
||||
>;
|
||||
};
|
||||
|
||||
button_pins: pinmux_button_pins {
|
||||
pinctrl-single,pins = <
|
||||
OMAP3430_CORE2_IOPAD(0x25ee, PIN_INPUT | MUX_MODE4) /* etk_d9.gpio_23 */
|
||||
OMAP3430_CORE2_IOPAD(0x25dc, PIN_INPUT | MUX_MODE4) /* etk_d0.gpio_14 */
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Palo35 expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "omap3-overo-storm.dtsi"
|
||||
#include "omap3-overo-palo35-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "OMAP36xx/AM37xx/DM37xx Gumstix Overo on Palo35";
|
||||
compatible = "gumstix,omap3-overo-palo35", "gumstix,omap3-overo", "ti,omap36xx", "ti,omap3";
|
||||
};
|
||||
|
||||
&omap3_pmx_core2 {
|
||||
led_pins: pinmux_led_pins {
|
||||
pinctrl-single,pins = <
|
||||
OMAP3630_CORE2_IOPAD(0x25ea, PIN_OUTPUT | MUX_MODE4) /* etk_d7.gpio_21 */
|
||||
OMAP3630_CORE2_IOPAD(0x25ec, PIN_OUTPUT | MUX_MODE4) /* etk_d8.gpio_22 */
|
||||
>;
|
||||
};
|
||||
|
||||
button_pins: pinmux_button_pins {
|
||||
pinctrl-single,pins = <
|
||||
OMAP3630_CORE2_IOPAD(0x25ee, PIN_INPUT | MUX_MODE4) /* etk_d9.gpio_23 */
|
||||
OMAP3630_CORE2_IOPAD(0x25dc, PIN_INPUT | MUX_MODE4) /* etk_d0.gpio_14 */
|
||||
>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* TobiDuo expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "omap3-overo-storm.dtsi"
|
||||
#include "omap3-overo-tobiduo-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "OMAP36xx/AM37xx/DM37xx Gumstix Overo on TobiDuo";
|
||||
compatible = "gumstix,omap3-overo-tobiduo", "gumstix,omap3-overo", "ti,omap36xx", "ti,omap3";
|
||||
};
|
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* TobiDuo expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
#include "omap3-overo-common-peripherals.dtsi"
|
||||
|
||||
#include "omap-gpmc-smsc9221.dtsi"
|
||||
|
||||
&gpmc {
|
||||
ranges = <4 0 0x2b000000 0x1000000>, /* CS4 */
|
||||
<5 0 0x2c000000 0x1000000>; /* CS5 */
|
||||
|
||||
smsc1: ethernet@gpmc {
|
||||
reg = <5 0 0xff>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <16 IRQ_TYPE_LEVEL_LOW>; /* GPIO 176 */
|
||||
};
|
||||
|
||||
smsc2: ethernet@4,0 {
|
||||
compatible = "smsc,lan9221","smsc,lan9115";
|
||||
bank-width = <2>;
|
||||
|
||||
gpmc,mux-add-data;
|
||||
gpmc,cs-on-ns = <0>;
|
||||
gpmc,cs-rd-off-ns = <42>;
|
||||
gpmc,cs-wr-off-ns = <36>;
|
||||
gpmc,adv-on-ns = <6>;
|
||||
gpmc,adv-rd-off-ns = <12>;
|
||||
gpmc,adv-wr-off-ns = <12>;
|
||||
gpmc,oe-on-ns = <0>;
|
||||
gpmc,oe-off-ns = <42>;
|
||||
gpmc,we-on-ns = <0>;
|
||||
gpmc,we-off-ns = <36>;
|
||||
gpmc,rd-cycle-ns = <60>;
|
||||
gpmc,wr-cycle-ns = <54>;
|
||||
gpmc,access-ns = <36>;
|
||||
gpmc,page-burst-access-ns = <0>;
|
||||
gpmc,bus-turnaround-ns = <0>;
|
||||
gpmc,cycle2cycle-delay-ns = <0>;
|
||||
gpmc,wr-data-mux-bus-ns = <18>;
|
||||
gpmc,wr-access-ns = <42>;
|
||||
gpmc,cycle2cycle-samecsen;
|
||||
gpmc,cycle2cycle-diffcsen;
|
||||
vddvario-supply = <&vddvario>;
|
||||
vdd33a-supply = <&vdd33a>;
|
||||
reg-io-width = <4>;
|
||||
smsc,save-mac-address;
|
||||
|
||||
reg = <4 0 0xff>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <1 IRQ_TYPE_LEVEL_LOW>; /* GPIO 65 */
|
||||
};
|
||||
};
|
||||
|
||||
&lis33de {
|
||||
status = "disabled";
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* Copyright (C) 2015 Ash Charles, Gumstix, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
/*
|
||||
* TobiDuo expansion board is manufactured by Gumstix Inc.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "omap3-overo.dtsi"
|
||||
#include "omap3-overo-tobiduo-common.dtsi"
|
||||
|
||||
/ {
|
||||
model = "OMAP35xx Gumstix Overo on TobiDuo";
|
||||
compatible = "gumstix,omap3-overo-tobiduo", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3";
|
||||
};
|
|
@ -32,7 +32,3 @@
|
|||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&mcbsp2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -324,10 +324,13 @@ CONFIG_SND_USB_AUDIO=m
|
|||
CONFIG_SND_SOC=m
|
||||
CONFIG_SND_EDMA_SOC=m
|
||||
CONFIG_SND_AM33XX_SOC_EVM=m
|
||||
CONFIG_SND_DAVINCI_SOC_MCASP=m
|
||||
CONFIG_SND_OMAP_SOC=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_TWL4030=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=m
|
||||
CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m
|
||||
CONFIG_SND_SIMPLE_CARD=m
|
||||
CONFIG_SND_SOC_TLV320AIC3X=m
|
||||
CONFIG_HID_GENERIC=m
|
||||
CONFIG_USB_HIDDEV=y
|
||||
CONFIG_USB_KBD=m
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
|
||||
#include <linux/platform_data/pinctrl-single.h>
|
||||
#include <linux/platform_data/iommu-omap.h>
|
||||
#include <linux/platform_data/wkup_m3.h>
|
||||
|
||||
#include "common.h"
|
||||
#include "common-board-devices.h"
|
||||
|
@ -278,6 +279,14 @@ static struct iommu_platform_data omap4_iommu_pdata = {
|
|||
};
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOC_AM33XX) || defined(CONFIG_SOC_AM43XX)
|
||||
static struct wkup_m3_platform_data wkup_m3_data = {
|
||||
.reset_name = "wkup_m3",
|
||||
.assert_reset = omap_device_assert_hardreset,
|
||||
.deassert_reset = omap_device_deassert_hardreset,
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SOC_OMAP5
|
||||
static void __init omap5_uevm_legacy_init(void)
|
||||
{
|
||||
|
@ -340,6 +349,10 @@ struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
|
|||
OF_DEV_AUXDATA("ti,am3517-emac", 0x5c000000, "davinci_emac.0",
|
||||
&am35xx_emac_pdata),
|
||||
#endif
|
||||
#ifdef CONFIG_SOC_AM33XX
|
||||
OF_DEV_AUXDATA("ti,am3352-wkup-m3", 0x44d00000, "44d00000.wkup_m3",
|
||||
&wkup_m3_data),
|
||||
#endif
|
||||
#ifdef CONFIG_ARCH_OMAP4
|
||||
OF_DEV_AUXDATA("ti,omap4-padconf", 0x4a100040, "4a100040.pinmux", &pcs_pdata),
|
||||
OF_DEV_AUXDATA("ti,omap4-padconf", 0x4a31e040, "4a31e040.pinmux", &pcs_pdata),
|
||||
|
@ -353,6 +366,8 @@ struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
|
|||
#endif
|
||||
#ifdef CONFIG_SOC_AM43XX
|
||||
OF_DEV_AUXDATA("ti,am437-padconf", 0x44e10800, "44e10800.pinmux", &pcs_pdata),
|
||||
OF_DEV_AUXDATA("ti,am4372-wkup-m3", 0x44d00000, "44d00000.wkup_m3",
|
||||
&wkup_m3_data),
|
||||
#endif
|
||||
#if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5)
|
||||
OF_DEV_AUXDATA("ti,omap4-iommu", 0x4a066000, "4a066000.mmu",
|
||||
|
|
|
@ -30,6 +30,26 @@
|
|||
#define MUX_MODE14 0xe
|
||||
#define MUX_MODE15 0xf
|
||||
|
||||
/* Certain pins need virtual mode, but note: they may glitch */
|
||||
#define MUX_VIRTUAL_MODE0 (MODE_SELECT | (0x0 << 4))
|
||||
#define MUX_VIRTUAL_MODE1 (MODE_SELECT | (0x1 << 4))
|
||||
#define MUX_VIRTUAL_MODE2 (MODE_SELECT | (0x2 << 4))
|
||||
#define MUX_VIRTUAL_MODE3 (MODE_SELECT | (0x3 << 4))
|
||||
#define MUX_VIRTUAL_MODE4 (MODE_SELECT | (0x4 << 4))
|
||||
#define MUX_VIRTUAL_MODE5 (MODE_SELECT | (0x5 << 4))
|
||||
#define MUX_VIRTUAL_MODE6 (MODE_SELECT | (0x6 << 4))
|
||||
#define MUX_VIRTUAL_MODE7 (MODE_SELECT | (0x7 << 4))
|
||||
#define MUX_VIRTUAL_MODE8 (MODE_SELECT | (0x8 << 4))
|
||||
#define MUX_VIRTUAL_MODE9 (MODE_SELECT | (0x9 << 4))
|
||||
#define MUX_VIRTUAL_MODE10 (MODE_SELECT | (0xa << 4))
|
||||
#define MUX_VIRTUAL_MODE11 (MODE_SELECT | (0xb << 4))
|
||||
#define MUX_VIRTUAL_MODE12 (MODE_SELECT | (0xc << 4))
|
||||
#define MUX_VIRTUAL_MODE13 (MODE_SELECT | (0xd << 4))
|
||||
#define MUX_VIRTUAL_MODE14 (MODE_SELECT | (0xe << 4))
|
||||
#define MUX_VIRTUAL_MODE15 (MODE_SELECT | (0xf << 4))
|
||||
|
||||
#define MODE_SELECT (1 << 8)
|
||||
|
||||
#define PULL_ENA (0 << 16)
|
||||
#define PULL_DIS (1 << 16)
|
||||
#define PULL_UP (1 << 17)
|
||||
|
|
Loading…
Reference in New Issue