Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
xenomai
ipipe
Commits
9ccd1729
Commit
9ccd1729
authored
Nov 11, 2015
by
Philippe Gerum
Browse files
ipipe/arm: baseline
parent
2d3d9f6c
Changes
172
Hide whitespace changes
Inline
Side-by-side
arch/arm/Kconfig
View file @
9ccd1729
...
...
@@ -36,8 +36,8 @@ config ARM
select HAVE_ARCH_SECCOMP_FILTER if (AEABI && !OABI_COMPAT)
select HAVE_ARCH_TRACEHOOK
select HAVE_BPF_JIT
select HAVE_CONTEXT_TRACKING if !IPIPE
select HAVE_CC_STACKPROTECTOR
select HAVE_CONTEXT_TRACKING
select HAVE_C_RECORDMCOUNT
select HAVE_DEBUG_KMEMLEAK
select HAVE_DMA_API_DEBUG
...
...
@@ -71,6 +71,7 @@ config ARM
select HAVE_SYSCALL_TRACEPOINTS
select HAVE_UID16
select HAVE_VIRT_CPU_ACCOUNTING_GEN
select IPIPE_WANT_PTE_PINNING if IPIPE && !(CPU_V6K || CPU_V7)
select IRQ_FORCED_THREADING
select MODULES_USE_ELF_REL
select NO_BOOTMEM
...
...
@@ -89,6 +90,11 @@ config ARM
Europe. There is an ARM Linux project with a web page at
<http://www.arm.linux.org.uk/>.
if IPIPE
config IPIPE_WANT_ACTIVE_MM
def_bool y
endif
config ARM_HAS_SG_CHAIN
select ARCH_HAS_SG_CHAIN
bool
...
...
@@ -496,6 +502,7 @@ config ARCH_IXP4XX
select CLKSRC_MMIO
select CPU_XSCALE
select DMABOUNCE if PCI
select IPIPE_ARM_KUSER_TSC if IPIPE
select GENERIC_CLOCKEVENTS
select MIGHT_HAVE_PCI
select NEED_MACH_IO_H
...
...
@@ -682,6 +689,7 @@ config ARCH_SA1100
config ARCH_S3C24XX
bool "Samsung S3C24XX SoCs"
select IPIPE_ARM_KUSER_TSC if IPIPE
select ARCH_REQUIRE_GPIOLIB
select ATAGS
select CLKDEV_LOOKUP
...
...
@@ -981,6 +989,14 @@ config ARM_TIMER_SP804
select CLKSRC_MMIO
select CLKSRC_OF if OF
if IPIPE
config IPIPE_ARM_KUSER_TSC
bool
select GENERIC_TIME_VSYSCALL
select IPIPE_HAVE_HOSTRT if IPIPE
default y if ARCH_AT91 || ARM_TIMER_SP804 || ARCH_MXC || ARCH_OMAP || PLAT_PXA || PLAT_S3C24XX || ARCH_SA1100
endif
source "arch/arm/firmware/Kconfig"
source arch/arm/mm/Kconfig
...
...
@@ -1492,6 +1508,8 @@ config ARCH_NR_GPIO
If unsure, leave the default value.
source kernel/ipipe/Kconfig
source kernel/Kconfig.preempt
config HZ_FIXED
...
...
arch/arm/boot/compressed/decompress.c
View file @
9ccd1729
#define _LINUX_STRING_H_
#include
<linux/compiler.h>
/* for inline */
#include
<linux/types.h>
/* for size_t */
#include
<linux/stddef.h>
/* for NULL */
#include
<linux/linkage.h>
#include
<
asm
/string.h>
#include
<
linux
/string.h>
extern
unsigned
long
free_mem_ptr
;
extern
unsigned
long
free_mem_end_ptr
;
...
...
arch/arm/boot/compressed/head.S
View file @
9ccd1729
...
...
@@ -1330,6 +1330,15 @@ memdump: mov r12, r0
mov
pc
,
r10
#endif
#ifdef CONFIG_IPIPE_TRACE_MCOUNT
.
text
.
align
0
.
type
mcount
%
function
.
global
mcount
mcount
:
mov
pc
,
lr
@
just
return
#endif
.
ltorg
#ifdef CONFIG_ARM_VIRT_EXT
...
...
arch/arm/boot/compressed/string.c
View file @
9ccd1729
...
...
@@ -93,6 +93,23 @@ int strcmp(const char *cs, const char *ct)
return
res
;
}
char
*
strstr
(
const
char
*
s1
,
const
char
*
s2
)
{
size_t
l1
,
l2
;
l2
=
strlen
(
s2
);
if
(
!
l2
)
return
(
char
*
)
s1
;
l1
=
strlen
(
s1
);
while
(
l1
>=
l2
)
{
l1
--
;
if
(
!
memcmp
(
s1
,
s2
,
l2
))
return
(
char
*
)
s1
;
s1
++
;
}
return
NULL
;
}
void
*
memchr
(
const
void
*
s
,
int
c
,
size_t
count
)
{
const
unsigned
char
*
p
=
s
;
...
...
arch/arm/boot/dts/Makefile
View file @
9ccd1729
omap3-igep0020-3430.dts
:
omap3-igep0020.dts omap3430-igep.dtsi
sed
's/omap3-igep\.dtsi/omap3430-igep.dtsi/'
$<
>
$@
omap3430-igep.dtsi
:
omap3-igep.dtsi Makefile
sed
's/omap36xx\.dtsi/omap34xx.dtsi/'
$<
>
$@
ifeq
($(CONFIG_OF),y)
dtb-$(CONFIG_ARCH_ALPINE)
+=
\
...
...
arch/arm/boot/dts/imx6qdl.dtsi
View file @
9ccd1729
...
...
@@ -127,6 +127,13 @@
clocks = <&clks IMX6QDL_CLK_TWD>;
};
timer@00a00200 {
compatible = "arm,cortex-a9-global-timer";
reg = <0x00a00200 0x20>;
interrupts = <1 11 0xf01>;
clocks = <&clks IMX6QDL_CLK_TWD>;
};
L2: l2-cache@00a02000 {
compatible = "arm,pl310-cache";
reg = <0x00a02000 0x1000>;
...
...
arch/arm/boot/dts/omap3-igep0020-3430.dts
0 → 100644
View file @
9ccd1729
/*
*
Device
Tree
Source
for
IGEPv2
Rev
.
(
TI
OMAP
AM
/
DM37x
)
*
*
Copyright
(
C
)
2012
Javier
Martinez
Canillas
<
javier
@
collabora
.
co
.
uk
>
*
Copyright
(
C
)
2012
Enric
Balletbo
i
Serra
<
eballetbo
@
gmail
.
com
>
*
*
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
.
*/
#
include
"omap3430-igep.dtsi"
#
include
"omap-gpmc-smsc9221.dtsi"
/
{
model
=
"IGEPv2 (TI OMAP AM/DM37x)"
;
compatible
=
"isee,omap3-igep0020"
,
"ti,omap36xx"
,
"ti,omap3"
;
leds
{
pinctrl
-
names
=
"default"
;
pinctrl
-
0
=
<&
leds_pins
>;
compatible
=
"gpio-leds"
;
boot
{
label
=
"omap3:green:boot"
;
gpios
=
<&
gpio1
26
GPIO_ACTIVE_HIGH
>;
default
-
state
=
"on"
;
};
user0
{
label
=
"omap3:red:user0"
;
gpios
=
<&
gpio1
27
GPIO_ACTIVE_HIGH
>;
default
-
state
=
"off"
;
};
user1
{
label
=
"omap3:red:user1"
;
gpios
=
<&
gpio1
28
GPIO_ACTIVE_HIGH
>;
default
-
state
=
"off"
;
};
user2
{
label
=
"omap3:green:user1"
;
gpios
=
<&
twl_gpio
19
GPIO_ACTIVE_LOW
>;
};
};
/*
HS
USB
Port
1
Power
*/
hsusb1_power
:
hsusb1_power_reg
{
compatible
=
"regulator-fixed"
;
regulator
-
name
=
"hsusb1_vbus"
;
regulator
-
min
-
microvolt
=
<
3300000
>;
regulator
-
max
-
microvolt
=
<
3300000
>;
gpio
=
<&
twl_gpio
18
GPIO_ACTIVE_LOW
>;
/*
GPIO
LEDA
*/
startup
-
delay
-
us
=
<
70000
>;
};
/*
HS
USB
Host
PHY
on
PORT
1
*/
hsusb1_phy
:
hsusb1_phy
{
compatible
=
"usb-nop-xceiv"
;
reset
-
gpios
=
<&
gpio1
24
GPIO_ACTIVE_LOW
>;
/*
gpio_24
*/
vcc
-
supply
=
<&
hsusb1_power
>;
};
tfp410
:
encoder
@
0
{
compatible
=
"ti,tfp410"
;
powerdown
-
gpios
=
<&
gpio6
10
GPIO_ACTIVE_LOW
>;
/*
gpio_170
*/
ports
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
port
@
0
{
reg
=
<
0
>;
tfp410_in
:
endpoint
@
0
{
remote
-
endpoint
=
<&
dpi_out
>;
};
};
port
@
1
{
reg
=
<
1
>;
tfp410_out
:
endpoint
@
0
{
remote
-
endpoint
=
<&
dvi_connector_in
>;
};
};
};
};
dvi0
:
connector
@
0
{
compatible
=
"dvi-connector"
;
label
=
"dvi"
;
digital
;
ddc
-
i2c
-
bus
=
<&
i2c3
>;
port
{
dvi_connector_in
:
endpoint
{
remote
-
endpoint
=
<&
tfp410_out
>;
};
};
};
};
&
omap3_pmx_core
{
pinctrl
-
names
=
"default"
;
pinctrl
-
0
=
<
&
tfp410_pins
&
dss_dpi_pins
>;
tfp410_pins
:
pinmux_tfp410_pins
{
pinctrl
-
single
,
pins
=
<
0x196
(
PIN_OUTPUT
|
MUX_MODE4
)
/*
hdq_sio
.
gpio_170
*/
>;
};
dss_dpi_pins
:
pinmux_dss_dpi_pins
{
pinctrl
-
single
,
pins
=
<
0x0a4
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_pclk
.
dss_pclk
*/
0x0a6
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_hsync
.
dss_hsync
*/
0x0a8
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_vsync
.
dss_vsync
*/
0x0aa
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_acbias
.
dss_acbias
*/
0x0ac
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data0
.
dss_data0
*/
0x0ae
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data1
.
dss_data1
*/
0x0b0
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data2
.
dss_data2
*/
0x0b2
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data3
.
dss_data3
*/
0x0b4
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data4
.
dss_data4
*/
0x0b6
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data5
.
dss_data5
*/
0x0b8
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data6
.
dss_data6
*/
0x0ba
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data7
.
dss_data7
*/
0x0bc
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data8
.
dss_data8
*/
0x0be
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data9
.
dss_data9
*/
0x0c0
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data10
.
dss_data10
*/
0x0c2
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data11
.
dss_data11
*/
0x0c4
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data12
.
dss_data12
*/
0x0c6
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data13
.
dss_data13
*/
0x0c8
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data14
.
dss_data14
*/
0x0ca
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data15
.
dss_data15
*/
0x0cc
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data16
.
dss_data16
*/
0x0ce
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data17
.
dss_data17
*/
0x0d0
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data18
.
dss_data18
*/
0x0d2
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data19
.
dss_data19
*/
0x0d4
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data20
.
dss_data20
*/
0x0d6
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data21
.
dss_data21
*/
0x0d8
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data22
.
dss_data22
*/
0x0da
(
PIN_OUTPUT
|
MUX_MODE0
)
/*
dss_data23
.
dss_data23
*/
>;
};
};
&
omap3_pmx_core2
{
pinctrl
-
names
=
"default"
;
pinctrl
-
0
=
<
&
hsusbb1_pins
>;
hsusbb1_pins
:
pinmux_hsusbb1_pins
{
pinctrl
-
single
,
pins
=
<
OMAP3630_CORE2_IOPAD
(
0x25da
,
PIN_OUTPUT
|
MUX_MODE3
)
/*
etk_ctl
.
hsusb1_clk
*/
OMAP3630_CORE2_IOPAD
(
0x25d8
,
PIN_OUTPUT
|
MUX_MODE3
)
/*
etk_clk
.
hsusb1_stp
*/
OMAP3630_CORE2_IOPAD
(
0x25ec
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d8
.
hsusb1_dir
*/
OMAP3630_CORE2_IOPAD
(
0x25ee
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d9
.
hsusb1_nxt
*/
OMAP3630_CORE2_IOPAD
(
0x25dc
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d0
.
hsusb1_data0
*/
OMAP3630_CORE2_IOPAD
(
0x25de
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d1
.
hsusb1_data1
*/
OMAP3630_CORE2_IOPAD
(
0x25e0
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d2
.
hsusb1_data2
*/
OMAP3630_CORE2_IOPAD
(
0x25e2
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d3
.
hsusb1_data7
*/
OMAP3630_CORE2_IOPAD
(
0x25e4
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d4
.
hsusb1_data4
*/
OMAP3630_CORE2_IOPAD
(
0x25e6
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d5
.
hsusb1_data5
*/
OMAP3630_CORE2_IOPAD
(
0x25e8
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d6
.
hsusb1_data6
*/
OMAP3630_CORE2_IOPAD
(
0x25ea
,
PIN_INPUT_PULLDOWN
|
MUX_MODE3
)
/*
etk_d7
.
hsusb1_data3
*/
>;
};
leds_pins
:
pinmux_leds_pins
{
pinctrl
-
single
,
pins
=
<
OMAP3630_CORE2_IOPAD
(
0x25f4
,
PIN_OUTPUT
|
MUX_MODE4
)
/*
etk_d12
.
gpio_26
*/
OMAP3630_CORE2_IOPAD
(
0x25f6
,
PIN_OUTPUT
|
MUX_MODE4
)
/*
etk_d13
.
gpio_27
*/
OMAP3630_CORE2_IOPAD
(
0x25f8
,
PIN_OUTPUT
|
MUX_MODE4
)
/*
etk_d14
.
gpio_28
*/
>;
};
};
&
i2c3
{
clock
-
frequency
=
<
100000
>;
/*
*
Display
monitor
features
are
burnt
in
the
EEPROM
*
as
EDID
data
.
*/
eeprom
@
50
{
compatible
=
"ti,eeprom"
;
reg
=
<
0x50
>;
};
};
&
gpmc
{
ranges
=
<
0
0
0x00000000
0x20000000
>,
<
5
0
0x2c000000
0x01000000
>;
nand
@
0
,
0
{
linux
,
mtd
-
name
=
"micron,mt29c4g96maz"
;
reg
=
<
0
0
0
>;
nand
-
bus
-
width
=
<
16
>;
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
0x100000
>;
};
partition
@
80000
{
label
=
"U-Boot"
;
reg
=
<
0x100000
0x180000
>;
};
partition
@
1
c0000
{
label
=
"Environment"
;
reg
=
<
0x280000
0x100000
>;
};
partition
@
280000
{
label
=
"Kernel"
;
reg
=
<
0x380000
0x300000
>;
};
partition
@
780000
{
label
=
"Filesystem"
;
reg
=
<
0x680000
0x1f980000
>;
};
};
ethernet
@
gpmc
{
pinctrl
-
names
=
"default"
;
pinctrl
-
0
=
<&
smsc9221_pins
>;
reg
=
<
5
0
0xff
>;
interrupt
-
parent
=
<&
gpio6
>;
interrupts
=
<
16
IRQ_TYPE_LEVEL_LOW
>;
};
};
&
usbhshost
{
port1
-
mode
=
"ehci-phy"
;
};
&
usbhsehci
{
phys
=
<&
hsusb1_phy
>;
};
&
vpll2
{
/*
Needed
for
DSS
*/
regulator
-
name
=
"vdds_dsi"
;
};
&
dss
{
status
=
"ok"
;
port
{
dpi_out
:
endpoint
{
remote
-
endpoint
=
<&
tfp410_in
>;
data
-
lines
=
<
24
>;
};
};
};
arch/arm/boot/dts/omap3430-igep.dtsi
0 → 100644
View file @
9ccd1729
/*
* Common device tree for IGEP boards based on AM/DM37x
*
* Copyright (C) 2012 Javier Martinez Canillas <javier@collabora.co.uk>
* Copyright (C) 2012 Enric Balletbo i Serra <eballetbo@gmail.com>
*
* 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.
*/
/dts-v1/;
#include "omap34xx-hs.dtsi"
/ {
memory {
device_type = "memory";
reg = <0x80000000 0x20000000>; /* 512 MB */
};
sound {
compatible = "ti,omap-twl4030";
ti,model = "igep2";
ti,mcbsp = <&mcbsp2>;
ti,codec = <&twl_audio>;
};
vdd33: regulator-vdd33 {
compatible = "regulator-fixed";
regulator-name = "vdd33";
regulator-always-on;
};
lbee1usjyc_vmmc: lbee1usjyc_vmmc {
pinctrl-names = "default";
pinctrl-0 = <&lbee1usjyc_pins>;
compatible = "regulator-fixed";
regulator-name = "regulator-lbee1usjyc";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio5 10 GPIO_ACTIVE_HIGH>; /* gpio_138 WIFI_PDN */
startup-delay-us = <10000>;
enable-active-high;
vin-supply = <&vdd33>;
};
};
&omap3_pmx_core {
uart1_pins: pinmux_uart1_pins {
pinctrl-single,pins = <
0x152 (PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */
0x14c (PIN_OUTPUT |MUX_MODE0) /* uart1_tx.uart1_tx */
>;
};
uart2_pins: pinmux_uart2_pins {
pinctrl-single,pins = <
0x14a (PIN_INPUT | MUX_MODE0) /* uart2_rx.uart2_rx */
0x148 (PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */
>;
};
uart3_pins: pinmux_uart3_pins {
pinctrl-single,pins = <
0x16e (PIN_INPUT | MUX_MODE0) /* uart3_rx.uart3_rx */
0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx.uart3_tx */
>;
};
/* WiFi/BT combo */
lbee1usjyc_pins: pinmux_lbee1usjyc_pins {
pinctrl-single,pins = <
0x136 (PIN_OUTPUT | MUX_MODE4) /* sdmmc2_dat5.gpio_137 */
0x138 (PIN_OUTPUT | MUX_MODE4) /* sdmmc2_dat6.gpio_138 */
0x13a (PIN_OUTPUT | MUX_MODE4) /* sdmmc2_dat7.gpio_139 */
>;
};
mcbsp2_pins: pinmux_mcbsp2_pins {
pinctrl-single,pins = <
0x10c (PIN_INPUT | MUX_MODE0) /* mcbsp2_fsx.mcbsp2_fsx */
0x10e (PIN_INPUT | MUX_MODE0) /* mcbsp2_clkx.mcbsp2_clkx */
0x110 (PIN_INPUT | MUX_MODE0) /* mcbsp2_dr.mcbsp2.dr */
0x112 (PIN_OUTPUT | MUX_MODE0) /* mcbsp2_dx.mcbsp2_dx */
>;
};
mmc1_pins: pinmux_mmc1_pins {
pinctrl-single,pins = <
0x114 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
0x116 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
0x118 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
0x11a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
0x11c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
>;
};
mmc2_pins: pinmux_mmc2_pins {
pinctrl-single,pins = <
0x128 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_clk.sdmmc2_clk */
0x12a (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_cmd.sdmmc2_cmd */
0x12c (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat0.sdmmc2_dat0 */
0x12e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat1.sdmmc2_dat1 */
0x130 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat2.sdmmc2_dat2 */
0x132 (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc2_dat3.sdmmc2_dat3 */
>;
};
smsc9221_pins: pinmux_smsc9221_pins {
pinctrl-single,pins = <
0x1a2 (PIN_INPUT | MUX_MODE4) /* mcspi1_cs2.gpio_176 */
>;
};
i2c1_pins: pinmux_i2c1_pins {
pinctrl-single,pins = <
0x18a (PIN_INPUT | MUX_MODE0) /* i2c1_scl.i2c1_scl */
0x18c (PIN_INPUT | MUX_MODE0) /* i2c1_sda.i2c1_sda */
>;
};
i2c2_pins: pinmux_i2c2_pins {
pinctrl-single,pins = <
0x18e (PIN_INPUT | MUX_MODE0) /* i2c2_scl.i2c2_scl */
0x190 (PIN_INPUT | MUX_MODE0) /* i2c2_sda.i2c2_sda */
>;
};
i2c3_pins: pinmux_i2c3_pins {
pinctrl-single,pins = <
0x192 (PIN_INPUT | MUX_MODE0) /* i2c3_scl.i2c3_scl */
0x194 (PIN_INPUT | MUX_MODE0) /* i2c3_sda.i2c3_sda */
>;
};
};
&i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;
clock-frequency = <2600000>;
twl: twl@48 {
reg = <0x48>;
interrupts = <7>; /* SYS_NIRQ cascaded to intc */
interrupt-parent = <&intc>;
twl_audio: audio {
compatible = "ti,twl4030-audio";
codec {
};
};
};
};
#include "twl4030.dtsi"
#include "twl4030_omap3.dtsi"
&i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
clock-frequency = <400000>;
};
&i2c3 {
pinctrl-names = "default";
pinctrl-0 = <&i2c3_pins>;
};
&mcbsp2 {
pinctrl-names = "default";
pinctrl-0 = <&mcbsp2_pins>;
status = "okay";
};
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&vmmc1>;
vmmc_aux-supply = <&vsim>;
bus-width = <4>;
};
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_pins>;
vmmc-supply = <&lbee1usjyc_vmmc>;
bus-width = <4>;
non-removable;
};
&mmc3 {
status = "disabled";
};