armadeus-commitlog Mailing List for armadeus (Page 64)
Brought to you by:
sszy
You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(43) |
Feb
(8) |
Mar
(7) |
Apr
(8) |
May
(14) |
Jun
(6) |
Jul
(4) |
Aug
(17) |
Sep
(18) |
Oct
(19) |
Nov
(52) |
Dec
(30) |
| 2008 |
Jan
(6) |
Feb
(6) |
Mar
(15) |
Apr
(22) |
May
(13) |
Jun
(11) |
Jul
(41) |
Aug
(10) |
Sep
(14) |
Oct
(21) |
Nov
(4) |
Dec
(66) |
| 2009 |
Jan
(67) |
Feb
(57) |
Mar
(90) |
Apr
(54) |
May
(64) |
Jun
(76) |
Jul
(14) |
Aug
(18) |
Sep
(18) |
Oct
(20) |
Nov
(15) |
Dec
(36) |
| 2010 |
Jan
(28) |
Feb
(25) |
Mar
(32) |
Apr
(23) |
May
(22) |
Jun
(62) |
Jul
(36) |
Aug
(16) |
Sep
(12) |
Oct
(20) |
Nov
(44) |
Dec
(25) |
| 2011 |
Jan
(36) |
Feb
(49) |
Mar
(28) |
Apr
(38) |
May
(26) |
Jun
(52) |
Jul
(33) |
Aug
(32) |
Sep
(19) |
Oct
(26) |
Nov
(13) |
Dec
(32) |
| 2012 |
Jan
(38) |
Feb
(34) |
Mar
(91) |
Apr
(35) |
May
(31) |
Jun
(72) |
Jul
(23) |
Aug
(13) |
Sep
(33) |
Oct
(47) |
Nov
(18) |
Dec
(22) |
| 2013 |
Jan
(31) |
Feb
(22) |
Mar
(26) |
Apr
(11) |
May
(38) |
Jun
(15) |
Jul
(37) |
Aug
(68) |
Sep
(34) |
Oct
(11) |
Nov
(26) |
Dec
(31) |
| 2014 |
Jan
(60) |
Feb
(55) |
Mar
(21) |
Apr
(31) |
May
(17) |
Jun
(35) |
Jul
(24) |
Aug
(17) |
Sep
(11) |
Oct
(23) |
Nov
(10) |
Dec
(23) |
| 2015 |
Jan
(15) |
Feb
(34) |
Mar
(46) |
Apr
(23) |
May
(12) |
Jun
(14) |
Jul
(18) |
Aug
(22) |
Sep
(6) |
Oct
(2) |
Nov
(1) |
Dec
(6) |
| 2016 |
Jan
(5) |
Feb
(7) |
Mar
(10) |
Apr
(10) |
May
(17) |
Jun
(6) |
Jul
(4) |
Aug
(6) |
Sep
(22) |
Oct
(8) |
Nov
(9) |
Dec
(5) |
| 2017 |
Jan
(11) |
Feb
(12) |
Mar
(27) |
Apr
(9) |
May
(1) |
Jun
(5) |
Jul
(11) |
Aug
(10) |
Sep
(6) |
Oct
(10) |
Nov
(4) |
Dec
(6) |
| 2018 |
Jan
(6) |
Feb
(13) |
Mar
(9) |
Apr
(7) |
May
(10) |
Jun
(9) |
Jul
(21) |
Aug
(13) |
Sep
(10) |
Oct
(4) |
Nov
(6) |
Dec
(1) |
| 2019 |
Jan
(6) |
Feb
(2) |
Mar
(5) |
Apr
(6) |
May
(19) |
Jun
(14) |
Jul
(18) |
Aug
(3) |
Sep
(5) |
Oct
(7) |
Nov
(8) |
Dec
(4) |
| 2020 |
Jan
(10) |
Feb
(3) |
Mar
(9) |
Apr
(7) |
May
(2) |
Jun
(18) |
Jul
(3) |
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
(1) |
| 2021 |
Jan
(9) |
Feb
(6) |
Mar
(4) |
Apr
(11) |
May
(7) |
Jun
(5) |
Jul
(2) |
Aug
(4) |
Sep
(10) |
Oct
(9) |
Nov
(5) |
Dec
|
| 2022 |
Jan
(2) |
Feb
(12) |
Mar
(3) |
Apr
(5) |
May
(1) |
Jun
(3) |
Jul
(2) |
Aug
(1) |
Sep
(4) |
Oct
(4) |
Nov
(1) |
Dec
(3) |
| 2023 |
Jan
(5) |
Feb
(3) |
Mar
(3) |
Apr
(2) |
May
(1) |
Jun
(3) |
Jul
(3) |
Aug
(2) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
(4) |
| 2024 |
Jan
(2) |
Feb
(3) |
Mar
(8) |
Apr
(4) |
May
(1) |
Jun
(13) |
Jul
(7) |
Aug
(1) |
Sep
(6) |
Oct
(5) |
Nov
(11) |
Dec
(7) |
| 2025 |
Jan
(3) |
Feb
(1) |
Mar
(6) |
Apr
(4) |
May
(4) |
Jun
(1) |
Jul
(1) |
Aug
(7) |
Sep
(4) |
Oct
(4) |
Nov
(4) |
Dec
(1) |
| 2026 |
Jan
(3) |
Feb
(7) |
Mar
(3) |
Apr
(1) |
May
(6) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-03-09 13:49:28
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 9469621400c9a743ae59d18add534290252e0ad3 (commit)
via f596dd59a6ca89e566f2e3dd4c50240173ba6252 (commit)
via d6150ad10164887f5ef68c1a6e42a13559102482 (commit)
from ff9c15a913f7001c7d450bc37dc808380852ea40 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 9469621400c9a743ae59d18add534290252e0ad3
Merge: f596dd5 ff9c15a
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 14:48:06 2013 +0100
Merge branch 'master' of ssh://git.code.sf.net/p/armadeus/code
commit f596dd59a6ca89e566f2e3dd4c50240173ba6252
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 14:47:49 2013 +0100
[LINUX][3.8] apf51dev: dt: add basic support for i2c2
commit d6150ad10164887f5ef68c1a6e42a13559102482
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 14:46:17 2013 +0100
[LINUX][3.8] imx51: dt: add second pinctrl group for i2c2
-----------------------------------------------------------------------
Summary of changes:
.../3.8/0401-armadeus-add_apf51dev_baseboard.patch | 8 +++++-
...x51-dt-add_second_pinctrl_group_for_i2c2.patch} | 24 +++++++++----------
2 files changed, 18 insertions(+), 14 deletions(-)
copy patches/linux/3.8/{0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch => 0407-armadeus-imx51-dt-add_second_pinctrl_group_for_i2c2.patch} (51%)
diff --git a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
index 504b3c9..5030f34 100644
--- a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
+++ b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
@@ -7,7 +7,7 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
===================================================================
--- /dev/null
+++ linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
-@@ -0,0 +1,102 @@
+@@ -0,0 +1,108 @@
+/*
+ * Copyright 2013 Armadeus Systems - <su...@ar...>
+ *
@@ -90,6 +90,12 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+ status = "okay";
+};
+
++&i2c2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_i2c2_2>;
++ status = "okay";
++};
++
+&iomuxc {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hog>;
diff --git a/patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch b/patches/linux/3.8/0407-armadeus-imx51-dt-add_second_pinctrl_group_for_i2c2.patch
similarity index 51%
copy from patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch
copy to patches/linux/3.8/0407-armadeus-imx51-dt-add_second_pinctrl_group_for_i2c2.patch
index d9a21c6..fd6fd8c 100644
--- a/patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch
+++ b/patches/linux/3.8/0407-armadeus-imx51-dt-add_second_pinctrl_group_for_i2c2.patch
@@ -1,3 +1,4 @@
+Add a second group of pinctrl for i2c2.
Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
---
@@ -6,20 +7,17 @@ Index: linux-3.8/arch/arm/boot/dts/imx51.dtsi
===================================================================
--- linux-3.8.orig/arch/arm/boot/dts/imx51.dtsi
+++ linux-3.8/arch/arm/boot/dts/imx51.dtsi
-@@ -308,6 +308,16 @@
+@@ -351,6 +351,13 @@
+ 454 0x400001ed /* MX51_PAD_KEY_COL5__I2C2_SDA */
+ >;
};
- };
-
-+ ecspi2 {
-+ pinctrl_ecspi2_1: ecspi2grp-1 {
++
++ pinctrl_i2c2_2: i2c2grp-2 {
+ fsl,pins = <
-+ 212 0x185 /* MX51_PAD_NANDF_RB3__ECSPI2_MISO */
-+ 264 0x185 /* MX51_PAD_NANDF_D15__ECSPI2_MOSI */
-+ 205 0x185 /* MX51_PAD_NANDF_RB2__ECSPI2_SCLK */
++ 64 0x400001ed /* MX51_PAD_EIM_D27__I2C2_SCL */
++ 48 0x400001ed /* MX51_PAD_EIM_D24__I2C2_SDA */
+ >;
+ };
-+ };
-+
- esdhc1 {
- pinctrl_esdhc1_1: esdhc1grp-1 {
- fsl,pins = <
+ };
+
+ ipu_disp1 {
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-03-09 13:17:45
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via ff9c15a913f7001c7d450bc37dc808380852ea40 (commit)
from 13ec4726b61184b049e41324d774bc610834c9a0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ff9c15a913f7001c7d450bc37dc808380852ea40
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 14:16:32 2013 +0100
[BUILDROOT] xenomai: DL_DIR must be used instead of BR2_DL_DIR (thanks Victor)
-----------------------------------------------------------------------
Summary of changes:
.../buildroot/2012.11.1/072-xenomai-package.patch | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/patches/buildroot/2012.11.1/072-xenomai-package.patch b/patches/buildroot/2012.11.1/072-xenomai-package.patch
index 2bdfba8..0a14d40 100644
--- a/patches/buildroot/2012.11.1/072-xenomai-package.patch
+++ b/patches/buildroot/2012.11.1/072-xenomai-package.patch
@@ -39,7 +39,7 @@ Index: buildroot/linux/linux-ext-xenomai.mk
XENOMAI_ADEOS_OPT = --default
else
-XENOMAI_ADEOS_OPT = --adeos=$(XENOMAI_ADEOS_PATCH)
-+XENOMAI_ADEOS_OPT = --adeos=$(BR2_DL_DIR)/$(XENOMAI_ADEOS_PATCH)
++XENOMAI_ADEOS_OPT = --adeos=$(DL_DIR)/$(XENOMAI_ADEOS_PATCH)
endif
# Prepare kernel patch
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-03-09 08:49:37
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 13ec4726b61184b049e41324d774bc610834c9a0 (commit)
via 39f63583d8f5f443eec85c02ee68ff368bcaab6f (commit)
from ab464d67b683705c8e2505f2e35f112fa38120ca (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 13ec4726b61184b049e41324d774bc610834c9a0
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 09:48:08 2013 +0100
[LINUX][3.8] apf51dev: DT: add basic support for ecspi
commit 39f63583d8f5f443eec85c02ee68ff368bcaab6f
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Mar 9 09:47:18 2013 +0100
[LINUX][3.8] imx51: DT: add ecspi2 pinmux
-----------------------------------------------------------------------
Summary of changes:
.../3.8/0401-armadeus-add_apf51dev_baseboard.patch | 32 +++++++++++++++++++-
...0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch | 25 +++++++++++++++
2 files changed, 56 insertions(+), 1 deletions(-)
create mode 100644 patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch
diff --git a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
index cb46567..504b3c9 100644
--- a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
+++ b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
@@ -7,7 +7,7 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
===================================================================
--- /dev/null
+++ linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
-@@ -0,0 +1,72 @@
+@@ -0,0 +1,102 @@
+/*
+ * Copyright 2013 Armadeus Systems - <su...@ar...>
+ *
@@ -47,6 +47,32 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+ };
+};
+
++&ecspi1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_ecspi1_1>;
++ fsl,spi-num-chipselects = <2>;
++ cs-gpios = <&gpio4 24 0>, /* GPIO4_24 */
++ <&gpio4 25 0>; /* GPIO4_25 */
++ status = "okay";
++};
++
++&ecspi2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_ecspi2_1>;
++ fsl,spi-num-chipselects = <2>;
++ cs-gpios = <&gpio3 28 1>, /* GPIO3_28 */
++ <&gpio3 27 1>; /* GPIO3_27 */
++ status = "okay";
++
++ spidev: spidev@1 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "spidev";
++ spi-max-frequency = <25000000>;
++ reg = <1>;
++ };
++};
++
+&esdhc1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_esdhc1_1>;
@@ -74,6 +100,10 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+ 129 0x0C5 /* MX51_PAD_EIM_EB2__GPIO2_22 */
+ 135 0x0C5 /* MX51_PAD_EIM_EB3__GPIO2_23 */
+ 159 0x100 /* MX51_PAD_EIM_CS4__GPIO2_29 */
++ 275 0x0C5 /* MX51_PAD_NANDF_D13__GPIO3_27 */
++ 280 0x0C5 /* MX51_PAD_NANDF_D12__GPIO3_28 */
++ 402 0x0C5 /* MX51_PAD_CSPI1_SS0__GPIO4_24 */
++ 405 0x0C5 /* MX51_PAD_CSPI1_SS1__GPIO4_25 */
+ 721 0x0C5 /* MX51_PAD_GPIO1_2__GPIO1_2 */
+ 725 0x0C5 /* MX51_PAD_GPIO1_3__GPIO1_3 */
+ >;
diff --git a/patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch b/patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch
new file mode 100644
index 0000000..d9a21c6
--- /dev/null
+++ b/patches/linux/3.8/0406-armadeus-imx51-dtb-add_ecspi2_pinmux.patch
@@ -0,0 +1,25 @@
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+---
+
+Index: linux-3.8/arch/arm/boot/dts/imx51.dtsi
+===================================================================
+--- linux-3.8.orig/arch/arm/boot/dts/imx51.dtsi
++++ linux-3.8/arch/arm/boot/dts/imx51.dtsi
+@@ -308,6 +308,16 @@
+ };
+ };
+
++ ecspi2 {
++ pinctrl_ecspi2_1: ecspi2grp-1 {
++ fsl,pins = <
++ 212 0x185 /* MX51_PAD_NANDF_RB3__ECSPI2_MISO */
++ 264 0x185 /* MX51_PAD_NANDF_D15__ECSPI2_MOSI */
++ 205 0x185 /* MX51_PAD_NANDF_RB2__ECSPI2_SCLK */
++ >;
++ };
++ };
++
+ esdhc1 {
+ pinctrl_esdhc1_1: esdhc1grp-1 {
+ fsl,pins = <
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-03-06 10:11:15
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via ab464d67b683705c8e2505f2e35f112fa38120ca (commit)
from 7da5a6270e0c98faa0a698a3377bac17799bf899 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ab464d67b683705c8e2505f2e35f112fa38120ca
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 6 11:15:08 2013 +0100
[ROOTFS] disable syslogd and klog from inittab. They are alreay running from S01logging script
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/rootfs/target_skeleton/etc/inittab | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/inittab b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/inittab
index 6896e89..bfe312c 100644
--- a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/inittab
+++ b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/inittab
@@ -39,16 +39,16 @@ ttySMX0::respawn:/sbin/getty -L ttySMX0 115200,57600,38400 vt100 # GENERIC_SERIA
# Logging junk
null::sysinit:/bin/touch /var/log/messages
-null::respawn:/sbin/syslogd -n
-null::respawn:/sbin/klogd -n
+#null::respawn:/sbin/syslogd -n
+#null::respawn:/sbin/klogd -n
#tty2::respawn:/usr/bin/tail -f /var/log/messages
# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot
# Stuff to do before rebooting
-null::shutdown:/usr/bin/killall klogd
-null::shutdown:/usr/bin/killall syslogd
+#null::shutdown:/usr/bin/killall klogd
+#null::shutdown:/usr/bin/killall syslogd
null::shutdown:/bin/umount -a -r
null::shutdown:/sbin/swapoff -a
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-03-06 09:28:08
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 7da5a6270e0c98faa0a698a3377bac17799bf899 (commit)
from a88c71f30cc2f9bda01ab98370d053dd911a5c43 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7da5a6270e0c98faa0a698a3377bac17799bf899
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 6 10:32:00 2013 +0100
[ROOTFS] update wpa-cli script to avoid multiple instance of udhcpc deamon
-----------------------------------------------------------------------
Summary of changes:
.../etc/wpa_supplicant/wpa_cli-action.sh | 31 ++++++++++++++-----
1 files changed, 23 insertions(+), 8 deletions(-)
diff --git a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
index 8de41ab..f12849b 100755
--- a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
+++ b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
@@ -1,9 +1,24 @@
-#!/bin/sh
-#
-case $2 in
-CONNECTED)
- udhcpc -qR -i $1 > /dev/null
- udhcpc -i $1 > /dev/null
-;;
-esac
+#!/bin/sh
+export PIDFILE=/var/run/udhcpc/${1}.pid
+dhcp_lease()(
+[ -e $PIDFILE ] && ( kill `cat $PIDFILE` ; rm $PIDFILE ; )
+mkdir -p `dirname $PIDFILE`
+udhcpc -i $1 -h `hostname` -p $PIDFILE -b
+)
+case $2 in
+CONNECTED)
+dhcp_lease $1
+;;
+DISCONNECTED)
+[ -e $PIDFILE ] && ( kill `cat $PIDFILE` ; rm $PIDFILE ; )
+wpa_cli -i $1Â scan
+;;
+stop)
+wpa_cli -i $1 disconnect
+wpa_cli -i $1 terminate
+;;
+*)
+echo "Use this script as a wpa_cli action script or $0 iface1 stop to leave iface1 ready for manual configuration"
+;;
+esac
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-03-06 09:24:51
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via a88c71f30cc2f9bda01ab98370d053dd911a5c43 (commit)
from 283169459b79af17a2b25f2957f5b10a56d47f52 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit a88c71f30cc2f9bda01ab98370d053dd911a5c43
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 6 10:28:39 2013 +0100
[BUILDROOT] add wpa_supplicant package to all config supporting wireless tools
-----------------------------------------------------------------------
Summary of changes:
buildroot/configs/apf27_defconfig | 6 ++++++
buildroot/configs/apf27_webradio_defconfig | 6 ++++++
buildroot/configs/apf27test_defconfig | 4 ++++
buildroot/configs/apf28_defconfig | 6 ++++++
buildroot/configs/apf28test_defconfig | 6 ++++++
buildroot/configs/apf51_defconfig | 6 ++++++
buildroot/configs/apf51test_defconfig | 2 ++
buildroot/configs/pps51_defconfig | 6 ++++++
buildroot/configs/pps_defconfig | 2 ++
9 files changed, 44 insertions(+), 0 deletions(-)
diff --git a/buildroot/configs/apf27_defconfig b/buildroot/configs/apf27_defconfig
index 9bcb9ba..2ab77c5 100644
--- a/buildroot/configs/apf27_defconfig
+++ b/buildroot/configs/apf27_defconfig
@@ -56,6 +56,12 @@ BR2_PACKAGE_NTP=y
BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
diff --git a/buildroot/configs/apf27_webradio_defconfig b/buildroot/configs/apf27_webradio_defconfig
index f8d2630..2365bdb 100644
--- a/buildroot/configs/apf27_webradio_defconfig
+++ b/buildroot/configs/apf27_webradio_defconfig
@@ -64,6 +64,12 @@ BR2_PACKAGE_NTP=y
# BR2_PACKAGE_NTP_NTPD is not set
BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
diff --git a/buildroot/configs/apf27test_defconfig b/buildroot/configs/apf27test_defconfig
index b65623f..9e93f45 100644
--- a/buildroot/configs/apf27test_defconfig
+++ b/buildroot/configs/apf27test_defconfig
@@ -116,7 +116,11 @@ BR2_PACKAGE_TCPDUMP=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
diff --git a/buildroot/configs/apf28_defconfig b/buildroot/configs/apf28_defconfig
index 77cd6e6..886cdbc 100644
--- a/buildroot/configs/apf28_defconfig
+++ b/buildroot/configs/apf28_defconfig
@@ -58,6 +58,12 @@ BR2_PACKAGE_NTP=y
BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
diff --git a/buildroot/configs/apf28test_defconfig b/buildroot/configs/apf28test_defconfig
index 09e4dcf..f6835ff 100644
--- a/buildroot/configs/apf28test_defconfig
+++ b/buildroot/configs/apf28test_defconfig
@@ -85,6 +85,12 @@ BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_TCPDUMP=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
diff --git a/buildroot/configs/apf51_defconfig b/buildroot/configs/apf51_defconfig
index 6b24f9a..dd5f629 100644
--- a/buildroot/configs/apf51_defconfig
+++ b/buildroot/configs/apf51_defconfig
@@ -67,6 +67,12 @@ BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_PPPD=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=135301
diff --git a/buildroot/configs/apf51test_defconfig b/buildroot/configs/apf51test_defconfig
index a08b953..2adc84b 100644
--- a/buildroot/configs/apf51test_defconfig
+++ b/buildroot/configs/apf51test_defconfig
@@ -139,6 +139,8 @@ BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=135301
diff --git a/buildroot/configs/pps51_defconfig b/buildroot/configs/pps51_defconfig
index 95b23a2..68b314e 100644
--- a/buildroot/configs/pps51_defconfig
+++ b/buildroot/configs/pps51_defconfig
@@ -72,6 +72,12 @@ BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_PPPD=y
BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=135301
diff --git a/buildroot/configs/pps_defconfig b/buildroot/configs/pps_defconfig
index d46b1e7..441df4a 100644
--- a/buildroot/configs/pps_defconfig
+++ b/buildroot/configs/pps_defconfig
@@ -64,6 +64,8 @@ BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-03-05 16:41:08
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 283169459b79af17a2b25f2957f5b10a56d47f52 (commit)
from 1b8cfa2ca37d201bf2be8227a1894b80b061c83f (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 283169459b79af17a2b25f2957f5b10a56d47f52
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 5 17:44:19 2013 +0100
[ROOTFS] WiFi: add WPA config and scripts files
-----------------------------------------------------------------------
Summary of changes:
.../target/device/armadeus/rootfs/device_table.txt | 2 ++
.../rootfs/target_skeleton/etc/wpa_supplicant.conf | 12 ++++++++++++
.../etc/wpa_supplicant/wpa_cli-action.sh | 9 +++++++++
3 files changed, 23 insertions(+), 0 deletions(-)
create mode 100644 buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant.conf
create mode 100755 buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
diff --git a/buildroot/target/device/armadeus/rootfs/device_table.txt b/buildroot/target/device/armadeus/rootfs/device_table.txt
index c1a2775..75bbdca 100644
--- a/buildroot/target/device/armadeus/rootfs/device_table.txt
+++ b/buildroot/target/device/armadeus/rootfs/device_table.txt
@@ -51,6 +51,8 @@
/etc/network/if-down.d d 755 0 0 - - - - -
/etc/network/if-post-down.d d 755 0 0 - - - - -
/usr/share/udhcpc/default.script f 755 0 0 - - - - -
+/etc/wpa_supplicant.conf f 600 0 0 - - - - -
+/etc/wpa_supplicant/wpa_cli-action.sh f 755 0 0 - - - - -
# uncomment this to allow starting x as non-root
#/usr/X11R6/bin/Xfbdev f 4755 0 0 - - - - -
# Normal system devices
diff --git a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant.conf b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant.conf
new file mode 100644
index 0000000..b7a1f6c
--- /dev/null
+++ b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant.conf
@@ -0,0 +1,12 @@
+ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel
+update_config=1
+#network={
+# ssid="armadeus"
+# scan_ssid=1
+# proto=WPA
+# key_mgmt=WPA-PSK
+# pairwise=TKIP
+# #psk="armadeus"
+# psk=b62501c8c8be505405403704845b97a8b56500e102071d7d7a559fb88e8ed070
+#}
+
diff --git a/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
new file mode 100755
index 0000000..8de41ab
--- /dev/null
+++ b/buildroot/target/device/armadeus/rootfs/target_skeleton/etc/wpa_supplicant/wpa_cli-action.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+#
+case $2 in
+CONNECTED)
+ udhcpc -qR -i $1 > /dev/null
+ udhcpc -i $1 > /dev/null
+;;
+esac
+
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2013-03-02 21:21:17
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 1b8cfa2ca37d201bf2be8227a1894b80b061c83f (commit)
from 71f2390fe50166a26aeda363ad5ddfd57f0084fb (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1b8cfa2ca37d201bf2be8227a1894b80b061c83f
Author: Julien Boibessot <jul...@ar...>
Date: Sat Mar 2 22:20:07 2013 +0100
[LINUX] 3.7/3.8: we do not use JFFS2 on APF28
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf28/apf28-linux-3.7.config | 4 ----
.../device/armadeus/apf28/apf28-linux-3.8.config | 4 ----
2 files changed, 0 insertions(+), 8 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.config b/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.config
index 0044f03..3024a00 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.config
+++ b/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.config
@@ -168,10 +168,6 @@ CONFIG_ZISOFS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_CMODE_NONE=y
CONFIG_UBIFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V4=y
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-3.8.config b/buildroot/target/device/armadeus/apf28/apf28-linux-3.8.config
index 10877e6..4b06c85 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-linux-3.8.config
+++ b/buildroot/target/device/armadeus/apf28/apf28-linux-3.8.config
@@ -169,10 +169,6 @@ CONFIG_ZISOFS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_CMODE_NONE=y
CONFIG_UBIFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V4=y
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-23 17:25:25
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 71f2390fe50166a26aeda363ad5ddfd57f0084fb (commit)
from 149f2f336a28adf8b2b78ed0d3cda3d07756310e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 71f2390fe50166a26aeda363ad5ddfd57f0084fb
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 23 18:24:22 2013 +0100
[LINUX][3.8] apf51dev: DT: Add imx51-apf51dev to dts Makefile
-----------------------------------------------------------------------
Summary of changes:
.../3.8/0401-armadeus-add_apf51dev_baseboard.patch | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
index 42c8bfe..cb46567 100644
--- a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
+++ b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
@@ -80,3 +80,15 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+ };
+ };
+};
+Index: linux-3.8/arch/arm/boot/dts/Makefile
+===================================================================
+--- linux-3.8.orig/arch/arm/boot/dts/Makefile
++++ linux-3.8/arch/arm/boot/dts/Makefile
+@@ -80,6 +80,7 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-370-d
+ armada-xp-db.dtb \
+ armada-xp-openblocks-ax3-4.dtb
+ dtb-$(CONFIG_ARCH_MXC) += imx51-apf51.dtb \
++ imx51-apf51dev.dtb \
+ imx51-babbage.dtb \
+ imx53-ard.dtb \
+ imx53-evk.dtb \
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-23 16:53:10
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 149f2f336a28adf8b2b78ed0d3cda3d07756310e (commit)
from 69fb4964789ae5d99800decd702f9d56f0490eec (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 149f2f336a28adf8b2b78ed0d3cda3d07756310e
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 23 17:52:13 2013 +0100
[LINUX][3.8] apf51: add support for led trigger and heartbeat
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf51/apf51-linux-3.8.config | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf51/apf51-linux-3.8.config b/buildroot/target/device/armadeus/apf51/apf51-linux-3.8.config
index 097e725..36fd5b2 100644
--- a/buildroot/target/device/armadeus/apf51/apf51-linux-3.8.config
+++ b/buildroot/target/device/armadeus/apf51/apf51-linux-3.8.config
@@ -219,6 +219,8 @@ CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_WM831X_STATUS=m
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_MXC=y
CONFIG_RTC_DRV_WM831X=y
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-23 16:50:04
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 69fb4964789ae5d99800decd702f9d56f0490eec (commit)
via 531152f41613ea7fb3fd24fc4f2ab05716ef8816 (commit)
from 366f11e8a54f2c2260b74443d2864605ce6c9508 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 69fb4964789ae5d99800decd702f9d56f0490eec
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 23 17:48:17 2013 +0100
[LINUX][3.8] apf51dev: Add fsl,no_sdio_irq property for esdhci2
commit 531152f41613ea7fb3fd24fc4f2ab05716ef8816
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 23 17:46:56 2013 +0100
[LINUX][3.8] imx51: adapt patch 427 from 3.0
-----------------------------------------------------------------------
Summary of changes:
.../3.8/0401-armadeus-add_apf51dev_baseboard.patch | 3 +-
..._possibility_to_deactivate_SDIO_interrupt.patch | 69 ++++++++++++++++++++
2 files changed, 71 insertions(+), 1 deletions(-)
create mode 100644 patches/linux/3.8/0405-armadeus-esdhc-imx-add_possibility_to_deactivate_SDIO_interrupt.patch
diff --git a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
index 92fe7fd..42c8bfe 100644
--- a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
+++ b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
@@ -7,7 +7,7 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
===================================================================
--- /dev/null
+++ linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
-@@ -0,0 +1,71 @@
+@@ -0,0 +1,72 @@
+/*
+ * Copyright 2013 Armadeus Systems - <su...@ar...>
+ *
@@ -59,6 +59,7 @@ Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_esdhc2_1>;
+ bus-width = <4>;
++ fsl,no_sdio_irq;
+ non-removable;
+ status = "okay";
+};
diff --git a/patches/linux/3.8/0405-armadeus-esdhc-imx-add_possibility_to_deactivate_SDIO_interrupt.patch b/patches/linux/3.8/0405-armadeus-esdhc-imx-add_possibility_to_deactivate_SDIO_interrupt.patch
new file mode 100644
index 0000000..0e0e248
--- /dev/null
+++ b/patches/linux/3.8/0405-armadeus-esdhc-imx-add_possibility_to_deactivate_SDIO_interrupt.patch
@@ -0,0 +1,69 @@
+Allows to deactivate SDIO interrupt usage.
+
+Signed-off-by: Julien Boibessot <jul...@ar...>
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+
+Index: linux-3.8/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
+===================================================================
+--- linux-3.8.orig/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
++++ linux-3.8/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt
+@@ -12,6 +12,7 @@ Required properties:
+ Optional properties:
+ - fsl,cd-controller : Indicate to use controller internal card detection
+ - fsl,wp-controller : Indicate to use controller internal write protection
++- fsl,no_sdio_irq : Indicate to not use SDIO IRQ
+
+ Examples:
+
+Index: linux-3.8/drivers/mmc/host/sdhci-esdhc-imx.c
+===================================================================
+--- linux-3.8.orig/drivers/mmc/host/sdhci-esdhc-imx.c
++++ linux-3.8/drivers/mmc/host/sdhci-esdhc-imx.c
+@@ -421,6 +421,9 @@ sdhci_esdhc_imx_probe_dt(struct platform
+ if (of_get_property(np, "fsl,wp-controller", NULL))
+ boarddata->wp_type = ESDHC_WP_CONTROLLER;
+
++ if (of_get_property(np, "fsl,no_sdio_irq", NULL))
++ boarddata->no_sdio_irq = 1;
++
+ boarddata->cd_gpio = of_get_named_gpio(np, "cd-gpios", 0);
+ if (gpio_is_valid(boarddata->cd_gpio))
+ boarddata->cd_type = ESDHC_CD_GPIO;
+@@ -575,6 +578,9 @@ static int sdhci_esdhc_imx_probe(struct
+ break;
+ }
+
++ if (boarddata->no_sdio_irq)
++ host->quirks2 = SDHCI_QUIRK2_HOST_OFF_CARD_ON;
++
+ err = sdhci_add_host(host);
+ if (err)
+ goto disable_clk;
+Index: linux-3.8/drivers/mmc/host/sdhci.c
+===================================================================
+--- linux-3.8.orig/drivers/mmc/host/sdhci.c
++++ linux-3.8/drivers/mmc/host/sdhci.c
+@@ -2823,7 +2823,10 @@ int sdhci_add_host(struct sdhci_host *ho
+
+ mmc->max_discard_to = (1 << 27) / host->timeout_clk;
+
+- mmc->caps |= MMC_CAP_SDIO_IRQ | MMC_CAP_ERASE | MMC_CAP_CMD23;
++ mmc->caps |= MMC_CAP_ERASE | MMC_CAP_CMD23;
++
++ if (!(host->quirks2 & SDHCI_QUIRK2_HOST_OFF_CARD_ON))
++ mmc->caps |= MMC_CAP_SDIO_IRQ;
+
+ if (host->quirks & SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12)
+ host->flags |= SDHCI_AUTO_CMD12;
+Index: linux-3.8/include/linux/platform_data/mmc-esdhc-imx.h
+===================================================================
+--- linux-3.8.orig/include/linux/platform_data/mmc-esdhc-imx.h
++++ linux-3.8/include/linux/platform_data/mmc-esdhc-imx.h
+@@ -37,6 +37,7 @@ enum cd_types {
+ struct esdhc_platform_data {
+ unsigned int wp_gpio;
+ unsigned int cd_gpio;
++ unsigned int no_sdio_irq;
+ enum wp_types wp_type;
+ enum cd_types cd_type;
+ };
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-23 15:27:31
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 366f11e8a54f2c2260b74443d2864605ce6c9508 (commit)
from 01193250dfeea27f21f0ddf23694d74520b03a2a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 366f11e8a54f2c2260b74443d2864605ce6c9508
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 23 16:26:12 2013 +0100
[LINUX][3.8] imx51-apf51dev: Add APF51dev DT support
-----------------------------------------------------------------------
Summary of changes:
.../3.8/0401-armadeus-add_apf51dev_baseboard.patch | 81 ++++++++++++++++++++
1 files changed, 81 insertions(+), 0 deletions(-)
create mode 100644 patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
diff --git a/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
new file mode 100644
index 0000000..92fe7fd
--- /dev/null
+++ b/patches/linux/3.8/0401-armadeus-add_apf51dev_baseboard.patch
@@ -0,0 +1,81 @@
+The APF51Dev is a docking board for an APF51 SOM
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+Signed-off-by: Laurent Cans <lau...@gm...>
+---
+Index: linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+===================================================================
+--- /dev/null
++++ linux-3.8/arch/arm/boot/dts/imx51-apf51dev.dts
+@@ -0,0 +1,71 @@
++/*
++ * Copyright 2013 Armadeus Systems - <su...@ar...>
++ *
++ * The code contained herein is licensed under the GNU General Public
++ * License. You may obtain a copy of the GNU General Public License
++ * Version 2 or later at the following locations:
++ *
++ * http://www.opensource.org/licenses/gpl-license.html
++ * http://www.gnu.org/copyleft/gpl.html
++ */
++
++/* APF51Dev is a docking board for the APF51 SOM */
++/include/ "imx51-apf51.dts"
++
++/ {
++ model = "Armadeus Systems APF51Dev docking/development board";
++ compatible = "armadeus,imx51-apf51dev", "armadeus,imx51-apf51", "fsl,imx51";
++
++ gpio-keys {
++ compatible = "gpio-keys";
++
++ user-key {
++ label = "user";
++ gpios = <&gpio1 3 0>;
++ linux,code = <256>; /* BTN_0 */
++ };
++ };
++
++ leds {
++ compatible = "gpio-leds";
++
++ user {
++ label = "Heartbeat";
++ gpios = <&gpio1 2 0>;
++ linux,default-trigger = "heartbeat";
++ };
++ };
++};
++
++&esdhc1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_esdhc1_1>;
++ cd-gpios = <&gpio2 29 0>;
++ bus-width = <4>;
++ status = "okay";
++};
++
++&esdhc2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_esdhc2_1>;
++ bus-width = <4>;
++ non-removable;
++ status = "okay";
++};
++
++&iomuxc {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hog>;
++
++ hog {
++ pinctrl_hog: hoggrp {
++ fsl,pins = <
++ 129 0x0C5 /* MX51_PAD_EIM_EB2__GPIO2_22 */
++ 135 0x0C5 /* MX51_PAD_EIM_EB3__GPIO2_23 */
++ 159 0x100 /* MX51_PAD_EIM_CS4__GPIO2_29 */
++ 721 0x0C5 /* MX51_PAD_GPIO1_2__GPIO1_2 */
++ 725 0x0C5 /* MX51_PAD_GPIO1_3__GPIO1_3 */
++ >;
++ };
++ };
++};
hooks/post-receive
--
armadeus
|
|
From: SebR <se...@us...> - 2013-02-22 07:33:34
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 01193250dfeea27f21f0ddf23694d74520b03a2a (commit)
from 371e4f951c6192871fe08dce9c5a720259aa2823 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 01193250dfeea27f21f0ddf23694d74520b03a2a
Author: seb <seb...@ar...>
Date: Fri Feb 22 08:33:07 2013 +0100
[BUILDROOT] as_devices_cpp could be build with external toolchain
-----------------------------------------------------------------------
Summary of changes:
buildroot/package/armadeus/as_devices/Config.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/buildroot/package/armadeus/as_devices/Config.in b/buildroot/package/armadeus/as_devices/Config.in
index db1b4e0..356681d 100644
--- a/buildroot/package/armadeus/as_devices/Config.in
+++ b/buildroot/package/armadeus/as_devices/Config.in
@@ -12,7 +12,7 @@ config BR2_PACKAGE_AS_DEVICES_TESTS
config BR2_PACKAGE_AS_DEVICES_CPP
depends on BR2_PACKAGE_AS_DEVICES
- depends on BR2_TOOLCHAIN_BUILDROOT_CXX
+ depends on BR2_INSTALL_LIBSTDCPP
bool "C++ wrapper"
help
C++ wrapper for as_devices library.
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2013-02-20 17:09:10
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 371e4f951c6192871fe08dce9c5a720259aa2823 (commit)
via 5657811c1da3ff2be7fa32f762ee79322b78bd86 (commit)
via a3c08d3d79af531e8c9e6f158e894341c917cc1e (commit)
via b9e953ee959d652b101de72e488e2ee63f284d2e (commit)
from 8de958524a0dc607c524137ca564794775392902 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 371e4f951c6192871fe08dce9c5a720259aa2823
Author: Julien Boibessot <jul...@ar...>
Date: Wed Feb 20 18:07:30 2013 +0100
[TEST] Factorize PWM test instructions and make it usable on non APFxxDev platforms
commit 5657811c1da3ff2be7fa32f762ee79322b78bd86
Author: Julien Boibessot <jul...@ar...>
Date: Wed Feb 20 18:05:24 2013 +0100
[LINUX] Fixes Armadeus custom PWM driver build with recent kernels
commit a3c08d3d79af531e8c9e6f158e894341c917cc1e
Author: Julien Boibessot <jul...@ar...>
Date: Wed Feb 20 18:02:21 2013 +0100
[LINUX] 3.8 is out
commit b9e953ee959d652b101de72e488e2ee63f284d2e
Author: Julien Boibessot <jul...@ar...>
Date: Wed Feb 20 17:58:28 2013 +0100
[LINUX] Fixes fpga_irq_mngr build with 3.7.9+ kernels
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/apf27/apf27-linux-3.8-rc6.config | 1 -
.../armadeus/apf28/apf28-linux-3.8-rc6.config | 1 -
.../armadeus/apf51/apf51-linux-3.8-rc6.config | 1 -
.../armadeus/apf9328/apf9328-linux-3.8-rc6.config | 1 -
patches/linux/3.8-rc6 | 1 -
.../fpga/virtual_components/irq_mngr/main.c | 4 +-
target/linux/modules/pwm/pwm.c | 28 +++++++++++--------
target/test/test_pwm.sh | 25 +++++++++++------
8 files changed, 34 insertions(+), 28 deletions(-)
delete mode 120000 buildroot/target/device/armadeus/apf27/apf27-linux-3.8-rc6.config
delete mode 120000 buildroot/target/device/armadeus/apf28/apf28-linux-3.8-rc6.config
delete mode 120000 buildroot/target/device/armadeus/apf51/apf51-linux-3.8-rc6.config
delete mode 120000 buildroot/target/device/armadeus/apf9328/apf9328-linux-3.8-rc6.config
delete mode 120000 patches/linux/3.8-rc6
diff --git a/buildroot/target/device/armadeus/apf27/apf27-linux-3.8-rc6.config b/buildroot/target/device/armadeus/apf27/apf27-linux-3.8-rc6.config
deleted file mode 120000
index f72e685..0000000
--- a/buildroot/target/device/armadeus/apf27/apf27-linux-3.8-rc6.config
+++ /dev/null
@@ -1 +0,0 @@
-apf27-linux-3.8.config
\ No newline at end of file
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-3.8-rc6.config b/buildroot/target/device/armadeus/apf28/apf28-linux-3.8-rc6.config
deleted file mode 120000
index 9893aa9..0000000
--- a/buildroot/target/device/armadeus/apf28/apf28-linux-3.8-rc6.config
+++ /dev/null
@@ -1 +0,0 @@
-apf28-linux-3.8.config
\ No newline at end of file
diff --git a/buildroot/target/device/armadeus/apf51/apf51-linux-3.8-rc6.config b/buildroot/target/device/armadeus/apf51/apf51-linux-3.8-rc6.config
deleted file mode 120000
index 08e79a8..0000000
--- a/buildroot/target/device/armadeus/apf51/apf51-linux-3.8-rc6.config
+++ /dev/null
@@ -1 +0,0 @@
-apf51-linux-3.8.config
\ No newline at end of file
diff --git a/buildroot/target/device/armadeus/apf9328/apf9328-linux-3.8-rc6.config b/buildroot/target/device/armadeus/apf9328/apf9328-linux-3.8-rc6.config
deleted file mode 120000
index 7c15277..0000000
--- a/buildroot/target/device/armadeus/apf9328/apf9328-linux-3.8-rc6.config
+++ /dev/null
@@ -1 +0,0 @@
-apf9328-linux-3.8.config
\ No newline at end of file
diff --git a/patches/linux/3.8-rc6 b/patches/linux/3.8-rc6
deleted file mode 120000
index 98fccd6..0000000
--- a/patches/linux/3.8-rc6
+++ /dev/null
@@ -1 +0,0 @@
-3.8
\ No newline at end of file
diff --git a/target/linux/modules/fpga/virtual_components/irq_mngr/main.c b/target/linux/modules/fpga/virtual_components/irq_mngr/main.c
index 8d5cba2..1be5fb3 100644
--- a/target/linux/modules/fpga/virtual_components/irq_mngr/main.c
+++ b/target/linux/modules/fpga/virtual_components/irq_mngr/main.c
@@ -36,7 +36,7 @@
#endif
#include <linux/irq.h>
-#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,9)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0)
# include <mach/hardware.h>
# include <mach/irqs.h>
#endif
@@ -47,7 +47,7 @@
#include "irq_mng.h"
#ifndef CONFIG_MACH_APF9328
-#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,9)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0)
# include <mach/fpga.h> /* To remove when MX1 platform is merged */
#else
# include <linux/../../arch/arm/mach-imx/fpga.h>
diff --git a/target/linux/modules/pwm/pwm.c b/target/linux/modules/pwm/pwm.c
index 877aca7..697d5bc 100644
--- a/target/linux/modules/pwm/pwm.c
+++ b/target/linux/modules/pwm/pwm.c
@@ -33,7 +33,7 @@
#include <linux/fcntl.h>
#include <linux/interrupt.h>
#include <asm/io.h>
-#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,7,9)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
#include <mach/hardware.h>
#include <linux/sysdev.h>
#endif
@@ -52,7 +52,7 @@
#include "pwm.h"
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
#define PWMCTRL (0x00)
#define PWMSTATUS (0x04)
#define PWMIRQ (0x08)
@@ -63,7 +63,7 @@
#define PWM_IRQEN (1<<0)
#define PWM_SWR (1<<3)
#define PWM_CLKSRC_MASK (3<<16)
-#if defined(CONFIG_ARCH_MX2)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27)
#define PWM_CLKSRC_IPG (2<<16)
#else
#define PWM_CLKSRC_IPG (1<<16)
@@ -83,7 +83,7 @@
#define PWM_PERIOD(x) ((x) & 0xFFFF)
#define PWM_SAMPLE(x) ((x) & 0xFFFF)
#define PWM_INT MXC_INT_PWM
-#if defined(CONFIG_ARCH_MX2)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27)
# define PWM_MAX_DEV 1
#else
# define PWM_MAX_DEV 2
@@ -126,8 +126,10 @@
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
#define DRIVER_NAME "imx-pwm"
-#else
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
#define DRIVER_NAME "mxc_pwm"
+#else
+#define DRIVER_NAME "imx27-pwm"
#endif
#define DRIVER_VERSION "0.81"
@@ -224,7 +226,7 @@ static int get_current_pwm_clk_rate(struct pwm_device *pwm)
{
if ((readl(pwm->membase + PWMCTRL) & PWM_CLKSRC_MASK) == PWM_CLKSRC_32K)
return 32768;
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
return clk_get_rate(pwm->clk);
#else
return 8000000;
@@ -486,7 +488,7 @@ int pwm_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
break;
}*/
write_bits(PWM_CLKSRC_IPG, PWM_CLKSRC_MASK, pwm->membase + PWMCTRL);
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
write_bits(PWM_PRESCALER(2), PWM_PRESCALER_MASK, pwm->membase + PWMCTRL);
#else
write_bits(PWM_PRESCALER(1), PWM_PRESCALER_MASK, pwm->membase + PWMCTRL);
@@ -804,14 +806,14 @@ static DEVICE_ATTR(active, S_IWUSR | S_IRUGO, pwm_show_state, pwm_store_state);
*/
static irqreturn_t pwm_interrupt(int irq, void *dev_id)
{
-#if !defined(CONFIG_ARCH_MX2) && !defined(CONFIG_ARCH_MX5)
+#if !defined(CONFIG_ARCH_MX2) && !defined(CONFIG_SOC_IMX27) && !defined(CONFIG_ARCH_MX5)
u32 status = 0;
#endif
int remaining = 0;
struct pwm_device *pwm = (struct pwm_device *) dev_id;
/* Acknowledge interrupt */
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
write_bits(PWM_FIFO_EMPTY, PWM_FIFO_EMPTY, pwm->membase + PWMSTATUS);
#else
status = readl(pwm->membase + PWMSTATUS);
@@ -846,7 +848,7 @@ static irqreturn_t pwm_interrupt(int irq, void *dev_id)
writel((u32)(get_byte_from_circbuf(&pwm->circ_buf)), pwm->membase + PWMSAMPLE);
writel((u32)(get_byte_from_circbuf(&pwm->circ_buf)), pwm->membase + PWMSAMPLE);
writel((u32)(get_byte_from_circbuf(&pwm->circ_buf)), pwm->membase + PWMSAMPLE);
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
if ((readl(pwm->membase + PWMSTATUS) & PWM_FIFOAV) == 3) { /* TODO: verify if needed */
writel((u32)(get_byte_from_circbuf(&pwm->circ_buf)), pwm->membase + PWMSAMPLE);
}
@@ -987,11 +989,13 @@ static int imx_pwm_drv_probe(struct platform_device *pdev)
goto error_file;
}
-#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_ARCH_MX5)
+#if defined(CONFIG_ARCH_MX2) || defined(CONFIG_SOC_IMX27) || defined(CONFIG_ARCH_MX5)
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
pwm->clk = clk_get(&pdev->dev, "pwm_clk");
-#else
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
pwm->clk = clk_get(&pdev->dev, "pwm");
+#else
+ pwm->clk = clk_get(&pdev->dev, "per");
#endif
if (IS_ERR(pwm->clk)) {
dev_err(&pdev->dev, "can't get clock\n");
diff --git a/target/test/test_pwm.sh b/target/test/test_pwm.sh
index 8f8e628..f553de2 100755
--- a/target/test/test_pwm.sh
+++ b/target/test/test_pwm.sh
@@ -3,7 +3,7 @@
#
# Script to test Armadeus Software release
#
-# Copyright (C) 2010-2012 The Armadeus Project - Armadeus Systems
+# Copyright (C) 2010-2013 The Armadeus Project - Armadeus Systems
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -47,17 +47,20 @@ load_driver()
prepare_test()
{
+ OSCILLO="Please connect your oscilloscope probe"
+ WHEN_READY="then press ENTER when ready"
if [ "$1" == "APF9328" ]; then
- ask_user "Please connect your oscilloscope probe to pin 4 of X21/Timer connector (GND is on pin 8), then press ENTER when ready"
+ PLAT_MSG="to pin 4 of X21/Timer connector (GND is on pin 8)"
elif [ "$1" == "APF27" ]; then
- ask_user "Please connect your oscilloscope probe to pin 4 of J22 connector (GND is on pin 6 or 40), then press ENTER when ready"
+ PLAT_MSG="to pin 4 of J22 connector (GND is on pin 6 or 40)"
elif [ "$1" == "APF51" ]; then
- ask_user "Please connect your oscilloscope probe to pin 6 of J35 (Extension) connector (GND is on pin 9 or 10), then press ENTER when ready\n (you can also watch i.MX LED; requires a custom built kernel)"
+ PLAT_MSG="to pin 6 of J35 (Extension) connector (GND is on pin 9 or 10)"
+ EXTRA_PLAT_MSG="\n (you can also watch i.MX LED; requires a custom built kernel)"
elif [ "$1" == "APF28" ]; then
- ask_user "Please connect your oscilloscope probe to pin 26 of J10 connector (GND is on pin 32 or 34), then press ENTER when ready"
- else
- echo "Platform not supported by this test"
+ PLAT_MSG="to pin 26 of J10 connector (GND is on pin 32 or 34)"
fi
+
+ ask_user "$OSCILLO $PLAT_MSG, $WHEN_READY $EXTRA_PLAT_MSG"
}
test_pwm()
@@ -66,7 +69,11 @@ test_pwm()
execute_for_target load_driver
- execute_for_target prepare_test
+ if [ "$1" != "" ]; then
+ prepare_test $1
+ else
+ execute_for_target prepare_test
+ fi
ask_user "Press ENTER when ready to check PWM output (frequencies starting at 100Hz)"
echo 1 > $SYS_DIR/active
@@ -108,5 +115,5 @@ test_pwm()
exit 0
}
-test_pwm
+test_pwm $1
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2013-02-19 20:45:09
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 8de958524a0dc607c524137ca564794775392902 (commit)
via 8e99b208abf0d645985d9b1df9a7fb0935303a83 (commit)
from b7780d8ea8c16bd7c1c8b4357e226aee2c3ad816 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8de958524a0dc607c524137ca564794775392902
Author: Julien Boibessot <jul...@ar...>
Date: Tue Feb 19 21:43:17 2013 +0100
Typo
commit 8e99b208abf0d645985d9b1df9a7fb0935303a83
Author: Julien Boibessot <jul...@ar...>
Date: Tue Feb 19 21:42:00 2013 +0100
[LINUX] 3.7: move to 3.7.9
-----------------------------------------------------------------------
Summary of changes:
...linux-3.7.6.config => apf27-linux-3.7.9.config} | 0
...linux-3.7.6.config => apf28-linux-3.7.9.config} | 0
...nux-3.7.6.config => apf9328-linux-3.7.9.config} | 0
patches/linux/{3.7.6 => 3.7.9} | 0
target/test/test_adc.sh | 5 ++++-
5 files changed, 4 insertions(+), 1 deletions(-)
rename buildroot/target/device/armadeus/apf27/{apf27-linux-3.7.6.config => apf27-linux-3.7.9.config} (100%)
rename buildroot/target/device/armadeus/apf28/{apf28-linux-3.7.6.config => apf28-linux-3.7.9.config} (100%)
rename buildroot/target/device/armadeus/apf9328/{apf9328-linux-3.7.6.config => apf9328-linux-3.7.9.config} (100%)
rename patches/linux/{3.7.6 => 3.7.9} (100%)
diff --git a/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.6.config b/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.9.config
similarity index 100%
rename from buildroot/target/device/armadeus/apf27/apf27-linux-3.7.6.config
rename to buildroot/target/device/armadeus/apf27/apf27-linux-3.7.9.config
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.6.config b/buildroot/target/device/armadeus/apf28/apf28-linux-3.7.9.config
similarity index 100%
rename from buildroot/target/device/armadeus/apf28/apf28-linux-3.7.6.config
rename to buildroot/target/device/armadeus/apf28/apf28-linux-3.7.9.config
diff --git a/buildroot/target/device/armadeus/apf9328/apf9328-linux-3.7.6.config b/buildroot/target/device/armadeus/apf9328/apf9328-linux-3.7.9.config
similarity index 100%
rename from buildroot/target/device/armadeus/apf9328/apf9328-linux-3.7.6.config
rename to buildroot/target/device/armadeus/apf9328/apf9328-linux-3.7.9.config
diff --git a/patches/linux/3.7.6 b/patches/linux/3.7.9
similarity index 100%
rename from patches/linux/3.7.6
rename to patches/linux/3.7.9
diff --git a/target/test/test_adc.sh b/target/test/test_adc.sh
index fd7e378..9233af6 100755
--- a/target/test/test_adc.sh
+++ b/target/test/test_adc.sh
@@ -66,11 +66,14 @@ test_running_as1531()
if [ "$VALUE" -gt 3 ]; then
exit_failed
fi
- ask_user "Connect (jumper) pin 5 (REF) and 6 (AIN6) of ADC connector, then press ENTER"
+ echo "OK"
+ ask_user "Connect (jumper) pin 5 (REF) and 6 (AIN6) of ADC connector, then press ENTER"
VALUE=`cat /sys/bus/spi/devices/spi0.0/in6_input`
if [ "$VALUE" -lt 2497 ]; then
exit_failed
fi
+ echo "OK"
+
return 0
}
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-02-17 21:13:07
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via b7780d8ea8c16bd7c1c8b4357e226aee2c3ad816 (commit)
from 68db2ee13e476ea50889bc768c4272adb29b5f3d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit b7780d8ea8c16bd7c1c8b4357e226aee2c3ad816
Author: Eric Jarrige <eri...@ar...>
Date: Sun Feb 17 22:16:14 2013 +0100
[TEST] apf51: audio: Fix audio capture default parameter
-----------------------------------------------------------------------
Summary of changes:
target/test/test_audio.sh | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/target/test/test_audio.sh b/target/test/test_audio.sh
index 7e2655c..f5347da 100755
--- a/target/test/test_audio.sh
+++ b/target/test/test_audio.sh
@@ -56,7 +56,10 @@ test_audio_in_init()
amixer cset numid=7 on
amixer cset numid=6 30
elif [ "$1" == "APF51" ]; then
- echo
+ amixer cset numid=1 48,0
+ amixer cset numid=44 on
+ amixer cset numid=50 on
+ amixer cset numid=3 on,on
else
echo "Platform not supported by this test"
fi
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-16 08:20:13
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 68db2ee13e476ea50889bc768c4272adb29b5f3d (commit)
via 1159c4e4e9aa2d31c9ce825b9c3bfc46afc110fb (commit)
from 0ef82df1ba031cb97e4301620d7ccf23a67f2e0c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 68db2ee13e476ea50889bc768c4272adb29b5f3d
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 16 09:19:16 2013 +0100
[LINUX][3.8] apf28dev: dts: add support for touchscreen
commit 1159c4e4e9aa2d31c9ce825b9c3bfc46afc110fb
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 16 09:18:35 2013 +0100
[LINUX][3.8] mxs: adapt linaro patch for touchscreen support through lradc
-----------------------------------------------------------------------
Summary of changes:
.../linux/3.8/0420-armadeus-Add-apf28dev-dts.patch | 14 +-
...mxs-iio-implement_support_for_touchscreen.patch | 718 ++++++++++++++++++++
2 files changed, 729 insertions(+), 3 deletions(-)
create mode 100644 patches/linux/3.8/0421-linaro-mxs-iio-implement_support_for_touchscreen.patch
diff --git a/patches/linux/3.8/0420-armadeus-Add-apf28dev-dts.patch b/patches/linux/3.8/0420-armadeus-Add-apf28dev-dts.patch
index 90ceb91..74106d8 100644
--- a/patches/linux/3.8/0420-armadeus-Add-apf28dev-dts.patch
+++ b/patches/linux/3.8/0420-armadeus-Add-apf28dev-dts.patch
@@ -1,10 +1,10 @@
Signed-off-by: Julien Boibessot <jul...@ar...>
-Index: linux-3.8-rc1/arch/arm/boot/dts/imx28-apf28dev.dts
+Index: linux-3.8-rc5/arch/arm/boot/dts/imx28-apf28dev.dts
===================================================================
---- linux-3.8-rc1.orig/arch/arm/boot/dts/imx28-apf28dev.dts 2012-12-22 02:19:00.000000000 +0100
-+++ linux-3.8-rc1/arch/arm/boot/dts/imx28-apf28dev.dts 2013-01-01 21:19:57.000000000 +0100
+--- linux-3.8-rc5.orig/arch/arm/boot/dts/imx28-apf28dev.dts
++++ linux-3.8-rc5/arch/arm/boot/dts/imx28-apf28dev.dts
@@ -32,6 +32,13 @@
pinctrl-names = "default";
pinctrl-0 = <&spi2_pins_a>;
@@ -27,3 +27,11 @@ Index: linux-3.8-rc1/arch/arm/boot/dts/imx28-apf28dev.dts
>;
fsl,drive-strength = <0>;
fsl,voltage = <1>;
+@@ -78,6 +86,7 @@
+
+ apbx@80040000 {
+ lradc@80050000 {
++ fsl,lradc-touchscreen-wires = <4>;
+ status = "okay";
+ };
+
diff --git a/patches/linux/3.8/0421-linaro-mxs-iio-implement_support_for_touchscreen.patch b/patches/linux/3.8/0421-linaro-mxs-iio-implement_support_for_touchscreen.patch
new file mode 100644
index 0000000..b813157
--- /dev/null
+++ b/patches/linux/3.8/0421-linaro-mxs-iio-implement_support_for_touchscreen.patch
@@ -0,0 +1,718 @@
+This patch implements support for sampling of a touchscreen into
+the MXS LRADC driver. The LRADC block allows configuring some of
+it's channels into special mode where they either output the drive
+voltage or sample it, allowing it to operate a 4-wire or 5-wire
+resistive touchscreen.
+
+In case the touchscreen mode is enabled, the LRADC slot #7 is
+reserved for touchscreen only, therefore it is not possible to
+sample 8 LRADC channels at time, but only 7 channels.
+
+The touchscreen controller is configured such that the PENDOWN event
+disables touchscreen interrupts and triggers execution of worker
+thread, which then polls the touchscreen controller for X, Y and
+Pressure values. This reduces the overhead of interrupt-driven
+operation. Upon the PENUP event, the worker thread re-enables the
+PENDOWN detection interrupt and exits.
+
+Signed-off-by: Marek Vasut <ma...@de...>
+Cc: Dmitry Torokhov <dmi...@gm...>
+Cc: Fabio Estevam <fab...@fr...>
+Cc: Jonathan Cameron <ji...@ke...>
+Cc: Shawn Guo <sha...@li...>
+---
+ .../bindings/staging/iio/adc/mxs-lradc.txt | 6 +
+ drivers/staging/iio/adc/mxs-lradc.c | 472 +++++++++++++++++++-
+ 2 files changed, 454 insertions(+), 24 deletions(-)
+
+V2: - Replace the use_touchscreen* with enum mxs_lradc_ts, which now tracks
+ touchscreen state (OFF, 4-wire, 5-wire)
+ - Add "stop_touchscreen" bit, which indicates the touchscreen is going down
+ and makes the driver not re-enable touchscreen interrupts and start any
+ new touchscreen works.
+ - Make all bitfields "unsigned int" instead of plain "int"
+ - Use switch(plate) in mxs_lradc_ts_sample()
+ - Cancel touchscreen thread in mxs_lradc_ts_close(), do this only after
+ we are sure touchscreen interrupt is off and will never be re-enabled.
+ This avoids serious race condition.
+ - Call input_free_device() if input_register_device() fails to avoid memory
+ leak.
+ - Do not call input_free_device() after input_unregister_device() in
+ mxs_lradc_ts_unregister() to avoid double-free
+
+V3: - Replace bitfields with bools
+ - Make sure touchscreen workQ doesn't cause race condition upon closing
+ the input device
+ - Make touchscreen allocation failure fatal
+ - Remove redundant check for lradc->ts_input in mxs_lradc_ts_unregister()
+ - Drop __devinit and __devexit
+
+V4: - Do not unconfigure lradc->use_touchscreen in mxs_lradc_ts_register()
+ when the probe fails
+ - Return true/false from mxs_lradc_validate_scan_mask() instead of 1/0
+
+diff --git a/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt b/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt
+index 801d58c..4688205 100644
+--- a/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt
++++ b/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt
+@@ -5,6 +5,12 @@ Required properties:
+ - reg: Address and length of the register set for the device
+ - interrupts: Should contain the LRADC interrupts
+
++Optional properties:
++- fsl,lradc-touchscreen-wires: Number of wires used to connect the touchscreen
++ to LRADC. Valid value is either 4 or 5. If this
++ property is not present, then the touchscreen is
++ disabled.
++
+ Examples:
+
+ lradc@80050000 {
+diff --git a/drivers/staging/iio/adc/mxs-lradc.c b/drivers/staging/iio/adc/mxs-lradc.c
+index 6249957..5a544d4 100644
+--- a/drivers/staging/iio/adc/mxs-lradc.c
++++ b/drivers/staging/iio/adc/mxs-lradc.c
+@@ -32,6 +32,8 @@
+ #include <linux/stmp_device.h>
+ #include <linux/bitops.h>
+ #include <linux/completion.h>
++#include <linux/delay.h>
++#include <linux/input.h>
+
+ #include <mach/mxs.h>
+ #include <mach/common.h>
+@@ -59,6 +61,21 @@
+ #define LRADC_DELAY_TIMER_PER 200
+ #define LRADC_DELAY_TIMER_LOOP 5
+
++/*
++ * Once the pen touches the touchscreen, the touchscreen switches from
++ * IRQ-driven mode to polling mode to prevent interrupt storm. The polling
++ * is realized by worker thread, which is called every 20 or so milliseconds.
++ * This gives the touchscreen enough fluence and does not strain the system
++ * too much.
++ */
++#define LRADC_TS_SAMPLE_DELAY_MS 5
++
++/*
++ * The LRADC reads the following amount of samples from each touchscreen
++ * channel and the driver then computes avarage of these.
++ */
++#define LRADC_TS_SAMPLE_AMOUNT 4
++
+ static const char * const mxs_lradc_irq_name[] = {
+ "mxs-lradc-touchscreen",
+ "mxs-lradc-thresh0",
+@@ -80,6 +97,12 @@ static const char * const mxs_lradc_irq_name[] = {
+ uint8_t flags;
+ };
+
++enum mxs_lradc_ts {
++ MXS_LRADC_TOUCHSCREEN_NONE = 0,
++ MXS_LRADC_TOUCHSCREEN_4WIRE,
++ MXS_LRADC_TOUCHSCREEN_5WIRE,
++};
++
+ struct mxs_lradc {
+ struct device *dev;
+ void __iomem *base;
+@@ -93,21 +116,69 @@ struct mxs_lradc {
+ uint8_t enable;
+
+ struct completion completion;
++
++ /*
++ * Touchscreen LRADC channels receives a private slot in the CTRL4
++ * register, the slot #7. Therefore only 7 slots instead of 8 in the
++ * CTRL4 register can be mapped to LRADC channels when using the
++ * touchscreen.
++ *
++ * Furthermore, certain LRADC channels are shared between touchscreen
++ * and/or touch-buttons and generic LRADC block. Therefore when using
++ * either of these, these channels are not available for the regular
++ * sampling. The shared channels are as follows:
++ *
++ * CH0 -- Touch button #0
++ * CH1 -- Touch button #1
++ * CH2 -- Touch screen XPUL
++ * CH3 -- Touch screen YPLL
++ * CH4 -- Touch screen XNUL
++ * CH5 -- Touch screen YNLR
++ * CH6 -- Touch screen WIPER (5-wire only)
++ *
++ * The bitfields below represents which parts of the LRADC block are
++ * switched into special mode of operation. These channels can not
++ * be sampled as regular LRADC channels. The driver will refuse any
++ * attempt to sample these channels.
++ */
++#define CHAN_MASK_TOUCHBUTTON (0x3 << 0)
++#define CHAN_MASK_TOUCHSCREEN_4WIRE (0xf << 2)
++#define CHAN_MASK_TOUCHSCREEN_5WIRE (0x1f << 2)
++ enum mxs_lradc_ts use_touchscreen;
++ bool stop_touchscreen;
++ bool use_touchbutton;
++
++ struct input_dev *ts_input;
++ struct work_struct ts_work;
+ };
+
+ #define LRADC_CTRL0 0x00
+-#define LRADC_CTRL0_TOUCH_DETECT_ENABLE (1 << 23)
+-#define LRADC_CTRL0_TOUCH_SCREEN_TYPE (1 << 22)
++#define LRADC_CTRL0_TOUCH_DETECT_ENABLE (1 << 23)
++#define LRADC_CTRL0_TOUCH_SCREEN_TYPE (1 << 22)
++#define LRADC_CTRL0_YNNSW /* YM */ (1 << 21)
++#define LRADC_CTRL0_YPNSW /* YP */ (1 << 20)
++#define LRADC_CTRL0_YPPSW /* YP */ (1 << 19)
++#define LRADC_CTRL0_XNNSW /* XM */ (1 << 18)
++#define LRADC_CTRL0_XNPSW /* XM */ (1 << 17)
++#define LRADC_CTRL0_XPPSW /* XP */ (1 << 16)
++#define LRADC_CTRL0_PLATE_MASK (0x3f << 16)
+
+ #define LRADC_CTRL1 0x10
+-#define LRADC_CTRL1_LRADC_IRQ(n) (1 << (n))
+-#define LRADC_CTRL1_LRADC_IRQ_MASK 0x1fff
++#define LRADC_CTRL1_TOUCH_DETECT_IRQ_EN (1 << 24)
+ #define LRADC_CTRL1_LRADC_IRQ_EN(n) (1 << ((n) + 16))
+ #define LRADC_CTRL1_LRADC_IRQ_EN_MASK (0x1fff << 16)
++#define LRADC_CTRL1_LRADC_IRQ_EN_OFFSET 16
++#define LRADC_CTRL1_TOUCH_DETECT_IRQ (1 << 8)
++#define LRADC_CTRL1_LRADC_IRQ(n) (1 << (n))
++#define LRADC_CTRL1_LRADC_IRQ_MASK 0x1fff
++#define LRADC_CTRL1_LRADC_IRQ_OFFSET 0
+
+ #define LRADC_CTRL2 0x20
+ #define LRADC_CTRL2_TEMPSENSE_PWD (1 << 15)
+
++#define LRADC_STATUS 0x40
++#define LRADC_STATUS_TOUCH_DETECT_RAW (1 << 0)
++
+ #define LRADC_CH(n) (0x50 + (0x10 * (n)))
+ #define LRADC_CH_ACCUMULATE (1 << 29)
+ #define LRADC_CH_NUM_SAMPLES_MASK (0x1f << 24)
+@@ -139,6 +210,7 @@ static int mxs_lradc_read_raw(struct iio_dev *iio_dev,
+ {
+ struct mxs_lradc *lradc = iio_priv(iio_dev);
+ int ret;
++ unsigned long mask;
+
+ if (m != IIO_CHAN_INFO_RAW)
+ return -EINVAL;
+@@ -147,6 +219,12 @@ static int mxs_lradc_read_raw(struct iio_dev *iio_dev,
+ if (chan->channel > LRADC_MAX_TOTAL_CHANS)
+ return -EINVAL;
+
++ /* Validate the channel if it doesn't intersect with reserved chans. */
++ bitmap_set(&mask, chan->channel, 1);
++ ret = iio_validate_scan_mask_onehot(iio_dev, &mask);
++ if (ret)
++ return -EINVAL;
++
+ /*
+ * See if there is no buffered operation in progess. If there is, simply
+ * bail out. This can be improved to support both buffered and raw IO at
+@@ -168,7 +246,11 @@ static int mxs_lradc_read_raw(struct iio_dev *iio_dev,
+ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
+ writel(0xff, lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
+
+- writel(chan->channel, lradc->base + LRADC_CTRL4);
++ /* Clean the slot's previous content, then set new one. */
++ writel(LRADC_CTRL4_LRADCSELECT_MASK(0),
++ lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_CLR);
++ writel(chan->channel, lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_SET);
++
+ writel(0, lradc->base + LRADC_CH(0));
+
+ /* Enable the IRQ and start sampling the channel. */
+@@ -202,6 +284,269 @@ static const struct iio_info mxs_lradc_iio_info = {
+ };
+
+ /*
++ * Touchscreen handling
++ */
++enum lradc_ts_plate {
++ LRADC_SAMPLE_X,
++ LRADC_SAMPLE_Y,
++ LRADC_SAMPLE_PRESSURE,
++};
++
++static int mxs_lradc_ts_touched(struct mxs_lradc *lradc)
++{
++ uint32_t reg;
++
++ /* Enable touch detection. */
++ writel(LRADC_CTRL0_PLATE_MASK,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
++ writel(LRADC_CTRL0_TOUCH_DETECT_ENABLE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_SET);
++
++ msleep(LRADC_TS_SAMPLE_DELAY_MS);
++
++ reg = readl(lradc->base + LRADC_STATUS);
++
++ return reg & LRADC_STATUS_TOUCH_DETECT_RAW;
++}
++
++static int32_t mxs_lradc_ts_sample(struct mxs_lradc *lradc,
++ enum lradc_ts_plate plate, int change)
++{
++ unsigned long delay, jiff;
++ uint32_t reg, ctrl0 = 0, chan = 0;
++ /* The touchscreen always uses CTRL4 slot #7. */
++ const uint8_t slot = 7;
++ uint32_t val;
++
++ /*
++ * There are three correct configurations of the controller sampling
++ * the touchscreen, each of these configuration provides different
++ * information from the touchscreen.
++ *
++ * The following table describes the sampling configurations:
++ * +-------------+-------+-------+-------+
++ * | Wire \ Axis | X | Y | Z |
++ * +---------------------+-------+-------+
++ * | X+ (CH2) | HI | TS | TS |
++ * +-------------+-------+-------+-------+
++ * | X- (CH4) | LO | SH | HI |
++ * +-------------+-------+-------+-------+
++ * | Y+ (CH3) | SH | HI | HI |
++ * +-------------+-------+-------+-------+
++ * | Y- (CH5) | TS | LO | SH |
++ * +-------------+-------+-------+-------+
++ *
++ * HI ... strong '1' ; LO ... strong '0'
++ * SH ... sample here ; TS ... tri-state
++ *
++ * There are a few other ways of obtaining the Z coordinate
++ * (aka. pressure), but the one in the table seems to be the
++ * most reliable one.
++ */
++ switch (plate) {
++ case LRADC_SAMPLE_X:
++ ctrl0 = LRADC_CTRL0_XPPSW | LRADC_CTRL0_XNNSW;
++ chan = 3;
++ break;
++ case LRADC_SAMPLE_Y:
++ ctrl0 = LRADC_CTRL0_YPPSW | LRADC_CTRL0_YNNSW;
++ chan = 4;
++ break;
++ case LRADC_SAMPLE_PRESSURE:
++ ctrl0 = LRADC_CTRL0_YPPSW | LRADC_CTRL0_XNNSW;
++ chan = 5;
++ break;
++ }
++
++ if (change) {
++ writel(LRADC_CTRL0_PLATE_MASK,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
++ writel(ctrl0, lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_SET);
++
++ writel(LRADC_CTRL4_LRADCSELECT_MASK(slot),
++ lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_CLR);
++ writel(chan << LRADC_CTRL4_LRADCSELECT_OFFSET(slot),
++ lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_SET);
++ }
++
++ writel(0xffffffff, lradc->base + LRADC_CH(slot) + STMP_OFFSET_REG_CLR);
++ writel(1 << slot, lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_SET);
++
++ delay = jiffies + msecs_to_jiffies(LRADC_TS_SAMPLE_DELAY_MS);
++ do {
++ jiff = jiffies;
++ reg = readl_relaxed(lradc->base + LRADC_CTRL1);
++ if (reg & LRADC_CTRL1_LRADC_IRQ(slot))
++ break;
++ } while (time_before(jiff, delay));
++
++ writel(LRADC_CTRL1_LRADC_IRQ(slot),
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
++
++ if (time_after_eq(jiff, delay))
++ return -ETIMEDOUT;
++
++ val = readl(lradc->base + LRADC_CH(slot));
++ val &= LRADC_CH_VALUE_MASK;
++
++ return val;
++}
++
++static int32_t mxs_lradc_ts_sample_filter(struct mxs_lradc *lradc,
++ enum lradc_ts_plate plate)
++{
++ int32_t val, tot = 0;
++ int i;
++
++ val = mxs_lradc_ts_sample(lradc, plate, 1);
++
++ /* Delay a bit so the touchscreen is stable. */
++ mdelay(2);
++
++ for (i = 0; i < LRADC_TS_SAMPLE_AMOUNT; i++) {
++ val = mxs_lradc_ts_sample(lradc, plate, 0);
++ tot += val;
++ }
++
++ return tot / LRADC_TS_SAMPLE_AMOUNT;
++}
++
++static void mxs_lradc_ts_work(struct work_struct *ts_work)
++{
++ struct mxs_lradc *lradc = container_of(ts_work,
++ struct mxs_lradc, ts_work);
++ int val_x, val_y, val_p;
++ bool valid = false;
++
++ while (mxs_lradc_ts_touched(lradc)) {
++ /* Disable touch detector so we can sample the touchscreen. */
++ writel(LRADC_CTRL0_TOUCH_DETECT_ENABLE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
++
++ if (likely(valid)) {
++ input_report_abs(lradc->ts_input, ABS_X, val_x);
++ input_report_abs(lradc->ts_input, ABS_Y, val_y);
++ input_report_abs(lradc->ts_input, ABS_PRESSURE, val_p);
++ input_report_key(lradc->ts_input, BTN_TOUCH, 1);
++ input_sync(lradc->ts_input);
++ }
++
++ valid = false;
++
++ val_x = mxs_lradc_ts_sample_filter(lradc, LRADC_SAMPLE_X);
++ if (val_x < 0)
++ continue;
++ val_y = mxs_lradc_ts_sample_filter(lradc, LRADC_SAMPLE_Y);
++ if (val_y < 0)
++ continue;
++ val_p = mxs_lradc_ts_sample_filter(lradc, LRADC_SAMPLE_PRESSURE);
++ if (val_p < 0)
++ continue;
++
++ valid = true;
++ }
++
++ input_report_abs(lradc->ts_input, ABS_PRESSURE, 0);
++ input_report_key(lradc->ts_input, BTN_TOUCH, 0);
++ input_sync(lradc->ts_input);
++
++ /* Do not restart the TS IRQ if the driver is shutting down. */
++ if (lradc->stop_touchscreen)
++ return;
++
++ /* Restart the touchscreen interrupts. */
++ writel(LRADC_CTRL1_TOUCH_DETECT_IRQ,
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
++ writel(LRADC_CTRL1_TOUCH_DETECT_IRQ_EN,
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_SET);
++}
++
++static int mxs_lradc_ts_open(struct input_dev *dev)
++{
++ struct mxs_lradc *lradc = input_get_drvdata(dev);
++
++ /* The touchscreen is starting. */
++ lradc->stop_touchscreen = false;
++
++ /* Enable the touch-detect circuitry. */
++ writel(LRADC_CTRL0_TOUCH_DETECT_ENABLE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_SET);
++
++ /* Enable the touch-detect IRQ. */
++ writel(LRADC_CTRL1_TOUCH_DETECT_IRQ_EN,
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_SET);
++
++ return 0;
++}
++
++static void mxs_lradc_ts_close(struct input_dev *dev)
++{
++ struct mxs_lradc *lradc = input_get_drvdata(dev);
++
++ /* Indicate the touchscreen is stopping. */
++ lradc->stop_touchscreen = true;
++ mb();
++
++ /* Wait until touchscreen thread finishes any possible remnants. */
++ cancel_work_sync(&lradc->ts_work);
++
++ /* Disable touchscreen touch-detect IRQ. */
++ writel(LRADC_CTRL1_TOUCH_DETECT_IRQ_EN,
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
++
++ /* Power-down touchscreen touch-detect circuitry. */
++ writel(LRADC_CTRL0_TOUCH_DETECT_ENABLE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
++}
++
++static int mxs_lradc_ts_register(struct mxs_lradc *lradc)
++{
++ struct input_dev *input;
++ struct device *dev = lradc->dev;
++ int ret;
++
++ if (!lradc->use_touchscreen)
++ return 0;
++
++ input = input_allocate_device();
++ if (!input) {
++ dev_err(dev, "Failed to allocate TS device!\n");
++ return -ENOMEM;
++ }
++
++ input->name = DRIVER_NAME;
++ input->id.bustype = BUS_HOST;
++ input->dev.parent = dev;
++ input->open = mxs_lradc_ts_open;
++ input->close = mxs_lradc_ts_close;
++
++ __set_bit(EV_ABS, input->evbit);
++ __set_bit(EV_KEY, input->evbit);
++ __set_bit(BTN_TOUCH, input->keybit);
++ input_set_abs_params(input, ABS_X, 0, LRADC_CH_VALUE_MASK, 0, 0);
++ input_set_abs_params(input, ABS_Y, 0, LRADC_CH_VALUE_MASK, 0, 0);
++ input_set_abs_params(input, ABS_PRESSURE, 0, LRADC_CH_VALUE_MASK, 0, 0);
++
++ lradc->ts_input = input;
++ input_set_drvdata(input, lradc);
++ ret = input_register_device(input);
++ if (ret)
++ input_free_device(lradc->ts_input);
++
++ return ret;
++}
++
++static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc)
++{
++ if (!lradc->use_touchscreen)
++ return;
++
++ cancel_work_sync(&lradc->ts_work);
++
++ input_unregister_device(lradc->ts_input);
++}
++
++/*
+ * IRQ Handling
+ */
+ static irqreturn_t mxs_lradc_handle_irq(int irq, void *data)
+@@ -209,14 +554,24 @@ static irqreturn_t mxs_lradc_handle_irq(int irq, void *data)
+ struct iio_dev *iio = data;
+ struct mxs_lradc *lradc = iio_priv(iio);
+ unsigned long reg = readl(lradc->base + LRADC_CTRL1);
++ const uint32_t ts_irq_mask =
++ LRADC_CTRL1_TOUCH_DETECT_IRQ_EN |
++ LRADC_CTRL1_TOUCH_DETECT_IRQ;
+
+ if (!(reg & LRADC_CTRL1_LRADC_IRQ_MASK))
+ return IRQ_NONE;
+
+ /*
+- * Touchscreen IRQ handling code shall probably have priority
+- * and therefore shall be placed here.
++ * Touchscreen IRQ handling code has priority and therefore
++ * is placed here. In case touchscreen IRQ arrives, disable
++ * it ASAP
+ */
++ if (reg & LRADC_CTRL1_TOUCH_DETECT_IRQ) {
++ writel(ts_irq_mask,
++ lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_CLR);
++ if (!lradc->stop_touchscreen)
++ schedule_work(&lradc->ts_work);
++ }
+
+ if (iio_buffer_enabled(iio))
+ iio_trigger_poll(iio->trig, iio_get_time_ns());
+@@ -312,8 +667,10 @@ static int mxs_lradc_buffer_preenable(struct iio_dev *iio)
+ {
+ struct mxs_lradc *lradc = iio_priv(iio);
+ struct iio_buffer *buffer = iio->buffer;
+- int ret = 0, chan, ofs = 0, enable = 0;
+- uint32_t ctrl4 = 0;
++ int ret = 0, chan, ofs = 0;
++ unsigned long enable = 0;
++ uint32_t ctrl4_set = 0;
++ uint32_t ctrl4_clr = 0;
+ uint32_t ctrl1_irq = 0;
+ const uint32_t chan_value = LRADC_CH_ACCUMULATE |
+ ((LRADC_DELAY_TIMER_LOOP - 1) << LRADC_CH_NUM_SAMPLES_OFFSET);
+@@ -345,17 +702,20 @@ static int mxs_lradc_buffer_preenable(struct iio_dev *iio)
+ writel(0xff, lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
+
+ for_each_set_bit(chan, buffer->scan_mask, LRADC_MAX_TOTAL_CHANS) {
+- ctrl4 |= chan << LRADC_CTRL4_LRADCSELECT_OFFSET(ofs);
++ ctrl4_set |= chan << LRADC_CTRL4_LRADCSELECT_OFFSET(ofs);
++ ctrl4_clr |= LRADC_CTRL4_LRADCSELECT_MASK(ofs);
+ ctrl1_irq |= LRADC_CTRL1_LRADC_IRQ_EN(ofs);
+ writel(chan_value, lradc->base + LRADC_CH(ofs));
+- enable |= 1 << ofs;
++ bitmap_set(&enable, ofs, 1);
+ ofs++;
+ }
+
+ writel(LRADC_DELAY_TRIGGER_LRADCS_MASK | LRADC_DELAY_KICK,
+ lradc->base + LRADC_DELAY(0) + STMP_OFFSET_REG_CLR);
+
+- writel(ctrl4, lradc->base + LRADC_CTRL4);
++ writel(ctrl4_clr, lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_CLR);
++ writel(ctrl4_set, lradc->base + LRADC_CTRL4 + STMP_OFFSET_REG_SET);
++
+ writel(ctrl1_irq, lradc->base + LRADC_CTRL1 + STMP_OFFSET_REG_SET);
+
+ writel(enable << LRADC_DELAY_TRIGGER_LRADCS_OFFSET,
+@@ -390,9 +750,33 @@ static int mxs_lradc_buffer_postdisable(struct iio_dev *iio)
+ static bool mxs_lradc_validate_scan_mask(struct iio_dev *iio,
+ const unsigned long *mask)
+ {
+- const int mw = bitmap_weight(mask, iio->masklength);
++ struct mxs_lradc *lradc = iio_priv(iio);
++ const int len = iio->masklength;
++ const int map_chans = bitmap_weight(mask, len);
++ int rsvd_chans = 0;
++ unsigned long rsvd_mask = 0;
++
++ if (lradc->use_touchbutton)
++ rsvd_mask |= CHAN_MASK_TOUCHBUTTON;
++ if (lradc->use_touchscreen == MXS_LRADC_TOUCHSCREEN_4WIRE)
++ rsvd_mask |= CHAN_MASK_TOUCHSCREEN_4WIRE;
++ if (lradc->use_touchscreen == MXS_LRADC_TOUCHSCREEN_5WIRE)
++ rsvd_mask |= CHAN_MASK_TOUCHSCREEN_5WIRE;
++
++ if (lradc->use_touchbutton)
++ rsvd_chans++;
++ if (lradc->use_touchscreen)
++ rsvd_chans++;
++
++ /* Test for attempts to map channels with special mode of operation. */
++ if (bitmap_intersects(mask, &rsvd_mask, len))
++ return false;
++
++ /* Test for attempts to map more channels then available slots. */
++ if (map_chans + rsvd_chans > LRADC_MAX_MAPPED_CHANS)
++ return false;
+
+- return mw <= LRADC_MAX_MAPPED_CHANS;
++ return true;
+ }
+
+ static const struct iio_buffer_setup_ops mxs_lradc_buffer_ops = {
+@@ -441,15 +825,29 @@ static const struct iio_chan_spec mxs_lradc_chan_spec[] = {
+
+ static void mxs_lradc_hw_init(struct mxs_lradc *lradc)
+ {
+- int i;
+- const uint32_t cfg =
++ /* The ADC always uses DELAY CHANNEL 0. */
++ const uint32_t adc_cfg =
++ (1 << (LRADC_DELAY_TRIGGER_DELAYS_OFFSET + 0)) |
+ (LRADC_DELAY_TIMER_PER << LRADC_DELAY_DELAY_OFFSET);
+
+ stmp_reset_block(lradc->base);
+
+- for (i = 0; i < LRADC_MAX_DELAY_CHANS; i++)
+- writel(cfg | (1 << (LRADC_DELAY_TRIGGER_DELAYS_OFFSET + i)),
+- lradc->base + LRADC_DELAY(i));
++ /* Configure DELAY CHANNEL 0 for generic ADC sampling. */
++ writel(adc_cfg, lradc->base + LRADC_DELAY(0));
++
++ /* Disable remaining DELAY CHANNELs */
++ writel(0, lradc->base + LRADC_DELAY(1));
++ writel(0, lradc->base + LRADC_DELAY(2));
++ writel(0, lradc->base + LRADC_DELAY(3));
++
++ /* Configure the touchscreen type */
++ writel(LRADC_CTRL0_TOUCH_SCREEN_TYPE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_CLR);
++
++ if (lradc->use_touchscreen == MXS_LRADC_TOUCHSCREEN_5WIRE) {
++ writel(LRADC_CTRL0_TOUCH_SCREEN_TYPE,
++ lradc->base + LRADC_CTRL0 + STMP_OFFSET_REG_SET);
++ }
+
+ /* Start internal temperature sensing. */
+ writel(0, lradc->base + LRADC_CTRL2);
+@@ -469,9 +867,11 @@
+ static int mxs_lradc_probe(struct platform_device *pdev)
+ {
+ struct device *dev = &pdev->dev;
++ struct device_node *node = dev->of_node;
+ struct mxs_lradc *lradc;
+ struct iio_dev *iio;
+ struct resource *iores;
++ uint32_t ts_wires = 0;
+ int ret = 0;
+ int i;
+
+@@ -493,6 +893,21 @@ static int __devinit mxs_lradc_probe(struct platform_device *pdev)
+ goto err_addr;
+ }
+
++ INIT_WORK(&lradc->ts_work, mxs_lradc_ts_work);
++
++ /* Check if touchscreen is enabled in DT. */
++ ret = of_property_read_u32(node, "fsl,lradc-touchscreen-wires",
++ &ts_wires);
++ if (ret)
++ dev_info(dev, "Touchscreen not enabled.\n");
++ else if (ts_wires == 4)
++ lradc->use_touchscreen = MXS_LRADC_TOUCHSCREEN_4WIRE;
++ else if (ts_wires == 5)
++ lradc->use_touchscreen = MXS_LRADC_TOUCHSCREEN_5WIRE;
++ else
++ dev_warn(dev, "Unsupported number of touchscreen wires (%d)\n",
++ ts_wires);
++
+ /* Grab all IRQ sources */
+ for (i = 0; i < 13; i++) {
+ lradc->irq[i] = platform_get_irq(pdev, i);
+@@ -530,11 +945,16 @@ static int __devinit mxs_lradc_probe(struct platform_device *pdev)
+ if (ret)
+ goto err_trig;
+
++ /* Register the touchscreen input device. */
++ ret = mxs_lradc_ts_register(lradc);
++ if (ret)
++ goto err_dev;
++
+ /* Register IIO device. */
+ ret = iio_device_register(iio);
+ if (ret) {
+ dev_err(dev, "Failed to register IIO device\n");
+- goto err_dev;
++ goto err_ts;
+ }
+
+ /* Configure the hardware. */
+@@ -542,13 +962,15 @@ static int __devinit mxs_lradc_probe(struct platform_device *pdev)
+
+ return 0;
+
++err_ts:
++ mxs_lradc_ts_unregister(lradc);
+ err_dev:
+ mxs_lradc_trigger_remove(iio);
+ err_trig:
+ iio_triggered_buffer_cleanup(iio);
+ err_addr:
+ iio_device_free(iio);
+- return ret;
++ return ret;
+ }
+
+ static int mxs_lradc_remove(struct platform_device *pdev)
+@@ -556,6 +978,8 @@
+ struct iio_dev *iio = platform_get_drvdata(pdev);
+ struct mxs_lradc *lradc = iio_priv(iio);
+
++ mxs_lradc_ts_unregister(lradc);
++
+ mxs_lradc_hw_stop(lradc);
+
+ iio_device_unregister(iio);
+--
+1.7.10.4
+
+
+_______________________________________________
+linux-arm-kernel mailing list
+lin...@li...
+http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
+
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-02-15 16:01:00
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 0ef82df1ba031cb97e4301620d7ccf23a67f2e0c (commit)
from d6fb919014755df4552dea08a22f3c95a6bc4314 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 0ef82df1ba031cb97e4301620d7ccf23a67f2e0c
Author: Eric Jarrige <eri...@ar...>
Date: Fri Feb 15 17:04:22 2013 +0100
[LINUX] 2.6.38: update apf51_dev board to support wm8960 new audio input/ouput capabilities
-----------------------------------------------------------------------
Summary of changes:
.../408-armadeus-add_apf51-dev_baseboard.patch | 29 ++--
...soc-imx-add_apf51dev_wm8960_audio_support.patch | 179 ++++++++++++++------
2 files changed, 140 insertions(+), 68 deletions(-)
diff --git a/patches/linux/2.6.38/408-armadeus-add_apf51-dev_baseboard.patch b/patches/linux/2.6.38/408-armadeus-add_apf51-dev_baseboard.patch
index 2d974ab..7a889aa 100644
--- a/patches/linux/2.6.38/408-armadeus-add_apf51-dev_baseboard.patch
+++ b/patches/linux/2.6.38/408-armadeus-add_apf51-dev_baseboard.patch
@@ -4,8 +4,8 @@ Signed-off-by: Julien Boibessot <jul...@ar...>
Index: linux-2.6.38.8/arch/arm/mach-mx5/Kconfig
===================================================================
---- linux-2.6.38.8.orig/arch/arm/mach-mx5/Kconfig 2012-07-20 10:19:29.000000000 +0200
-+++ linux-2.6.38.8/arch/arm/mach-mx5/Kconfig 2012-07-20 14:54:06.000000000 +0200
+--- linux-2.6.38.8/arch/arm/mach-mx5/Kconfig
++++ linux-2.6.38.8/arch/arm/mach-mx5/Kconfig
@@ -175,4 +175,27 @@
Include support for Armadeus systems APF51 System On Module. This
includes specific configurations for the board and its peripherals.
@@ -36,8 +36,8 @@ Index: linux-2.6.38.8/arch/arm/mach-mx5/Kconfig
endif
Index: linux-2.6.38.8/arch/arm/mach-mx5/Makefile
===================================================================
---- linux-2.6.38.8.orig/arch/arm/mach-mx5/Makefile 2012-07-20 10:19:29.000000000 +0200
-+++ linux-2.6.38.8/arch/arm/mach-mx5/Makefile 2012-07-20 14:54:06.000000000 +0200
+--- linux-2.6.38.8/arch/arm/mach-mx5/Makefile
++++ linux-2.6.38.8/arch/arm/mach-mx5/Makefile
@@ -8,6 +8,7 @@
obj-$(CONFIG_CPU_FREQ_IMX) += cpu_op-mx51.o
@@ -48,9 +48,9 @@ Index: linux-2.6.38.8/arch/arm/mach-mx5/Makefile
obj-$(CONFIG_MACH_MX53_EVK) += board-mx53_evk.o
Index: linux-2.6.38.8/arch/arm/mach-mx5/apf51dev-baseboard.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/arch/arm/mach-mx5/apf51dev-baseboard.c 2012-07-20 13:55:30.000000000 +0200
-@@ -0,0 +1,553 @@
+--- /dev/null
++++ linux-2.6.38.8/arch/arm/mach-mx5/apf51dev-baseboard.c
+@@ -0,0 +1,554 @@
+ /*
+ * Support for APF51's official development baseboard (APF51Dev)
+ *
@@ -356,10 +356,11 @@ Index: linux-2.6.38.8/arch/arm/mach-mx5/apf51dev-baseboard.c
+/* Audio (Wolfson WM8960 connected to I2C & SSI) */
+static struct wm8960_data apf51dev_wm8960_pdata = {
+ .capless = 0, /* Headphone outputs NOT configured in capless mode */
-+// .dres = ??; /* Discharge resistance for headphone outputs */
++ .shared_lrclk = 1,
++ .use_alrcgpio = 1,
+};
+
-+static struct imx_ssi_platform_data apf27dev_ssi_pdata = {
++static struct imx_ssi_platform_data apf51dev_ssi0_pdata = {
+ .flags = IMX_SSI_SYN | IMX_SSI_USE_I2S_SLAVE,
+};
+
@@ -582,14 +583,14 @@ Index: linux-2.6.38.8/arch/arm/mach-mx5/apf51dev-baseboard.c
+ MXC_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT1_SSI0));
+
+ mxc_audmux_v2_configure_port(MX51_AUDMUX_PORT1_SSI0,
-+ MXC_AUDMUX_V2_PTCR_SYN |
-+ MXC_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) |
-+ MXC_AUDMUX_V2_PTCR_TCLKDIR |
++ MXC_AUDMUX_V2_PTCR_TFSDIR |
+ MXC_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT3) |
-+ MXC_AUDMUX_V2_PTCR_TFSDIR,
++ MXC_AUDMUX_V2_PTCR_TCLKDIR |
++ MXC_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) |
++ MXC_AUDMUX_V2_PTCR_SYN,
+ MXC_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT3));
+
-+ imx51_add_imx_ssi(0, &apf27dev_ssi_pdata);
++ imx51_add_imx_ssi(0, &apf51dev_ssi0_pdata);
+
+#if defined(CONFIG_KEYBOARD_IMX) || defined(CONFIG_KEYBOARD_IMX_MODULE)
+ imx51_add_imx_keypad(&apf51dev_keymap_data);
diff --git a/patches/linux/2.6.38/421-armadeus-asoc-imx-add_apf51dev_wm8960_audio_support.patch b/patches/linux/2.6.38/421-armadeus-asoc-imx-add_apf51dev_wm8960_audio_support.patch
index 361fdba..54c2ec7 100644
--- a/patches/linux/2.6.38/421-armadeus-asoc-imx-add_apf51dev_wm8960_audio_support.patch
+++ b/patches/linux/2.6.38/421-armadeus-asoc-imx-add_apf51dev_wm8960_audio_support.patch
@@ -1,12 +1,12 @@
-Index: linux-2.6.38.1/sound/soc/imx/apf51dev-wm8960.c
+Index: linux-2.6.38.8/sound/soc/imx/apf51dev-wm8960.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.1/sound/soc/imx/apf51dev-wm8960.c 2011-04-26 15:42:46.000000000 +0200
-@@ -0,0 +1,162 @@
+--- /dev/null
++++ linux-2.6.38.8/sound/soc/imx/apf51dev-wm8960.c
+@@ -0,0 +1,233 @@
+/*
+ * ASoC audio for APF51Dev (i.MX51 using Wolfson's WM8960)
+ *
-+ * Copyright (C) 2011 Armadeus Systems
++ * Copyright (C) 2011-13 Armadeus Systems
+ *
+ * Based on code which is:
+ * Copyright 2009 Sascha Hauer, Pengutronix <s....@pe...>
@@ -31,11 +31,22 @@ Index: linux-2.6.38.1/sound/soc/imx/apf51dev-wm8960.c
+#include "../codecs/wm8960.h"
+#include "imx-ssi.h"
+
++static const struct snd_soc_dapm_route audio_map[] = {
++ {"Headphone Jack", NULL, "HP_L" },
++ {"Headphone Jack", NULL, "HP_R" },
++ {"Audio Ext", NULL, "SPK_LP" },
++ {"Audio Ext", NULL, "SPK_LN" },
++ {"Audio Ext", NULL, "SPK_RP" },
++ {"Audio Ext", NULL, "SPK_RN" },
++ {"LINPUT1", NULL, "MICB"},
++ {"LINPUT1", NULL, "Line Input" },
++};
+
-+#define FMT_PLAYBACK (SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | \
-+ SND_SOC_DAIFMT_CBM_CFM)
-+#define FMT_CAPTURE (SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | \
-+ SND_SOC_DAIFMT_CBM_CFM)
++static const struct snd_soc_dapm_widget wm8960_dapm_widgets[] = {
++ SND_SOC_DAPM_HP("Headphone Jack", NULL),
++ SND_SOC_DAPM_OUTPUT("Audio Ext"),
++ SND_SOC_DAPM_MIC("Line Input", NULL),
++};
+
+static int apf51dev_sound_hifi_hw_params(struct snd_pcm_substream *substream,
+ struct snd_pcm_hw_params *params)
@@ -43,88 +54,148 @@ Index: linux-2.6.38.1/sound/soc/imx/apf51dev-wm8960.c
+ struct snd_soc_pcm_runtime *rtd = substream->private_data;
+ struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
+ struct snd_soc_dai *codec_dai = rtd->codec_dai;
++ unsigned int rate = params_rate(params);
++ unsigned int pll_clk, dac_clkdiv, adc_clkdiv;
+ int ret;
+
-+ ret = snd_soc_dai_set_pll(codec_dai, 0, 0, 12000000, 12280000);
++ switch (rate) {
++ case 11025:
++ pll_clk = 11289600;
++ dac_clkdiv = WM8960_DAC_DIV_4;
++ adc_clkdiv = WM8960_ADC_DIV_4;
++ break;
++ case 22050:
++ pll_clk = 11289600;
++ dac_clkdiv = WM8960_DAC_DIV_2;
++ adc_clkdiv = WM8960_ADC_DIV_2;
++ break;
++ case 44100:
++ pll_clk = 11289600;
++ dac_clkdiv = WM8960_DAC_DIV_1;
++ adc_clkdiv = WM8960_ADC_DIV_1;
++ break;
++ case 8000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_6;
++ adc_clkdiv = WM8960_ADC_DIV_6;
++ break;
++ case 12000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_4;
++ adc_clkdiv = WM8960_ADC_DIV_4;
++ break;
++ case 16000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_3;
++ adc_clkdiv = WM8960_ADC_DIV_3;
++ break;
++ case 24000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_2;
++ adc_clkdiv = WM8960_ADC_DIV_2;
++ break;
++ case 32000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_1_5;
++ adc_clkdiv = WM8960_ADC_DIV_1_5;
++ break;
++ case 48000:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_1;
++ adc_clkdiv = WM8960_ADC_DIV_1;
++ break;
++ default:
++ pll_clk = 12288000;
++ dac_clkdiv = WM8960_DAC_DIV_1;
++ adc_clkdiv = WM8960_ADC_DIV_1;
++ break;
++
++ }
++ ret = snd_soc_dai_set_pll(codec_dai, 0, 0, 12000000, pll_clk);
++
+ if (ret) {
-+ printk("APF51: Unable to set WM8960 PLL\n");
++ printk(KERN_ERR "APF51: Unable to set WM8960 PLL\n");
+ return ret;
+ }
+
+ /* set cpu DAI configuration */
++ ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S | \
++ SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBM_CFM);
++ if (ret)
++ return ret;
++ ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S | \
++ SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBM_CFM);
++ if (ret)
++ return ret;
++
+ if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
-+ ret = snd_soc_dai_set_fmt(codec_dai, FMT_PLAYBACK);
-+ if (ret)
-+ return ret;
-+ ret = snd_soc_dai_set_fmt(cpu_dai, FMT_PLAYBACK);
-+ if (ret)
-+ return ret;
++ /* set DAC clock diverder */
++ snd_soc_dai_set_clkdiv(codec_dai, WM8960_DACDIV, dac_clkdiv);
++
+ } else {
-+ ret = snd_soc_dai_set_fmt(codec_dai, FMT_CAPTURE);
-+ if (ret)
-+ return ret;
-+ ret = snd_soc_dai_set_fmt(cpu_dai, FMT_CAPTURE);
-+ if (ret)
-+ return ret;
-+/* ret = snd_soc_dai_set_tdm_slot(codec_dai, 0, 0, 4, 32);
-+ if (ret)
-+ return ret;*/
++ /* set ADC clock diverder */
++ snd_soc_dai_set_clkdiv(codec_dai, WM8960_ADCDIV, adc_clkdiv);
++ snd_soc_dai_set_clkdiv(codec_dai, WM8960_DACDIV, dac_clkdiv);
+ }
+
-+ ret = snd_soc_dai_set_tdm_slot(cpu_dai, 0xfffffffc, 0xfffffffc, 2, 0);
++ ret = snd_soc_dai_set_tdm_slot(cpu_dai, 0xfffffffc, 0xfffffffc, 2, 32);
+ if (ret)
+ return ret;
+
-+ return 0;
-+}
++ /* set BCLK devider */
++ snd_soc_dai_set_clkdiv(codec_dai, WM8960_BCLKDIV, WM8960_BCLK_DIV_4); /* 3 MHz */
+
-+static int apf51dev_sound_hifi_hw_free(struct snd_pcm_substream *substream)
-+{
-+ printk("--- %s %d\n", __func__, __LINE__);
+ return 0;
+}
+
+static struct snd_soc_ops apf51dev_sound_hifi_ops = {
+ .hw_params = apf51dev_sound_hifi_hw_params,
-+ .hw_free = apf51dev_sound_hifi_hw_free,
+};
+
-+static int apf51dev_sound_probe(struct platform_device *pdev)
++static int apf51dev_wm8960_init(struct snd_soc_pcm_runtime *rtd)
+{
-+ printk("--- %s %d\n", __func__, __LINE__);
-+ return 0;
-+}
++ struct snd_soc_codec *codec = rtd->codec;
++ struct snd_soc_dapm_context *dapm = &codec->dapm;
++ int err;
++
++ /* These endpoints are not being used. */
++ snd_soc_dapm_nc_pin(dapm, "LINPUT2");
++ snd_soc_dapm_nc_pin(dapm, "RINPUT2");
++ snd_soc_dapm_nc_pin(dapm, "LINPUT3");
++ snd_soc_dapm_nc_pin(dapm, "RINPUT3");
++ snd_soc_dapm_nc_pin(dapm, "OUT3");
++
++ /* Add jive specific widgets */
++ err = snd_soc_dapm_new_controls(dapm, wm8960_dapm_widgets,
++ ARRAY_SIZE(wm8960_dapm_widgets));
++ if (err) {
++ printk(KERN_ERR "%s: failed to add widgets (%d)\n",
++ __func__, err);
++ return err;
++ }
++
++ snd_soc_dapm_add_routes(dapm, audio_map, ARRAY_SIZE(audio_map));
++ snd_soc_dapm_sync(dapm);
+
-+static int apf51dev_sound_remove(struct platform_device *pdev)
-+{
-+ printk("--- %s %d\n", __func__, __LINE__);
+ return 0;
+}
+
+static struct snd_soc_dai_link apf51dev_dai_wm8960[] = {
+ {
-+ .name = "WM8960 Playback",
-+ .stream_name = "Playback",
-+ .codec_name = "wm8960-codec.1-001a",
-+ .platform_name = "imx-fiq-pcm-audio.0",
-+ .cpu_dai_name = "imx-ssi.0",
-+ .codec_dai_name = "wm8960-hifi",
-+ .ops = &apf51dev_sound_hifi_ops,
-+ },/* {
-+ .name = "WM8960 Capture",
-+ .stream_name = "Capture",
-+ .codec_name = "wm8960-codec.1-001a",
++ .name = "HiFi",
++ .stream_name = "HiFi",
++ .codec_name = "wm8960.1-001a",
+ .platform_name = "imx-fiq-pcm-audio.0",
+ .cpu_dai_name = "imx-ssi.0",
+ .codec_dai_name = "wm8960-hifi",
+ .ops = &apf51dev_sound_hifi_ops,
-+ },*/
++ .init = &apf51dev_wm8960_init,
++ .symmetric_rates = 1,
++ },
+};
+
+static struct snd_soc_card apf51dev_soc_card = {
+ .name = "APF51Dev-WM8960-audio",
-+ .probe = apf51dev_sound_probe,
-+ .remove = apf51dev_sound_remove,
+ .dai_link = apf51dev_dai_wm8960,
+ .num_links = ARRAY_SIZE(apf51dev_dai_wm8960),
+};
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-02-15 15:57:43
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via d6fb919014755df4552dea08a22f3c95a6bc4314 (commit)
from eff2f2a1c536cd005381b2e8c0694cef63a1abda (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit d6fb919014755df4552dea08a22f3c95a6bc4314
Author: Eric Jarrige <eri...@ar...>
Date: Fri Feb 15 17:01:00 2013 +0100
[LINUX] 2.6.38: wm8960: Fix registers definition, PLL, clocks.. errors; also add audio input feature
-----------------------------------------------------------------------
Summary of changes:
.../428-armadeus-asoc-add_debug_to_wm8960.patch | 127 -----
.../2.6.38/429-armadeus-asoc-wm8960-fixes.patch | 493 ++++++++++++++++++++
...deus-asoc-wm8960-change_channels_min_to_2.patch | 25 -
3 files changed, 493 insertions(+), 152 deletions(-)
delete mode 100644 patches/linux/2.6.38/428-armadeus-asoc-add_debug_to_wm8960.patch
create mode 100644 patches/linux/2.6.38/429-armadeus-asoc-wm8960-fixes.patch
delete mode 100644 patches/linux/2.6.38/430-armadeus-asoc-wm8960-change_channels_min_to_2.patch
diff --git a/patches/linux/2.6.38/428-armadeus-asoc-add_debug_to_wm8960.patch b/patches/linux/2.6.38/428-armadeus-asoc-add_debug_to_wm8960.patch
deleted file mode 100644
index 5bf0cae..0000000
--- a/patches/linux/2.6.38/428-armadeus-asoc-add_debug_to_wm8960.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-Index: linux-2.6.38.1/sound/soc/codecs/wm8960.c
-===================================================================
---- linux-2.6.38.1.orig/sound/soc/codecs/wm8960.c 2011-04-06 11:06:59.000000000 +0200
-+++ linux-2.6.38.1/sound/soc/codecs/wm8960.c 2011-04-13 14:48:47.000000000 +0200
-@@ -8,6 +8,8 @@
- * published by the Free Software Foundation.
- */
-
-+#define DEBUG
-+
- #include <linux/module.h>
- #include <linux/moduleparam.h>
- #include <linux/init.h>
-@@ -16,6 +18,9 @@
- #include <linux/i2c.h>
- #include <linux/platform_device.h>
- #include <linux/slab.h>
-+#ifdef DEBUG
-+#include <linux/proc_fs.h>
-+#endif
- #include <sound/core.h>
- #include <sound/pcm.h>
- #include <sound/pcm_params.h>
-@@ -917,12 +922,81 @@
- return 0;
- }
-
-+#ifdef DEBUG
-+
-+static u8 current_reg_addr;
-+
-+static int wm8960_proc_read_register( __attribute__ ((unused)) struct file *file, const char *buf, unsigned long count, void *data)
-+{
-+ int len;
-+ char given_param[16];
-+ u8 reg_addr;
-+ u16 reg_val;
-+ struct snd_soc_codec *codec = data;
-+
-+ if (count <= 0) {
-+ printk("Empty string transmitted !\n");
-+ return 0;
-+ }
-+ if (count > 4) {
-+ len = 4;
-+ printk("Only 4x[0-9] decimal values supported !\n");
-+ } else {
-+ len = count;
-+ }
-+
-+ if (copy_from_user(given_param, buf, len)) {
-+ return -EFAULT;
-+ }
-+
-+ reg_addr = (u8)(simple_strtol(given_param, 0, 16));
-+ current_reg_addr = reg_addr;
-+ reg_val = snd_soc_read(codec, reg_addr);
-+ printk("Read 0x%04x @ 0x%02x\n", reg_val, reg_addr);
-+
-+ return len;
-+}
-+
-+static int wm8960_proc_write_register( __attribute__ ((unused)) struct file *file, const char *buf, unsigned long count, void *data)
-+{
-+ int len, ret;
-+ char given_param[16];
-+ u16 reg_val;
-+ struct snd_soc_codec *codec = data;
-+
-+ if (count <= 0) {
-+ printk("Empty string transmitted !\n");
-+ return 0;
-+ }
-+ if (count > 4) {
-+ len = 4;
-+ printk("Only 4x[0-9] decimal values supported !\n");
-+ } else {
-+ len = count;
-+ }
-+
-+ if (copy_from_user(given_param, buf, len)) {
-+ return -EFAULT;
-+ }
-+
-+ reg_val = (u16)(simple_strtol(given_param, 0, 16));
-+ printk("Writing 0x%04x @ 0x%02x\n", reg_val, current_reg_addr);
-+ snd_soc_write(codec, current_reg_addr, reg_val);
-+ udelay(100);
-+
-+ return len;
-+}
-+#endif /* DEBUG */
-+
- static int wm8960_probe(struct snd_soc_codec *codec)
- {
- struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
- struct wm8960_data *pdata = dev_get_platdata(codec->dev);
- int ret;
- u16 reg;
-+#ifdef DEBUG
-+ struct proc_dir_entry *proc_read, *proc_write;
-+#endif
-
- wm8960->set_bias_level = wm8960_set_bias_level_out3;
- codec->control_data = wm8960->control_data;
-@@ -979,6 +1053,21 @@
- ARRAY_SIZE(wm8960_snd_controls));
- wm8960_add_widgets(codec);
-
-+#ifdef DEBUG
-+ /* create proc files */
-+ proc_read = create_proc_entry("driver/wmread", S_IWUSR | S_IRGRP | S_IROTH, NULL);
-+ proc_write = create_proc_entry("driver/wmwrite", S_IWUSR | S_IRGRP | S_IROTH, NULL);
-+ if ((proc_read == NULL) || (proc_write == NULL)) {
-+ printk(KERN_ERR "wm8960" ": Could not register one /proc file. Terminating\n");
-+ return -ENOMEM;
-+ } else {
-+ proc_read->write_proc = wm8960_proc_read_register;
-+ proc_read->data = codec;
-+ proc_write->write_proc = wm8960_proc_write_register;
-+ proc_write->data = codec;
-+ }
-+#endif
-+
- return 0;
- }
-
diff --git a/patches/linux/2.6.38/429-armadeus-asoc-wm8960-fixes.patch b/patches/linux/2.6.38/429-armadeus-asoc-wm8960-fixes.patch
new file mode 100644
index 0000000..7d2a1f8
--- /dev/null
+++ b/patches/linux/2.6.38/429-armadeus-asoc-wm8960-fixes.patch
@@ -0,0 +1,493 @@
+WM8960: Fix audio
+ - update to driver version present in linux 3.6
+ - add options to support common LRCLK
+ - fix WM8960 registers
+ - rework (add) input audio path
+
+Signed-off-by: Julien Boibessot <jul...@ar...<
+
+Index: linux-2.6.38.8/include/sound/wm8960.h
+===================================================================
+--- linux-2.6.38.8/include/sound/wm8960.h
++++ linux-2.6.38.8/include/sound/wm8960.h
+@@ -19,6 +19,8 @@ struct wm8960_data {
+ bool capless; /* Headphone outputs configured in capless mode */
+
+ int dres; /* Discharge resistance for headphone outputs */
++ bool shared_lrclk; /* DAC and ADC LRCLKs are wired together */
++ bool use_alrcgpio; /* DACLRC frame clock is used for DAC and ADC */
+ };
+
+ #endif
+Index: linux-2.6.38.8/sound/soc/codecs/wm8960.c
+===================================================================
+--- linux-2.6.38.8/sound/soc/codecs/wm8960.c
++++ linux-2.6.38.8/sound/soc/codecs/wm8960.c
+@@ -1,6 +1,9 @@
+ /*
+ * wm8960.c -- WM8960 ALSA SoC Audio driver
+ *
++ * Copyright 2007-11 Wolfson Microelectronics, plc
++ * Copyright (C) 20013 Eric Jarrige <eri...@ar...>
++ *
+ * Author: Liam Girdwood
+ *
+ * This program is free software; you can redistribute it and/or modify
+@@ -14,7 +17,6 @@
+ #include <linux/delay.h>
+ #include <linux/pm.h>
+ #include <linux/i2c.h>
+-#include <linux/platform_device.h>
+ #include <linux/slab.h>
+ #include <sound/core.h>
+ #include <sound/pcm.h>
+@@ -26,8 +28,6 @@
+
+ #include "wm8960.h"
+
+-#define AUDIO_NAME "wm8960"
+-
+ /* R25 - Power 1 */
+ #define WM8960_VMID_MASK 0x180
+ #define WM8960_VREF 0x40
+@@ -72,7 +72,6 @@ static const u16 wm8960_reg[WM8960_CACHE
+
+ struct wm8960_priv {
+ enum snd_soc_control_type control_type;
+- void *control_data;
+ int (*set_bias_level)(struct snd_soc_codec *,
+ enum snd_soc_bias_level level);
+ struct snd_soc_dapm_widget *lout1;
+@@ -166,7 +165,7 @@ SOC_DOUBLE_R_TLV("Capture Volume", WM896
+ SOC_DOUBLE_R("Capture Volume ZC Switch", WM8960_LINVOL, WM8960_RINVOL,
+ 6, 1, 0),
+ SOC_DOUBLE_R("Capture Switch", WM8960_LINVOL, WM8960_RINVOL,
+- 7, 1, 0),
++ 7, 1, 1),
+
+ SOC_DOUBLE_R_TLV("Playback Volume", WM8960_LDAC, WM8960_RDAC,
+ 0, 255, 0, dac_tlv),
+@@ -208,8 +207,8 @@ SOC_SINGLE("ALC Attack", WM8960_ALC3, 0,
+ SOC_SINGLE("Noise Gate Threshold", WM8960_NOISEG, 3, 31, 0),
+ SOC_SINGLE("Noise Gate Switch", WM8960_NOISEG, 0, 1, 0),
+
+-SOC_DOUBLE_R("ADC PCM Capture Volume", WM8960_LINPATH, WM8960_RINPATH,
+- 0, 127, 0),
++SOC_DOUBLE_R("Boost Capture Volume", WM8960_LINPATH, WM8960_RINPATH,
++ 4, 3, 0),
+
+ SOC_SINGLE_TLV("Left Output Mixer Boost Bypass Volume",
+ WM8960_BYPASS1, 4, 7, 1, bypass_tlv),
+@@ -266,7 +265,7 @@ SND_SOC_DAPM_INPUT("RINPUT2"),
+ SND_SOC_DAPM_INPUT("LINPUT3"),
+ SND_SOC_DAPM_INPUT("RINPUT3"),
+
+-SND_SOC_DAPM_MICBIAS("MICB", WM8960_POWER1, 1, 0),
++SND_SOC_DAPM_SUPPLY("MICB", WM8960_POWER1, 1, 0, NULL, 0),
+
+ SND_SOC_DAPM_MIXER("Left Boost Mixer", WM8960_POWER1, 5, 0,
+ wm8960_lin_boost, ARRAY_SIZE(wm8960_lin_boost)),
+@@ -278,8 +277,8 @@ SND_SOC_DAPM_MIXER("Left Input Mixer", W
+ SND_SOC_DAPM_MIXER("Right Input Mixer", WM8960_POWER3, 4, 0,
+ wm8960_rin, ARRAY_SIZE(wm8960_rin)),
+
+-SND_SOC_DAPM_ADC("Left ADC", "Capture", WM8960_POWER2, 3, 0),
+-SND_SOC_DAPM_ADC("Right ADC", "Capture", WM8960_POWER2, 2, 0),
++SND_SOC_DAPM_ADC("Left ADC", "Capture", WM8960_POWER1, 3, 0),
++SND_SOC_DAPM_ADC("Right ADC", "Capture", WM8960_POWER1, 2, 0),
+
+ SND_SOC_DAPM_DAC("Left DAC", "Playback", WM8960_POWER2, 8, 0),
+ SND_SOC_DAPM_DAC("Right DAC", "Playback", WM8960_POWER2, 7, 0),
+@@ -443,6 +442,7 @@ static int wm8960_set_dai_fmt(struct snd
+ iface |= 0x0040;
+ break;
+ case SND_SOC_DAIFMT_CBS_CFS:
++ iface &= ~0x0040;
+ break;
+ default:
+ return -EINVAL;
+@@ -500,7 +500,7 @@ static struct {
+ { 22050, 2 },
+ { 24000, 2 },
+ { 16000, 3 },
+- { 11250, 4 },
++ { 11025, 4 },
+ { 12000, 4 },
+ { 8000, 5 },
+ };
+@@ -509,8 +509,7 @@ static int wm8960_hw_params(struct snd_p
+ struct snd_pcm_hw_params *params,
+ struct snd_soc_dai *dai)
+ {
+- struct snd_soc_pcm_runtime *rtd = substream->private_data;
+- struct snd_soc_codec *codec = rtd->codec;
++ struct snd_soc_codec *codec = dai->codec;
+ struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
+ u16 iface = snd_soc_read(codec, WM8960_IFACE1) & 0xfff3;
+ int i;
+@@ -547,57 +546,49 @@ static int wm8960_hw_params(struct snd_p
+ static int wm8960_mute(struct snd_soc_dai *dai, int mute)
+ {
+ struct snd_soc_codec *codec = dai->codec;
+- u16 mute_reg = snd_soc_read(codec, WM8960_DACCTL1) & 0xfff7;
+
+ if (mute)
+- snd_soc_write(codec, WM8960_DACCTL1, mute_reg | 0x8);
++ snd_soc_update_bits(codec, WM8960_DACCTL1, 0x8, 0x8);
+ else
+- snd_soc_write(codec, WM8960_DACCTL1, mute_reg);
++ snd_soc_update_bits(codec, WM8960_DACCTL1, 0x8, 0);
+ return 0;
+ }
+
+ static int wm8960_set_bias_level_out3(struct snd_soc_codec *codec,
+ enum snd_soc_bias_level level)
+ {
+- u16 reg;
+-
+ switch (level) {
+ case SND_SOC_BIAS_ON:
+ break;
+
+ case SND_SOC_BIAS_PREPARE:
+ /* Set VMID to 2x50k */
+- reg = snd_soc_read(codec, WM8960_POWER1);
+- reg &= ~0x180;
+- reg |= 0x80;
+- snd_soc_write(codec, WM8960_POWER1, reg);
++ snd_soc_update_bits(codec, WM8960_POWER1, 0x180, 0x80);
+ break;
+
+ case SND_SOC_BIAS_STANDBY:
+ if (codec->dapm.bias_level == SND_SOC_BIAS_OFF) {
++ snd_soc_cache_sync(codec);
++
+ /* Enable anti-pop features */
+ snd_soc_write(codec, WM8960_APOP1,
+ WM8960_POBCTRL | WM8960_SOFT_ST |
+ WM8960_BUFDCOPEN | WM8960_BUFIOEN);
+
+ /* Enable & ramp VMID at 2x50k */
+- reg = snd_soc_read(codec, WM8960_POWER1);
+- reg |= 0x80;
+- snd_soc_write(codec, WM8960_POWER1, reg);
++ snd_soc_update_bits(codec, WM8960_POWER1, 0x80, 0x80);
+ msleep(100);
+
+ /* Enable VREF */
+- snd_soc_write(codec, WM8960_POWER1, reg | WM8960_VREF);
++ snd_soc_update_bits(codec, WM8960_POWER1, WM8960_VREF,
++ WM8960_VREF);
+
+ /* Disable anti-pop features */
+ snd_soc_write(codec, WM8960_APOP1, WM8960_BUFIOEN);
+ }
+
+ /* Set VMID to 2x250k */
+- reg = snd_soc_read(codec, WM8960_POWER1);
+- reg &= ~0x180;
+- reg |= 0x100;
+- snd_soc_write(codec, WM8960_POWER1, reg);
++ snd_soc_update_bits(codec, WM8960_POWER1, 0x180, 0x100);
+ break;
+
+ case SND_SOC_BIAS_OFF:
+@@ -677,6 +668,9 @@ static int wm8960_set_bias_level_capless
+ WM8960_VREF | WM8960_VMID_MASK, 0);
+ break;
+
++ case SND_SOC_BIAS_OFF:
++ snd_soc_cache_sync(codec);
++ break;
+ default:
+ break;
+ }
+@@ -786,10 +780,8 @@ static int wm8960_set_dai_pll(struct snd
+
+ /* Disable the PLL: even if we are changing the frequency the
+ * PLL needs to be disabled while we do so. */
+- snd_soc_write(codec, WM8960_CLOCK1,
+- snd_soc_read(codec, WM8960_CLOCK1) & ~1);
+- snd_soc_write(codec, WM8960_POWER2,
+- snd_soc_read(codec, WM8960_POWER2) & ~1);
++ snd_soc_update_bits(codec, WM8960_CLOCK1, 0x1, 0);
++ snd_soc_update_bits(codec, WM8960_POWER2, 0x1, 0);
+
+ if (!freq_in || !freq_out)
+ return 0;
+@@ -801,18 +793,16 @@ static int wm8960_set_dai_pll(struct snd
+ if (pll_div.k) {
+ reg |= 0x20;
+
+- snd_soc_write(codec, WM8960_PLL2, (pll_div.k >> 18) & 0x3f);
+- snd_soc_write(codec, WM8960_PLL3, (pll_div.k >> 9) & 0x1ff);
+- snd_soc_write(codec, WM8960_PLL4, pll_div.k & 0x1ff);
++ snd_soc_write(codec, WM8960_PLL2, (pll_div.k >> 16) & 0x0ff);
++ snd_soc_write(codec, WM8960_PLL3, (pll_div.k >> 8) & 0x0ff);
++ snd_soc_write(codec, WM8960_PLL4, pll_div.k & 0x0ff);
+ }
+ snd_soc_write(codec, WM8960_PLL1, reg);
+
+ /* Turn it on */
+- snd_soc_write(codec, WM8960_POWER2,
+- snd_soc_read(codec, WM8960_POWER2) | 1);
++ snd_soc_update_bits(codec, WM8960_POWER2, 0x1, 0x1);
+ msleep(250);
+- snd_soc_write(codec, WM8960_CLOCK1,
+- snd_soc_read(codec, WM8960_CLOCK1) | 1);
++ snd_soc_update_bits(codec, WM8960_CLOCK1, 0x1, 0x1);
+
+ return 0;
+ }
+@@ -833,7 +823,7 @@ static int wm8960_set_dai_clkdiv(struct
+ snd_soc_write(codec, WM8960_CLOCK1, reg | div);
+ break;
+ case WM8960_OPCLKDIV:
+- reg = snd_soc_read(codec, WM8960_PLL1) & 0x03f;
++ reg = snd_soc_read(codec, WM8960_PLL1) & 0x1c0;
+ snd_soc_write(codec, WM8960_PLL1, reg | div);
+ break;
+ case WM8960_DCLKDIV:
+@@ -844,6 +834,14 @@ static int wm8960_set_dai_clkdiv(struct
+ reg = snd_soc_read(codec, WM8960_ADDCTL1) & 0x1fd;
+ snd_soc_write(codec, WM8960_ADDCTL1, reg | div);
+ break;
++ case WM8960_ADCDIV:
++ reg = snd_soc_read(codec, WM8960_CLOCK1) & 0x03F;
++ snd_soc_write(codec, WM8960_CLOCK1, reg | div);
++ break;
++ case WM8960_BCLKDIV:
++ reg = snd_soc_read(codec, WM8960_CLOCK2) & 0x1F0;
++ snd_soc_write(codec, WM8960_CLOCK2, reg | div);
++ break;
+ default:
+ return -EINVAL;
+ }
+@@ -865,7 +863,7 @@ static int wm8960_set_bias_level(struct
+ (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \
+ SNDRV_PCM_FMTBIT_S24_LE)
+
+-static struct snd_soc_dai_ops wm8960_dai_ops = {
++static const struct snd_soc_dai_ops wm8960_dai_ops = {
+ .hw_params = wm8960_hw_params,
+ .digital_mute = wm8960_mute,
+ .set_fmt = wm8960_set_dai_fmt,
+@@ -877,13 +875,13 @@ static struct snd_soc_dai_driver wm8960_
+ .name = "wm8960-hifi",
+ .playback = {
+ .stream_name = "Playback",
+- .channels_min = 1,
++ .channels_min = 2,
+ .channels_max = 2,
+ .rates = WM8960_RATES,
+ .formats = WM8960_FORMATS,},
+ .capture = {
+ .stream_name = "Capture",
+- .channels_min = 1,
++ .channels_min = 2,
+ .channels_max = 2,
+ .rates = WM8960_RATES,
+ .formats = WM8960_FORMATS,},
+@@ -902,16 +900,6 @@ static int wm8960_suspend(struct snd_soc
+ static int wm8960_resume(struct snd_soc_codec *codec)
+ {
+ struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
+- int i;
+- u8 data[2];
+- u16 *cache = codec->reg_cache;
+-
+- /* Sync reg_cache with the hardware */
+- for (i = 0; i < ARRAY_SIZE(wm8960_reg); i++) {
+- data[0] = (i << 1) | ((cache[i] >> 8) & 0x0001);
+- data[1] = cache[i] & 0x00ff;
+- codec->hw_write(codec->control_data, data, 2);
+- }
+
+ wm8960->set_bias_level(codec, SND_SOC_BIAS_STANDBY);
+ return 0;
+@@ -922,10 +910,8 @@ static int wm8960_probe(struct snd_soc_c
+ struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
+ struct wm8960_data *pdata = dev_get_platdata(codec->dev);
+ int ret;
+- u16 reg;
+
+ wm8960->set_bias_level = wm8960_set_bias_level_out3;
+- codec->control_data = wm8960->control_data;
+
+ if (!pdata) {
+ dev_warn(codec->dev, "No platform data supplied\n");
+@@ -951,29 +937,27 @@ static int wm8960_probe(struct snd_soc_c
+ return ret;
+ }
+
++ if (pdata && pdata->shared_lrclk) {
++ snd_soc_update_bits(codec, WM8960_ADDCTL2, 0x4, 0x4);
++ }
++
++ if (pdata && pdata->use_alrcgpio) {
++ snd_soc_update_bits(codec, WM8960_IFACE2, 0x40, 0x40);
++ }
++
+ wm8960->set_bias_level(codec, SND_SOC_BIAS_STANDBY);
+
+ /* Latch the update bits */
+- reg = snd_soc_read(codec, WM8960_LINVOL);
+- snd_soc_write(codec, WM8960_LINVOL, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_RINVOL);
+- snd_soc_write(codec, WM8960_RINVOL, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_LADC);
+- snd_soc_write(codec, WM8960_LADC, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_RADC);
+- snd_soc_write(codec, WM8960_RADC, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_LDAC);
+- snd_soc_write(codec, WM8960_LDAC, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_RDAC);
+- snd_soc_write(codec, WM8960_RDAC, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_LOUT1);
+- snd_soc_write(codec, WM8960_LOUT1, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_ROUT1);
+- snd_soc_write(codec, WM8960_ROUT1, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_LOUT2);
+- snd_soc_write(codec, WM8960_LOUT2, reg | 0x100);
+- reg = snd_soc_read(codec, WM8960_ROUT2);
+- snd_soc_write(codec, WM8960_ROUT2, reg | 0x100);
++ snd_soc_update_bits(codec, WM8960_LINVOL, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_RINVOL, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_LADC, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_RADC, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_LDAC, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_RDAC, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_LOUT1, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_ROUT1, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_LOUT2, 0x100, 0x100);
++ snd_soc_update_bits(codec, WM8960_ROUT2, 0x100, 0x100);
+
+ snd_soc_add_controls(codec, wm8960_snd_controls,
+ ARRAY_SIZE(wm8960_snd_controls));
+@@ -1002,32 +986,29 @@ static struct snd_soc_codec_driver soc_c
+ .reg_cache_default = wm8960_reg,
+ };
+
+-#if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
+ static __devinit int wm8960_i2c_probe(struct i2c_client *i2c,
+ const struct i2c_device_id *id)
+ {
+ struct wm8960_priv *wm8960;
+ int ret;
+
+- wm8960 = kzalloc(sizeof(struct wm8960_priv), GFP_KERNEL);
++ wm8960 = devm_kzalloc(&i2c->dev, sizeof(struct wm8960_priv),
++ GFP_KERNEL);
+ if (wm8960 == NULL)
+ return -ENOMEM;
+
+ i2c_set_clientdata(i2c, wm8960);
+ wm8960->control_type = SND_SOC_I2C;
+- wm8960->control_data = i2c;
+
+ ret = snd_soc_register_codec(&i2c->dev,
+ &soc_codec_dev_wm8960, &wm8960_dai, 1);
+- if (ret < 0)
+- kfree(wm8960);
++
+ return ret;
+ }
+
+ static __devexit int wm8960_i2c_remove(struct i2c_client *client)
+ {
+ snd_soc_unregister_codec(&client->dev);
+- kfree(i2c_get_clientdata(client));
+ return 0;
+ }
+
+@@ -1039,34 +1020,29 @@ MODULE_DEVICE_TABLE(i2c, wm8960_i2c_id);
+
+ static struct i2c_driver wm8960_i2c_driver = {
+ .driver = {
+- .name = "wm8960-codec",
++ .name = "wm8960",
+ .owner = THIS_MODULE,
+ },
+ .probe = wm8960_i2c_probe,
+ .remove = __devexit_p(wm8960_i2c_remove),
+ .id_table = wm8960_i2c_id,
+ };
+-#endif
+
+ static int __init wm8960_modinit(void)
+ {
+ int ret = 0;
+-#if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
+ ret = i2c_add_driver(&wm8960_i2c_driver);
+ if (ret != 0) {
+ printk(KERN_ERR "Failed to register WM8960 I2C driver: %d\n",
+ ret);
+ }
+-#endif
+ return ret;
+ }
+ module_init(wm8960_modinit);
+
+ static void __exit wm8960_exit(void)
+ {
+-#if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
+ i2c_del_driver(&wm8960_i2c_driver);
+-#endif
+ }
+ module_exit(wm8960_exit);
+
+Index: linux-2.6.38.8/sound/soc/codecs/wm8960.h
+===================================================================
+--- linux-2.6.38.8/sound/soc/codecs/wm8960.h
++++ linux-2.6.38.8/sound/soc/codecs/wm8960.h
+@@ -76,6 +76,8 @@
+ #define WM8960_OPCLKDIV 2
+ #define WM8960_DCLKDIV 3
+ #define WM8960_TOCLKSEL 4
++#define WM8960_ADCDIV 5
++#define WM8960_BCLKDIV 6
+
+ #define WM8960_SYSCLK_DIV_1 (0 << 1)
+ #define WM8960_SYSCLK_DIV_2 (2 << 1)
+@@ -103,11 +105,34 @@
+ #define WM8960_TOCLK_F19 (0 << 1)
+ #define WM8960_TOCLK_F21 (1 << 1)
+
+-#define WM8960_OPCLK_DIV_1 (0 << 0)
+-#define WM8960_OPCLK_DIV_2 (1 << 0)
+-#define WM8960_OPCLK_DIV_3 (2 << 0)
+-#define WM8960_OPCLK_DIV_4 (3 << 0)
+-#define WM8960_OPCLK_DIV_5_5 (4 << 0)
+-#define WM8960_OPCLK_DIV_6 (5 << 0)
++#define WM8960_OPCLK_DIV_1 (0 << 6)
++#define WM8960_OPCLK_DIV_2 (1 << 6)
++#define WM8960_OPCLK_DIV_3 (2 << 6)
++#define WM8960_OPCLK_DIV_4 (3 << 6)
++#define WM8960_OPCLK_DIV_5_5 (4 << 6)
++#define WM8960_OPCLK_DIV_6 (5 << 6)
++
++#define WM8960_ADC_DIV_1 (0 << 6)
++#define WM8960_ADC_DIV_1_5 (1 << 6)
++#define WM8960_ADC_DIV_2 (2 << 6)
++#define WM8960_ADC_DIV_3 (3 << 6)
++#define WM8960_ADC_DIV_4 (4 << 6)
++#define WM8960_ADC_DIV_5_5 (5 << 6)
++#define WM8960_ADC_DIV_6 (6 << 6)
++
++#define WM8960_BCLK_DIV_1 (0 << 0)
++#define WM8960_BCLK_DIV_1_5 (1 << 0)
++#define WM8960_BCLK_DIV_2 (2 << 0)
++#define WM8960_BCLK_DIV_3 (3 << 0)
++#define WM8960_BCLK_DIV_4 (4 << 0)
++#define WM8960_BCLK_DIV_5_5 (5 << 0)
++#define WM8960_BCLK_DIV_6 (6 << 0)
++#define WM8960_BCLK_DIV_8 (7 << 0)
++#define WM8960_BCLK_DIV_11 (8 << 0)
++#define WM8960_BCLK_DIV_12 (9 << 0)
++#define WM8960_BCLK_DIV_16 (10 << 0)
++#define WM8960_BCLK_DIV_22 (11 << 0)
++#define WM8960_BCLK_DIV_24 (12 << 0)
++#define WM8960_BCLK_DIV_32 (13 << 0)
+
+ #endif
+
diff --git a/patches/linux/2.6.38/430-armadeus-asoc-wm8960-change_channels_min_to_2.patch b/patches/linux/2.6.38/430-armadeus-asoc-wm8960-change_channels_min_to_2.patch
deleted file mode 100644
index 820b984..0000000
--- a/patches/linux/2.6.38/430-armadeus-asoc-wm8960-change_channels_min_to_2.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Otherwise sound is played two times too fast.
-Clean ?
-
-Signed-off-by: Julien Boibessot <jul...@ar...<
-
-Index: linux-2.6.38.1/sound/soc/codecs/wm8960.c
-===================================================================
---- linux-2.6.38.1.orig/sound/soc/codecs/wm8960.c 2011-04-13 14:50:58.000000000 +0200
-+++ linux-2.6.38.1/sound/soc/codecs/wm8960.c 2011-04-13 15:09:57.000000000 +0200
-@@ -882,13 +882,13 @@
- .name = "wm8960-hifi",
- .playback = {
- .stream_name = "Playback",
-- .channels_min = 1,
-+ .channels_min = 2,
- .channels_max = 2,
- .rates = WM8960_RATES,
- .formats = WM8960_FORMATS,},
- .capture = {
- .stream_name = "Capture",
-- .channels_min = 1,
-+ .channels_min = 2,
- .channels_max = 2,
- .rates = WM8960_RATES,
- .formats = WM8960_FORMATS,},
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-02-15 15:34:43
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via eff2f2a1c536cd005381b2e8c0694cef63a1abda (commit)
from ed1cbc07c49904537e921c3faaf17c069704f724 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit eff2f2a1c536cd005381b2e8c0694cef63a1abda
Author: Eric Jarrige <eri...@ar...>
Date: Fri Feb 15 16:38:05 2013 +0100
[LINUX] 2.6.38: fix MCP49x2 DAC trigger conversion and add capabilites to select condition to start DAC conversion
-----------------------------------------------------------------------
Summary of changes:
...3-armadeus-adding_mcp4912_dac_chip_driver.patch | 78 ++++++++++++++++----
1 files changed, 62 insertions(+), 16 deletions(-)
diff --git a/patches/linux/2.6.38/423-armadeus-adding_mcp4912_dac_chip_driver.patch b/patches/linux/2.6.38/423-armadeus-adding_mcp4912_dac_chip_driver.patch
index a67aa73..a1b9f43 100644
--- a/patches/linux/2.6.38/423-armadeus-adding_mcp4912_dac_chip_driver.patch
+++ b/patches/linux/2.6.38/423-armadeus-adding_mcp4912_dac_chip_driver.patch
@@ -3,11 +3,12 @@ Adding Microchip MCP4912 DAC driver
Signed-off-by: Fabien Marteau <fab...@ar...>
Signed-off-by: Nicolas Colombain <nic...@ar...>
+Signed-off-by: Eric Jarrige <eri...@ar...>
---
Index: linux-2.6.38-rc3/drivers/staging/iio/dac/Kconfig
===================================================================
---- linux-2.6.38-rc3.orig/drivers/staging/iio/dac/Kconfig 2011-02-22 15:51:43.000000000 +0100
-+++ linux-2.6.38-rc3/drivers/staging/iio/dac/Kconfig 2011-02-22 15:51:43.000000000 +0100
+--- linux-2.6.38-rc3/drivers/staging/iio/dac/Kconfig
++++ linux-2.6.38-rc3/drivers/staging/iio/dac/Kconfig
@@ -20,6 +20,16 @@
To compile this driver as a module, choose M here: the
module will be called ad5446.
@@ -27,8 +28,8 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/Kconfig
depends on I2C && EXPERIMENTAL
Index: linux-2.6.38-rc3/drivers/staging/iio/dac/Makefile
===================================================================
---- linux-2.6.38-rc3.orig/drivers/staging/iio/dac/Makefile 2011-02-22 15:51:43.000000000 +0100
-+++ linux-2.6.38-rc3/drivers/staging/iio/dac/Makefile 2011-02-22 15:51:43.000000000 +0100
+--- linux-2.6.38-rc3/drivers/staging/iio/dac/Makefile
++++ linux-2.6.38-rc3/drivers/staging/iio/dac/Makefile
@@ -5,3 +5,4 @@
obj-$(CONFIG_AD5624R_SPI) += ad5624r_spi.o
obj-$(CONFIG_AD5446) += ad5446.o
@@ -36,9 +37,9 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/Makefile
+obj-$(CONFIG_MCP49x2) += mcp49x2.o
Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c 2011-02-22 17:48:06.000000000 +0100
-@@ -0,0 +1,319 @@
+--- /dev/null
++++ linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+@@ -0,0 +1,364 @@
+/*
+ * mcp49x2.c
+ *
@@ -85,7 +86,7 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+#include "mcp49x2.h"
+
+#define DRIVER_NAME "mcp49x2"
-+#define DRIVER_VERSION "0.2"
++#define DRIVER_VERSION "1.0"
+
+enum mcp49x2_device_ids {
+ ID_MCP4902,
@@ -97,8 +98,9 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ struct iio_dev *indio_dev;
+ struct spi_device *spi_dev;
+ struct mcp49x2_config *plat_dat;
-+ unsigned int value[2]; /* Value write on each channel */
++ unsigned int value[2]; /* Value writen on each channel */
+ unsigned int power_mode[2];
++ unsigned int trigger[2]; /* does write data launch the conversion */
+};
+
+static int mcp49x2_spi_write(struct spi_device *spi,
@@ -156,9 +158,11 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ this_attr->address, 1, 1, 1,
+ mcp49x2->value[this_attr->address]);
+
-+ gpio_set_value( platform_info->ldac_pin, 1);
-+ udelay(1);
-+ gpio_set_value( platform_info->ldac_pin, 0);
++ if (mcp49x2->trigger[this_attr->address]) {
++ gpio_set_value( platform_info->ldac_pin, 0);
++ udelay(1);
++ gpio_set_value( platform_info->ldac_pin, 1);
++ }
+
+ return ret ? ret : len;
+}
@@ -200,6 +204,36 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ return sprintf(buf, "%d\n", mcp49x2->power_mode[this_attr->address]);
+}
+
++static ssize_t mcp49x2_write_dac_trigger(struct device *dev,
++ struct device_attribute *attr,
++ const char *buf, size_t len)
++{
++ long readin;
++ int ret;
++ struct iio_dev *indio_dev = dev_get_drvdata(dev);
++ struct mcp49x2_device *mcp49x2 = indio_dev->dev_data;
++ struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
++
++ ret = strict_strtol(buf, 10, &readin);
++ if (ret)
++ return ret;
++
++ mcp49x2->trigger[this_attr->address] = readin;
++
++ return ret ? ret : len;
++}
++
++static ssize_t mcp49x2_read_dac_trigger(struct device *dev,
++ struct device_attribute *attr,
++ char *buf)
++{
++ struct iio_dev *indio_dev = dev_get_drvdata(dev);
++ struct mcp49x2_device *mcp49x2 = indio_dev->dev_data;
++ struct iio_dev_attr *this_attr = to_iio_dev_attr(attr);
++
++ return sprintf(buf, "%d\n", mcp49x2->trigger[this_attr->address]);
++}
++
+static IIO_DEV_ATTR_OUT_RAW(0, mcp49x2_write_dac_value, 0);
+static IIO_DEV_ATTR_OUT_RAW(1, mcp49x2_write_dac_value, 1);
+
@@ -211,11 +245,22 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+static IIO_DEV_ATTR_DAC_POWER_MODE(1, mcp49x2_read_dac_power_mode,
+ mcp49x2_write_dac_power_mode, 1);
+
++/* Define for each channel if it will trigger the LDAC# GPIO */
++#define IIO_DEV_ATTR_DAC_TRIGGER(_num, _show, _store, _addr) \
++ IIO_DEVICE_ATTR(dac_trigger_##_num, S_IRUGO | S_IWUSR, _show, _store, _addr)
++
++static IIO_DEV_ATTR_DAC_TRIGGER(0, mcp49x2_read_dac_trigger,
++ mcp49x2_write_dac_trigger, 0);
++static IIO_DEV_ATTR_DAC_TRIGGER(1, mcp49x2_read_dac_trigger,
++ mcp49x2_write_dac_trigger, 1);
++
+static struct attribute *mcp49x2_attributes[] = {
+ &iio_dev_attr_out0_raw.dev_attr.attr,
+ &iio_dev_attr_out1_raw.dev_attr.attr,
+ &iio_dev_attr_dac_power_mode_0.dev_attr.attr,
+ &iio_dev_attr_dac_power_mode_1.dev_attr.attr,
++ &iio_dev_attr_dac_trigger_0.dev_attr.attr,
++ &iio_dev_attr_dac_trigger_1.dev_attr.attr,
+ NULL,
+};
+
@@ -228,7 +273,6 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ struct mcp49x2_device *mcp49x2;
+ struct mcp49x2_config *platform_info;
+ int result;
-+ int dev_id = spi_get_device_id(spi)->driver_data;
+
+ pr_debug("%s\n", __FUNCTION__);
+
@@ -245,7 +289,7 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ "failed to allocate ldac gpio\n");
+ return result;
+ }
-+ gpio_direction_output(platform_info->ldac_pin, 0);
++ gpio_direction_output(platform_info->ldac_pin, 1);
+ }
+ else {
+ dev_err(&spi->dev,"ldac gpio not valid\n");
@@ -276,6 +320,8 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+ mcp49x2->value[1] = 0;
+ mcp49x2->power_mode[0] = 0;
+ mcp49x2->power_mode[1] = 0;
++ mcp49x2->trigger[0] = 1;
++ mcp49x2->trigger[1] = 1;
+
+ mcp49x2->indio_dev->attrs = &mcp49x2_attribute_group;
+ mcp49x2->indio_dev->dev_data = (void *)(mcp49x2);
@@ -360,8 +406,8 @@ Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.c
+
Index: linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.h
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.h 2011-02-22 15:51:43.000000000 +0100
+--- /dev/null
++++ linux-2.6.38-rc3/drivers/staging/iio/dac/mcp49x2.h
@@ -0,0 +1,29 @@
+/*
+ * mcp4912.h
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2013-02-12 15:32:50
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via ed1cbc07c49904537e921c3faaf17c069704f724 (commit)
from 7a2303918bec16737a0e035d2ea80dea0b8c1080 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ed1cbc07c49904537e921c3faaf17c069704f724
Author: Eric Jarrige <eri...@ar...>
Date: Tue Feb 12 16:36:14 2013 +0100
[UBOOT] initial bump to U-Boot 2013.01.01
-----------------------------------------------------------------------
Summary of changes:
...-u-boot-2012.10.h => apf27-u-boot-2013.01.01.h} | 22 +++---
.../100-SPL-Add-u-boot-nand-build-option.patch | 2 +-
.../{2012.10 => 2013.01.01}/102-mx1-i2c.patch | 0
.../{2012.10 => 2013.01.01}/103-apf9328.patch | 0
.../104-apf9328-makefile.patch | 4 +-
.../{2012.10 => 2013.01.01}/106-mx1-pllclk.patch | 0
.../107-mx1-pllclk-debug.patch | 0
.../{2012.10 => 2013.01.01}/108-DM9000.patch | 0
.../{2012.10 => 2013.01.01}/111-mx1-timer.patch | 0
...stant-to-support-the-armadeus-APF27-board.patch | 0
...-add-support-for-the-armadeus-APF27-board.patch | 6 +-
.../303-apf27-Add-spl-support-for-the-apf27.patch | 0
...pf27-Add-FPGA-support-for-the-apf27-board.patch | 0
.../311-imx-nand-lock-unlock.patch | 0
.../{2012.10 => 2013.01.01}/320-spartan.patch | 0
.../{2012.10 => 2013.01.01}/321-add_spartan6.patch | 2 +-
.../340-apf27-misc-commands.patch | 0
.../350-nand_large_file_download.patch | 20 +++---
...60-arm-support-continuous-mmu-mem-mapping.patch | 76 ++++++++++++++++++++
.../370-imx27-add-i2c-driver.patch | 4 +-
.../u-boot/{2012.10 => 2013.01.01}/400-imx51.patch | 59 +++++++--------
.../u-boot/{2012.10 => 2013.01.01}/401-apf51.patch | 2 +-
.../{2012.10 => 2013.01.01}/403-apf51-wdog.patch | 2 +-
.../{2012.10 => 2013.01.01}/407-imx51-nand.patch | 2 +-
.../409-apf51-nand-spl.patch | 0
.../{2012.10 => 2013.01.01}/410-imx-iim.patch | 10 ++--
.../2013.01.01/501-imx28-update-and-fix.patch | 37 ++++++++++
.../{2012.10 => 2013.01.01}/502-add-apf28.patch | 6 +-
28 files changed, 182 insertions(+), 72 deletions(-)
copy buildroot/target/device/armadeus/apf27/{apf27-u-boot-2012.10.h => apf27-u-boot-2013.01.01.h} (95%)
copy patches/u-boot/{2012.10 => 2013.01.01}/100-SPL-Add-u-boot-nand-build-option.patch (94%)
copy patches/u-boot/{2012.10 => 2013.01.01}/102-mx1-i2c.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/103-apf9328.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/104-apf9328-makefile.patch (92%)
copy patches/u-boot/{2012.10 => 2013.01.01}/106-mx1-pllclk.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/107-mx1-pllclk-debug.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/108-DM9000.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/111-mx1-timer.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/301-imx27-Add-missing-constant-to-support-the-armadeus-APF27-board.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/302-apf27-add-support-for-the-armadeus-APF27-board.patch (99%)
copy patches/u-boot/{2012.10 => 2013.01.01}/303-apf27-Add-spl-support-for-the-apf27.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/304-apf27-Add-FPGA-support-for-the-apf27-board.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/311-imx-nand-lock-unlock.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/320-spartan.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/321-add_spartan6.patch (99%)
copy patches/u-boot/{2012.10 => 2013.01.01}/340-apf27-misc-commands.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/350-nand_large_file_download.patch (91%)
create mode 100644 patches/u-boot/2013.01.01/360-arm-support-continuous-mmu-mem-mapping.patch
copy patches/u-boot/{2012.10 => 2013.01.01}/370-imx27-add-i2c-driver.patch (95%)
copy patches/u-boot/{2012.10 => 2013.01.01}/400-imx51.patch (95%)
copy patches/u-boot/{2012.10 => 2013.01.01}/401-apf51.patch (99%)
copy patches/u-boot/{2012.10 => 2013.01.01}/403-apf51-wdog.patch (93%)
copy patches/u-boot/{2012.10 => 2013.01.01}/407-imx51-nand.patch (99%)
copy patches/u-boot/{2012.10 => 2013.01.01}/409-apf51-nand-spl.patch (100%)
copy patches/u-boot/{2012.10 => 2013.01.01}/410-imx-iim.patch (98%)
create mode 100644 patches/u-boot/2013.01.01/501-imx28-update-and-fix.patch
copy patches/u-boot/{2012.10 => 2013.01.01}/502-add-apf28.patch (99%)
diff --git a/buildroot/target/device/armadeus/apf27/apf27-u-boot-2012.10.h b/buildroot/target/device/armadeus/apf27/apf27-u-boot-2013.01.01.h
similarity index 95%
copy from buildroot/target/device/armadeus/apf27/apf27-u-boot-2012.10.h
copy to buildroot/target/device/armadeus/apf27/apf27-u-boot-2013.01.01.h
index 4839d5b..0de0e29 100644
--- a/buildroot/target/device/armadeus/apf27/apf27-u-boot-2012.10.h
+++ b/buildroot/target/device/armadeus/apf27/apf27-u-boot-2013.01.01.h
@@ -82,7 +82,7 @@
#define CONFIG_BOOTP_DNS2
#define CONFIG_HOSTNAME CONFIG_BOARD_NAME
-#define CONFIG_ROOTPATH "/tftpboot/" MK_STR(CONFIG_BOARD_NAME) "-root"
+#define CONFIG_ROOTPATH "/tftpboot/" __stringify(CONFIG_BOARD_NAME) "-root"
/*
* U-Boot Commands
@@ -188,9 +188,9 @@
#define CONFIG_BOOTDELAY 5
#define CONFIG_ZERO_BOOTDELAY_CHECK
-#define CONFIG_BOOTFILE MK_STR(CONFIG_BOARD_NAME) "-linux.bin"
-#define CONFIG_BOOTARGS "console=" MK_STR(ACFG_CONSOLE_DEV) "," \
- MK_STR(CONFIG_BAUDRATE) " " MTDPARTS_DEFAULT \
+#define CONFIG_BOOTFILE __stringify(CONFIG_BOARD_NAME) "-linux.bin"
+#define CONFIG_BOOTARGS "console=" __stringify(ACFG_CONSOLE_DEV) "," \
+ __stringify(CONFIG_BAUDRATE) " " MTDPARTS_DEFAULT \
" ubi.mtd=rootfs root=ubi0:rootfs rootfstype=ubifs "
#define ACFG_CONSOLE_DEV ttySMX0
@@ -207,15 +207,15 @@
*/
#define CONFIG_EXTRA_ENV_SETTINGS \
"env_version=" CONFIG_ENV_VERSION "\0" \
- "consoledev=" MK_STR(ACFG_CONSOLE_DEV) "\0" \
+ "consoledev=" __stringify(ACFG_CONSOLE_DEV) "\0" \
"mtdparts=" MTDPARTS_DEFAULT "\0" \
"partition=nand0,6\0" \
- "u-boot_addr=" MK_STR(ACFG_MONITOR_OFFSET) "\0" \
- "env_addr=" MK_STR(CONFIG_ENV_OFFSET) "\0" \
- "firmware_addr=" MK_STR(CONFIG_FIRMWARE_OFFSET) "\0" \
- "kernel_addr=" MK_STR(CONFIG_KERNEL_OFFSET) "\0" \
- "rootfs_addr=" MK_STR(CONFIG_ROOTFS_OFFSET) "\0" \
- "board_name=" MK_STR(CONFIG_BOARD_NAME) "\0" \
+ "u-boot_addr=" __stringify(ACFG_MONITOR_OFFSET) "\0" \
+ "env_addr=" __stringify(CONFIG_ENV_OFFSET) "\0" \
+ "firmware_addr=" __stringify(CONFIG_FIRMWARE_OFFSET) "\0" \
+ "kernel_addr=" __stringify(CONFIG_KERNEL_OFFSET) "\0" \
+ "rootfs_addr=" __stringify(CONFIG_ROOTFS_OFFSET) "\0" \
+ "board_name=" __stringify(CONFIG_BOARD_NAME) "\0" \
"kernel_addr_r=A0000000\0" \
"addnfsargs=setenv bootargs ${bootargs} " \
"root=/dev/nfs rw nfsroot=${serverip}:${rootpath}\0" \
diff --git a/patches/u-boot/2012.10/100-SPL-Add-u-boot-nand-build-option.patch b/patches/u-boot/2013.01.01/100-SPL-Add-u-boot-nand-build-option.patch
similarity index 94%
copy from patches/u-boot/2012.10/100-SPL-Add-u-boot-nand-build-option.patch
copy to patches/u-boot/2013.01.01/100-SPL-Add-u-boot-nand-build-option.patch
index 21e74fb..f6c3cc8 100644
--- a/patches/u-boot/2012.10/100-SPL-Add-u-boot-nand-build-option.patch
+++ b/patches/u-boot/2013.01.01/100-SPL-Add-u-boot-nand-build-option.patch
@@ -10,7 +10,7 @@ diff --git a/Makefile b/Makefile
index 08eecbb..00c9422 100644
--- a/Makefile
+++ b/Makefile
-@@ -554,8 +554,14 @@ $(obj)u-boot.lds: $(LDSCRIPT)
+@@ -601,8 +601,14 @@ $(obj)u-boot.lds: $(LDSCRIPT)
nand_spl: $(TIMESTAMP_FILE) $(VERSION_FILE) depend
$(MAKE) -C nand_spl/board/$(BOARDDIR) all
diff --git a/patches/u-boot/2012.10/102-mx1-i2c.patch b/patches/u-boot/2013.01.01/102-mx1-i2c.patch
similarity index 100%
copy from patches/u-boot/2012.10/102-mx1-i2c.patch
copy to patches/u-boot/2013.01.01/102-mx1-i2c.patch
diff --git a/patches/u-boot/2012.10/103-apf9328.patch b/patches/u-boot/2013.01.01/103-apf9328.patch
similarity index 100%
copy from patches/u-boot/2012.10/103-apf9328.patch
copy to patches/u-boot/2013.01.01/103-apf9328.patch
diff --git a/patches/u-boot/2012.10/104-apf9328-makefile.patch b/patches/u-boot/2013.01.01/104-apf9328-makefile.patch
similarity index 92%
copy from patches/u-boot/2012.10/104-apf9328-makefile.patch
copy to patches/u-boot/2013.01.01/104-apf9328-makefile.patch
index fc15410..b2f8406 100644
--- a/patches/u-boot/2012.10/104-apf9328-makefile.patch
+++ b/patches/u-boot/2013.01.01/104-apf9328-makefile.patch
@@ -13,7 +13,7 @@ diff --git a/MAINTAINERS b/MAINTAINERS
index b571400..18ac7d3 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -255,6 +255,10 @@ Gabriel Huau <co...@hu...>
+@@ -250,6 +250,10 @@ Gabriel Huau <co...@hu...>
mini2440 s3c2440
@@ -28,7 +28,7 @@ diff --git a/boards.cfg b/boards.cfg
index 7c1fc74..8a40643 100644
--- a/boards.cfg
+++ b/boards.cfg
-@@ -57,6 +57,7 @@ integratorap_cm720t arm arm720t integrator armltd
+@@ -59,6 +59,7 @@ integratorap_cm720t arm arm720t integrator armltd
integratorap_cm920t arm arm920t integrator armltd - integratorap:CM920T
integratorcp_cm920t arm arm920t integrator armltd - integratorcp:CM920T
a320evb arm arm920t - faraday a320
diff --git a/patches/u-boot/2012.10/106-mx1-pllclk.patch b/patches/u-boot/2013.01.01/106-mx1-pllclk.patch
similarity index 100%
copy from patches/u-boot/2012.10/106-mx1-pllclk.patch
copy to patches/u-boot/2013.01.01/106-mx1-pllclk.patch
diff --git a/patches/u-boot/2012.10/107-mx1-pllclk-debug.patch b/patches/u-boot/2013.01.01/107-mx1-pllclk-debug.patch
similarity index 100%
copy from patches/u-boot/2012.10/107-mx1-pllclk-debug.patch
copy to patches/u-boot/2013.01.01/107-mx1-pllclk-debug.patch
diff --git a/patches/u-boot/2012.10/108-DM9000.patch b/patches/u-boot/2013.01.01/108-DM9000.patch
similarity index 100%
copy from patches/u-boot/2012.10/108-DM9000.patch
copy to patches/u-boot/2013.01.01/108-DM9000.patch
diff --git a/patches/u-boot/2012.10/111-mx1-timer.patch b/patches/u-boot/2013.01.01/111-mx1-timer.patch
similarity index 100%
copy from patches/u-boot/2012.10/111-mx1-timer.patch
copy to patches/u-boot/2013.01.01/111-mx1-timer.patch
diff --git a/patches/u-boot/2012.10/301-imx27-Add-missing-constant-to-support-the-armadeus-APF27-board.patch b/patches/u-boot/2013.01.01/301-imx27-Add-missing-constant-to-support-the-armadeus-APF27-board.patch
similarity index 100%
copy from patches/u-boot/2012.10/301-imx27-Add-missing-constant-to-support-the-armadeus-APF27-board.patch
copy to patches/u-boot/2013.01.01/301-imx27-Add-missing-constant-to-support-the-armadeus-APF27-board.patch
diff --git a/patches/u-boot/2012.10/302-apf27-add-support-for-the-armadeus-APF27-board.patch b/patches/u-boot/2013.01.01/302-apf27-add-support-for-the-armadeus-APF27-board.patch
similarity index 99%
copy from patches/u-boot/2012.10/302-apf27-add-support-for-the-armadeus-APF27-board.patch
copy to patches/u-boot/2013.01.01/302-apf27-add-support-for-the-armadeus-APF27-board.patch
index 228d747..f4df5bf 100644
--- a/patches/u-boot/2012.10/302-apf27-add-support-for-the-armadeus-APF27-board.patch
+++ b/patches/u-boot/2013.01.01/302-apf27-add-support-for-the-armadeus-APF27-board.patch
@@ -13,9 +13,9 @@ diff --git a/MAINTAINERS b/MAINTAINERS
index 1b2da94..297467a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -1011,6 +1011,11 @@ Nobuhiro Iwamatsu <nob...@re...>
+@@ -1028,6 +1028,11 @@ Nobuhiro Iwamatsu <nob...@re...>
- armadillo-800eva R8A7740 (RMOBILE SoC)
+ nokia_rx51 ARM ARMV7 (OMAP34xx SoC)
+Eric Jarrige <eri...@ar...>
+Philippe Reynes <tr...@ya...>
@@ -992,7 +992,7 @@ diff --git a/boards.cfg b/boards.cfg
index 4c63789..72c49df 100644
--- a/boards.cfg
+++ b/boards.cfg
-@@ -184,6 +184,7 @@ jadecpu arm arm926ejs jadecpu syteco
+@@ -190,6 +190,7 @@ jadecpu arm arm926ejs jadecpu syteco
mx25pdk arm arm926ejs mx25pdk freescale mx25 mx25pdk:IMX_CONFIG=board/freescale/mx25pdk/imximage.cfg
tx25 arm arm926ejs tx25 karo mx25
zmx25 arm arm926ejs zmx25 syteco mx25
diff --git a/patches/u-boot/2012.10/303-apf27-Add-spl-support-for-the-apf27.patch b/patches/u-boot/2013.01.01/303-apf27-Add-spl-support-for-the-apf27.patch
similarity index 100%
copy from patches/u-boot/2012.10/303-apf27-Add-spl-support-for-the-apf27.patch
copy to patches/u-boot/2013.01.01/303-apf27-Add-spl-support-for-the-apf27.patch
diff --git a/patches/u-boot/2012.10/304-apf27-Add-FPGA-support-for-the-apf27-board.patch b/patches/u-boot/2013.01.01/304-apf27-Add-FPGA-support-for-the-apf27-board.patch
similarity index 100%
copy from patches/u-boot/2012.10/304-apf27-Add-FPGA-support-for-the-apf27-board.patch
copy to patches/u-boot/2013.01.01/304-apf27-Add-FPGA-support-for-the-apf27-board.patch
diff --git a/patches/u-boot/2012.10/311-imx-nand-lock-unlock.patch b/patches/u-boot/2013.01.01/311-imx-nand-lock-unlock.patch
similarity index 100%
copy from patches/u-boot/2012.10/311-imx-nand-lock-unlock.patch
copy to patches/u-boot/2013.01.01/311-imx-nand-lock-unlock.patch
diff --git a/patches/u-boot/2012.10/320-spartan.patch b/patches/u-boot/2013.01.01/320-spartan.patch
similarity index 100%
copy from patches/u-boot/2012.10/320-spartan.patch
copy to patches/u-boot/2013.01.01/320-spartan.patch
diff --git a/patches/u-boot/2012.10/321-add_spartan6.patch b/patches/u-boot/2013.01.01/321-add_spartan6.patch
similarity index 99%
copy from patches/u-boot/2012.10/321-add_spartan6.patch
copy to patches/u-boot/2013.01.01/321-add_spartan6.patch
index b7e10a6..689db28 100644
--- a/patches/u-boot/2012.10/321-add_spartan6.patch
+++ b/patches/u-boot/2013.01.01/321-add_spartan6.patch
@@ -18,7 +18,7 @@ diff --git a/README b/README
index dd250a0..d97bc04 100644
--- a/README
+++ b/README
-@@ -2059,7 +2059,7 @@ The following options need to be configured:
+@@ -2134,7 +2134,7 @@ The following options need to be configured:
CONFIG_FPGA_<family>
Enables support for FPGA family.
diff --git a/patches/u-boot/2012.10/340-apf27-misc-commands.patch b/patches/u-boot/2013.01.01/340-apf27-misc-commands.patch
similarity index 100%
copy from patches/u-boot/2012.10/340-apf27-misc-commands.patch
copy to patches/u-boot/2013.01.01/340-apf27-misc-commands.patch
diff --git a/patches/u-boot/2012.10/350-nand_large_file_download.patch b/patches/u-boot/2013.01.01/350-nand_large_file_download.patch
similarity index 91%
copy from patches/u-boot/2012.10/350-nand_large_file_download.patch
copy to patches/u-boot/2013.01.01/350-nand_large_file_download.patch
index 03c5c7d..439da74 100644
--- a/patches/u-boot/2012.10/350-nand_large_file_download.patch
+++ b/patches/u-boot/2013.01.01/350-nand_large_file_download.patch
@@ -22,7 +22,7 @@ index a9ade8b..fc1ce05 100644
+
static int netboot_common(enum proto_t, cmd_tbl_t *, int, char * const []);
- int do_bootp (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+ static int do_bootp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
@@ -51,11 +55,19 @@ int do_tftpb (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
return ret;
}
@@ -88,9 +88,9 @@ index 59a8ebb..727e746 100644
/* Well known TFTP port # */
#define WELL_KNOWN_PORT 69
/* Millisecs to timeout for lost pkt */
-@@ -41,6 +46,11 @@
- static ulong TftpTimeoutMSecs = TIMEOUT;
- static int TftpTimeoutCountMax = TIMEOUT_COUNT;
+@@ -28,6 +33,11 @@
+ /* Number of "loading" hashes per line (for checking the image size) */
+ #define HASHES_PER_LINE 65
+#if defined(CONFIG_CMD_NAND) && defined(CONFIG_SYS_DIRECT_FLASH_TFTP)
+static int temp_buf_offset = 0;
@@ -98,9 +98,9 @@ index 59a8ebb..727e746 100644
+#endif
+
/*
- * These globals govern the timeout behavior when attempting a connection to a
- * TFTP server. TftpRRQTimeoutMSecs specifies the number of milliseconds to
-@@ -155,12 +165,96 @@ mcast_cleanup(void)
+ * TFTP operations.
+ */
+@@ -156,12 +166,96 @@ mcast_cleanup(void)
#endif /* CONFIG_MCAST_TFTP */
@@ -197,7 +197,7 @@ index 59a8ebb..727e746 100644
int i, rc = 0;
for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; i++) {
-@@ -181,6 +275,13 @@ store_block(int block, uchar *src, unsigned len)
+@@ -182,6 +276,13 @@ store_block(int block, uchar *src, unsigned len)
return;
}
} else
@@ -211,7 +211,7 @@ index 59a8ebb..727e746 100644
#endif /* CONFIG_SYS_DIRECT_FLASH_TFTP */
{
(void)memcpy((void *)(load_addr + offset), src, len);
-@@ -203,6 +304,10 @@ static void new_transfer(void)
+@@ -204,6 +305,10 @@ static void new_transfer(void)
#ifdef CONFIG_CMD_TFTPPUT
TftpFinalBlock = 0;
#endif
@@ -222,7 +222,7 @@ index 59a8ebb..727e746 100644
}
#ifdef CONFIG_CMD_TFTPPUT
-@@ -292,6 +397,13 @@ static void update_block_number(void)
+@@ -293,6 +398,13 @@ static void update_block_number(void)
/* The TFTP get or put is complete */
static void tftp_complete(void)
{
diff --git a/patches/u-boot/2013.01.01/360-arm-support-continuous-mmu-mem-mapping.patch b/patches/u-boot/2013.01.01/360-arm-support-continuous-mmu-mem-mapping.patch
new file mode 100644
index 0000000..4286714
--- /dev/null
+++ b/patches/u-boot/2013.01.01/360-arm-support-continuous-mmu-mem-mapping.patch
@@ -0,0 +1,76 @@
+ARM: support continuous MMU memory mapping beside the regular identity mapping.
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+---
+diff --git a/arch/arm/lib/cache-cp15.c b/arch/arm/lib/cache-cp15.c
+index 939de10..25f0ff1 100644
+--- a/arch/arm/lib/cache-cp15.c
++++ b/arch/arm/lib/cache-cp15.c
+@@ -44,14 +44,14 @@ static void cp_delay (void)
+ asm volatile("" : : : "memory");
+ }
+
+-void set_section_dcache(int section, enum dcache_option option)
++void set_section_dcache(int section, int section_index, enum dcache_option option)
+ {
+ u32 *page_table = (u32 *)gd->tlb_addr;
+ u32 value;
+
+ value = (section << MMU_SECTION_SHIFT) | (3 << 10);
+ value |= option;
+- page_table[section] = value;
++ page_table[section_index] = value;
+ }
+
+ void __mmu_page_table_flush(unsigned long start, unsigned long stop)
+@@ -73,11 +73,11 @@ void mmu_set_region_dcache_behaviour(u32
+ debug("%s: start=%x, size=%x, option=%d\n", __func__, start, size,
+ option);
+ for (upto = start; upto < end; upto++)
+- set_section_dcache(upto, option);
++ set_section_dcache(upto, upto, option);
+ mmu_page_table_flush((u32)&page_table[start], (u32)&page_table[end]);
+ }
+
+-static inline void dram_bank_mmu_setup(int bank)
++static inline void dram_bank_mmu_setup(int bank, int page_offset)
+ {
+ bd_t *bd = gd->bd;
+ int i;
+@@ -87,9 +87,9 @@ static inline void dram_bank_mmu_setup(i
+ i < (bd->bi_dram[bank].start + bd->bi_dram[bank].size) >> 20;
+ i++) {
+ #if defined(CONFIG_SYS_ARM_CACHE_WRITETHROUGH)
+- set_section_dcache(i, DCACHE_WRITETHROUGH);
++ set_section_dcache(i, page_offset++, DCACHE_WRITETHROUGH);
+ #else
+- set_section_dcache(i, DCACHE_WRITEBACK);
++ set_section_dcache(i, page_offset++, DCACHE_WRITEBACK);
+ #endif
+ }
+ }
+@@ -99,14 +99,22 @@ static inline void mmu_setup(void)
+ {
+ int i;
+ u32 reg;
++ bd_t *bd = gd->bd;
++ int page_offset, continuity_offset;
+
+ arm_init_before_mmu();
+ /* Set up an identity-mapping for all 4GB, rw for everyone */
+ for (i = 0; i < 4096; i++)
+- set_section_dcache(i, DCACHE_OFF);
++ set_section_dcache(i, i, DCACHE_OFF);
+
++ continuity_offset = bd->bi_dram[0].start >> 20;
+ for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
+- dram_bank_mmu_setup(i);
++ page_offset = (bd->bi_dram[i].start) >> 20;
++ /* direct identity mapping */
++ dram_bank_mmu_setup(i, page_offset);
++ /* secondary mapping to build a continous memory space */
++ dram_bank_mmu_setup(i, continuity_offset);
++ continuity_offset = (bd->bi_dram[i].start + bd->bi_dram[i].size) >> 20;
+ }
+
+ /* Copy the page table address to cp15 */
diff --git a/patches/u-boot/2012.10/370-imx27-add-i2c-driver.patch b/patches/u-boot/2013.01.01/370-imx27-add-i2c-driver.patch
similarity index 95%
copy from patches/u-boot/2012.10/370-imx27-add-i2c-driver.patch
copy to patches/u-boot/2013.01.01/370-imx27-add-i2c-driver.patch
index 913d98e..6149983 100644
--- a/patches/u-boot/2012.10/370-imx27-add-i2c-driver.patch
+++ b/patches/u-boot/2013.01.01/370-imx27-add-i2c-driver.patch
@@ -7,7 +7,7 @@ diff -purN uboot/arch/arm/cpu/arm926ejs/mx27/generic.c uboot/arch/arm/cpu/arm926
switch (clk) {
case MXC_ARM_CLK:
return imx_get_armclk();
-+ case MXC_IPG_PERCLK:
++ case MXC_I2C_CLK:
+ return imx_get_ahbclk()/2;
case MXC_UART_CLK:
return imx_get_perclk1();
@@ -19,7 +19,7 @@ diff -purN uboot/arch/arm/include/asm/arch-mx27/clock.h uboot/arch/arm/include/a
enum mxc_clock {
MXC_ARM_CLK,
-+ MXC_IPG_PERCLK,
++ MXC_I2C_CLK,
MXC_UART_CLK,
MXC_ESDHC_CLK,
MXC_FEC_CLK,
diff --git a/patches/u-boot/2012.10/400-imx51.patch b/patches/u-boot/2013.01.01/400-imx51.patch
similarity index 95%
copy from patches/u-boot/2012.10/400-imx51.patch
copy to patches/u-boot/2013.01.01/400-imx51.patch
index 5038033..fde3599 100644
--- a/patches/u-boot/2012.10/400-imx51.patch
+++ b/patches/u-boot/2013.01.01/400-imx51.patch
@@ -224,19 +224,19 @@ index a40b84f..1ca9b22 100644
+#define CONFIG_SYS_CLKTL_CBCMR1 0xA5A2A020
+#endif
+
- /*
- * L2CC Cache setup/invalidation/disable
- */
-@@ -98,7 +126,7 @@
+ .section ".text.init", "x"
- .macro setup_pll pll, freq
- ldr r0, =\pll
+ .macro init_arm_erratum
+@@ -114,7 +142,7 @@
+ #define W_DP_MFN 8
+
+ setup_pll_func:
- ldr r1, =0x00001232
+ ldr r1, =CONFIG_SYS_PLL_DP_CTL
str r1, [r0, #PLL_DP_CTL] /* Set DPLL ON (set UPEN bit): BRMO=1 */
mov r1, #0x2
str r1, [r0, #PLL_DP_CONFIG] /* Enable auto-restart AREN bit */
-@@ -115,7 +143,7 @@
+@@ -131,7 +159,7 @@
str r1, [r0, #PLL_DP_MFN]
str r1, [r0, #PLL_DP_HFS_MFN]
@@ -245,19 +245,19 @@ index a40b84f..1ca9b22 100644
str r1, [r0, #PLL_DP_CTL]
1: ldr r1, [r0, #PLL_DP_CTL]
ands r1, r1, #0x1
-@@ -126,7 +154,7 @@
+@@ -143,7 +171,7 @@
+ .macro setup_pll_errata pll, freq
ldr r2, =\pll
- mov r1, #0x0
- str r1, [r2, #PLL_DP_CONFIG] /* Disable auto-restart AREN bit */
+ str r4, [r2, #PLL_DP_CONFIG] /* Disable auto-restart AREN bit */
- ldr r1, =0x00001236
+ ldr r1, =CONFIG_SYS_PLL_DP_CTL | 0x04
str r1, [r2, #PLL_DP_CTL] /* Restart PLL with PLM=1 */
1: ldr r1, [r2, #PLL_DP_CTL] /* Wait for lock */
ands r1, r1, #0x1
-@@ -155,6 +183,16 @@
+@@ -172,6 +200,16 @@
+ #if defined (CONFIG_MX51)
ldr r0, =CCM_BASE_ADDR
- #if defined(CONFIG_MX51)
+#ifdef CONFIG_SYS_CLKCTL_CCMR
+ ldr r1, =CONFIG_SYS_CLKCTL_CCMR
+ str r1, [r0, #CLKCTL_CCMR]
@@ -272,7 +272,7 @@ index a40b84f..1ca9b22 100644
ldr r1, =0x3FFFFFFF
str r1, [r0, #CLKCTL_CCGR0]
@@ -199,7 +237,7 @@
- #endif
+ bne 1b
/* Switch ARM to step clock */
- mov r1, #0x4
@@ -280,30 +280,28 @@ index a40b84f..1ca9b22 100644
str r1, [r0, #CLKCTL_CCSR]
#if defined(CONFIG_MX51_PLL_ERRATA)
-@@ -251,16 +289,16 @@
+@@ -244,13 +282,14 @@
str r1, [r0, #CLKCTL_CACRR]
/* Switch ARM back to PLL 1 */
-- mov r1, #0
+ mov r1, #CONFIG_SYS_CLKCTL_CCSR
- str r1, [r0, #CLKCTL_CCSR]
+- str r4, [r0, #CLKCTL_CCSR]
++ str r1, [r0, #CLKCTL_CCSR]
- #if defined(CONFIG_MX51)
/* setup the rest */
- /* Use lp_apm (24MHz) source for perclk */
-- ldr r1, =0x000020C2
+- ldr r1, =0x000020C2 | CONFIG_SYS_DDR_CLKSEL
+ /* select source for perclk */
-+ ldr r1, =CONFIG_SYS_CLKTL_CBCMR
- orr r1,r1,#CONFIG_SYS_DDR_CLKSEL
++ ldr r1, =CONFIG_SYS_CLKTL_CBCMR | CONFIG_SYS_DDR_CLKSEL
str r1, [r0, #CLKCTL_CBCMR]
- /* ddr clock from PLL 1, all perclk dividers are 1 since using 24MHz */
+ /* ddr clock from PLL 1 */
ldr r1, =CONFIG_SYS_CLKTL_CBCDR
str r1, [r0, #CLKCTL_CBCDR]
- #endif
-@@ -280,9 +318,9 @@
- #if defined(CONFIG_MX51)
+@@ -265,9 +304,9 @@
+ str r1, [r0, #CLKCTL_CCGR6]
+
/* Use PLL 2 for UART's, get 66.5MHz from it */
- ldr r1, =0xA5A2A020
+ ldr r1, =CONFIG_SYS_CLKTL_CBCMR1
@@ -311,13 +309,12 @@ index a40b84f..1ca9b22 100644
- ldr r1, =0x00C30321
+ ldr r1, =CONFIG_SYS_CLKTL_CSCDR1
str r1, [r0, #CLKCTL_CSCDR1]
- #elif defined(CONFIG_MX53)
- /* Switch peripheral to PLL2 */
-@@ -346,9 +384,34 @@ ENTRY(lowlevel_init)
+ /* make sure divider effective */
+ 1: ldr r1, [r0, #CLKCTL_CDHIPR]
+@@ -416,8 +455,34 @@ ENTRY(lowlevel_init)
init_clock
-- /* r12 saved upper lr*/
+/* make U-Boot runnable form "almost" anywhere */
+/* but SYS_TEXT_BASE should be in RAM */
+copy2ram: /* populate _TEXT_BASE with U-Boot from load addr */
@@ -339,7 +336,7 @@ index a40b84f..1ca9b22 100644
+ blo copy_loop
+
+end_of_copy2ram:
- mov pc,lr
+ mov pc, r10
ENDPROC(lowlevel_init)
+_copy2ram:
+ .word copy2ram
@@ -348,12 +345,12 @@ index a40b84f..1ca9b22 100644
+
/* Board level setting value */
- W_DP_OP_864: .word DP_OP_864
+ #if defined(CONFIG_MX51_PLL_ERRATA)
diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h b/arch/arm/include/asm/arch-mx5/imx-regs.h
index 46017f4..520bf98 100644
--- a/arch/arm/include/asm/arch-mx5/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
-@@ -277,6 +277,7 @@
+@@ -267,6 +267,7 @@
#define M4IF_FBPM0 0x40
#define M4IF_FIDBP 0x48
@@ -361,7 +358,7 @@ index 46017f4..520bf98 100644
/* Assuming 24MHz input clock with doubler ON */
/* MFI PDF */
#define DP_OP_864 ((8 << 4) + ((1 - 1) << 0))
-@@ -311,6 +312,7 @@
+@@ -305,6 +306,7 @@
#define DP_OP_216 ((6 << 4) + ((3 - 1) << 0))
#define DP_MFD_216 (4 - 1)
#define DP_MFN_216 3
diff --git a/patches/u-boot/2012.10/401-apf51.patch b/patches/u-boot/2013.01.01/401-apf51.patch
similarity index 99%
copy from patches/u-boot/2012.10/401-apf51.patch
copy to patches/u-boot/2013.01.01/401-apf51.patch
index 290fc6a..373e009 100644
--- a/patches/u-boot/2012.10/401-apf51.patch
+++ b/patches/u-boot/2013.01.01/401-apf51.patch
@@ -1588,7 +1588,7 @@ diff --git a/boards.cfg b/boards.cfg
index 9df6212..1aa7e95 100644
--- a/boards.cfg
+++ b/boards.cfg
-@@ -231,6 +231,7 @@ am335x_evm arm armv7 am335x ti
+@@ -241,6 +241,7 @@ am335x_evm arm armv7 am335x ti
highbank arm armv7 highbank - highbank
mx51_efikamx arm armv7 mx51_efikamx genesi mx5 mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKAMX,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_mx.cfg
mx51_efikasb arm armv7 mx51_efikamx genesi mx5 mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKASB,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_sb.cfg
diff --git a/patches/u-boot/2012.10/403-apf51-wdog.patch b/patches/u-boot/2013.01.01/403-apf51-wdog.patch
similarity index 93%
copy from patches/u-boot/2012.10/403-apf51-wdog.patch
copy to patches/u-boot/2013.01.01/403-apf51-wdog.patch
index b47edc1..6c33620 100644
--- a/patches/u-boot/2012.10/403-apf51-wdog.patch
+++ b/patches/u-boot/2013.01.01/403-apf51-wdog.patch
@@ -8,7 +8,7 @@ diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h b/arch/arm/include/asm/arc
index 520bf98..063979e 100644
--- a/arch/arm/include/asm/arch-mx5/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx5/imx-regs.h
-@@ -529,6 +529,15 @@ struct fuse_bank1_regs {
+@@ -523,6 +523,15 @@ struct fuse_bank1_regs {
u32 fuse15_31[0x11];
};
diff --git a/patches/u-boot/2012.10/407-imx51-nand.patch b/patches/u-boot/2013.01.01/407-imx51-nand.patch
similarity index 99%
copy from patches/u-boot/2012.10/407-imx51-nand.patch
copy to patches/u-boot/2013.01.01/407-imx51-nand.patch
index 00d30f3..4bc9f86 100644
--- a/patches/u-boot/2012.10/407-imx51-nand.patch
+++ b/patches/u-boot/2013.01.01/407-imx51-nand.patch
@@ -387,7 +387,7 @@ diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile
index beb99ca..3af02c6 100644
--- a/drivers/mtd/nand/Makefile
+++ b/drivers/mtd/nand/Makefile
-@@ -56,6 +56,7 @@ COBJS-$(CONFIG_NAND_KIRKWOOD) += kirkwood_nand.o
+@@ -69,6 +69,7 @@ COBJS-$(CONFIG_NAND_KIRKWOOD) += kirkwood_nand.o
COBJS-$(CONFIG_NAND_KMETER1) += kmeter1_nand.o
COBJS-$(CONFIG_NAND_MPC5121_NFC) += mpc5121_nfc.o
COBJS-$(CONFIG_NAND_MXC) += mxc_nand.o
diff --git a/patches/u-boot/2012.10/409-apf51-nand-spl.patch b/patches/u-boot/2013.01.01/409-apf51-nand-spl.patch
similarity index 100%
copy from patches/u-boot/2012.10/409-apf51-nand-spl.patch
copy to patches/u-boot/2013.01.01/409-apf51-nand-spl.patch
diff --git a/patches/u-boot/2012.10/410-imx-iim.patch b/patches/u-boot/2013.01.01/410-imx-iim.patch
similarity index 98%
copy from patches/u-boot/2012.10/410-imx-iim.patch
copy to patches/u-boot/2013.01.01/410-imx-iim.patch
index 16c5f30..65cb4b6 100644
--- a/patches/u-boot/2012.10/410-imx-iim.patch
+++ b/patches/u-boot/2013.01.01/410-imx-iim.patch
@@ -82,14 +82,14 @@ diff --git a/common/Makefile b/common/Makefile
index 973f05a..f368b24 100644
--- a/common/Makefile
+++ b/common/Makefile
-@@ -104,6 +104,7 @@ ifdef CONFIG_FPGA
- COBJS-$(CONFIG_CMD_FPGA) += cmd_fpga.o
- endif
+@@ -107,6 +107,7 @@ ifdef CONFIG_FPGA
+ COBJS-$(CONFIG_CMD_FS_GENERIC) += cmd_fs.o
+ COBJS-$(CONFIG_CMD_GETTIME) += cmd_gettime.o
COBJS-$(CONFIG_CMD_GPIO) += cmd_gpio.o
+COBJS-$(CONFIG_CMD_IIM) += cmd_iim.o
COBJS-$(CONFIG_CMD_I2C) += cmd_i2c.o
+ COBJS-$(CONFIG_CMD_HASH) += cmd_hash.o
COBJS-$(CONFIG_CMD_IDE) += cmd_ide.o
- COBJS-$(CONFIG_CMD_IMMAP) += cmd_immap.o
diff --git a/common/cmd_iim.c b/common/cmd_iim.c
new file mode 100644
index 0000000..d47ccf5
@@ -197,7 +197,7 @@ index 271463c..9a444bc 100644
+++ b/drivers/misc/Makefile
@@ -29,6 +29,7 @@ COBJS-$(CONFIG_ALI152X) += ali512x.o
COBJS-$(CONFIG_DS4510) += ds4510.o
- COBJS-$(CONFIG_FSL_LAW) += fsl_law.o
+ COBJS-$(CONFIG_CBMEM_CONSOLE) += cbmem_console.o
COBJS-$(CONFIG_GPIO_LED) += gpio_led.o
+COBJS-$(CONFIG_IMX_IIM) += imx_iim.o
COBJS-$(CONFIG_FSL_MC9SDZ60) += mc9sdz60.o
diff --git a/patches/u-boot/2013.01.01/501-imx28-update-and-fix.patch b/patches/u-boot/2013.01.01/501-imx28-update-and-fix.patch
new file mode 100644
index 0000000..20cc144
--- /dev/null
+++ b/patches/u-boot/2013.01.01/501-imx28-update-and-fix.patch
@@ -0,0 +1,37 @@
+Signed-off-by: Eric Jarrige <eri...@ar...>
+Signed-off-by: Philippe Reynes <tr...@ya...>
+---
+ arch/arm/cpu/arm926ejs/mxs/u-boot-imx28.bd | 4 ++--
+ common/memsize.c | 2 ++
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/cpu/arm926ejs/mxs/u-boot-imx28.bd b/arch/arm/cpu/arm926ejs/mxs/u-boot-imx28.bd
+index c60615a..f533ad0 100644
+--- a/arch/arm/cpu/arm926ejs/mxs/u-boot-imx28.bd
++++ b/arch/arm/cpu/arm926ejs/mxs/u-boot-imx28.bd
+@@ -8,7 +8,7 @@ section (0) {
+ load ivt (entry = 0x0014) > 0x8000;
+ hab call 0x8000;
+
+- load u_boot > 0x40000100;
+- load ivt (entry = 0x40000100) > 0x8000;
++ load u_boot > 0x40000000;
++ load ivt (entry = 0x40000000) > 0x8000;
+ hab call 0x8000;
+ }
+diff --git a/common/memsize.c b/common/memsize.c
+index 963e4f3..a9f76bc 100644
+--- a/common/memsize.c
++++ b/common/memsize.c
+@@ -74,6 +74,8 @@ long get_ram_size(long *base, long maxsize)
+ return (0);
+ }
+
++ sync();
++ *addr = save[i];
+ for (cnt = 1; cnt < maxsize / sizeof (long); cnt <<= 1) {
+ addr = base + cnt; /* pointer arith! */
+ val = *addr;
+--
+1.7.2.5
+
diff --git a/patches/u-boot/2012.10/502-add-apf28.patch b/patches/u-boot/2013.01.01/502-add-apf28.patch
similarity index 99%
copy from patches/u-boot/2012.10/502-add-apf28.patch
copy to patches/u-boot/2013.01.01/502-add-apf28.patch
index ca83365..7e63b70 100644
--- a/patches/u-boot/2012.10/502-add-apf28.patch
+++ b/patches/u-boot/2013.01.01/502-add-apf28.patch
@@ -1300,12 +1300,12 @@ index 0000000..9854cda
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff
+};
+
-+void init_mx28_200mhz_ddr2(void)
++void mxs_adjust_memory_params(uint32_t *dram_vals)
+{
+ int i;
+
+ for (i = 0; i < ARRAY_SIZE(apf28_dram_vals); i++)
-+ writel(apf28_dram_vals[i], MXS_DRAM_BASE + (4 * i));
++ *dram_vals++ = apf28_dram_vals[i];
+}
+
+void board_init_ll(void)
@@ -1325,7 +1325,7 @@ diff --git a/boards.cfg b/boards.cfg
index 1aa7e95..f3c8b40 100644
--- a/boards.cfg
+++ b/boards.cfg
-@@ -189,6 +189,7 @@ zmx25 arm arm926ejs zmx25 syteco
+@@ -194,6 +194,7 @@ zmx25 arm arm926ejs zmx25 syteco
imx27lite arm arm926ejs imx27lite logicpd mx27
magnesium arm arm926ejs imx27lite logicpd mx27
apx4devkit arm arm926ejs apx4devkit bluegiga mxs apx4devkit
hooks/post-receive
--
armadeus
|
|
From: jscheer <js...@us...> - 2013-02-12 09:14:55
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 7a2303918bec16737a0e035d2ea80dea0b8c1080 (commit)
from e06d8d1e8d3b998d8b036729236bc7bd33996acf (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7a2303918bec16737a0e035d2ea80dea0b8c1080
Author: Jeremie Scheer <jer...@ar...>
Date: Tue Feb 12 10:14:35 2013 +0100
[BUILDROOT] Map Keys Meta and Menu in Qt QWS Server's keyboard maps.
-----------------------------------------------------------------------
Summary of changes:
...-qt-full_integration_with_cross_compiling.patch | 27 ++++++++++++++++++-
patches/buildroot/2012.02/cleanup_buildroot.sh | 1 +
2 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/patches/buildroot/2012.02/132-qt-full_integration_with_cross_compiling.patch b/patches/buildroot/2012.02/132-qt-full_integration_with_cross_compiling.patch
index 68ce2df..4609d50 100644
--- a/patches/buildroot/2012.02/132-qt-full_integration_with_cross_compiling.patch
+++ b/patches/buildroot/2012.02/132-qt-full_integration_with_cross_compiling.patch
@@ -5,7 +5,7 @@ Signed-off-by: Jérémie Scheer <jer...@ar...>
Index: buildroot/package/qt/Config.in
===================================================================
--- buildroot.orig/package/qt/Config.in 2012-02-29 23:19:47.000000000 +0100
-+++ buildroot/package/qt/Config.in 2013-01-11 14:09:10.000000000 +0100
++++ buildroot/package/qt/Config.in 2013-02-11 17:36:11.000000000 +0100
@@ -17,7 +17,12 @@
If unsure, say N.
@@ -23,7 +23,7 @@ Index: buildroot/package/qt/Config.in
Index: buildroot/package/qt/qt.mk
===================================================================
--- buildroot.orig/package/qt/qt.mk 2012-02-29 23:19:47.000000000 +0100
-+++ buildroot/package/qt/qt.mk 2013-01-11 14:11:10.000000000 +0100
++++ buildroot/package/qt/qt.mk 2013-02-11 17:36:11.000000000 +0100
@@ -14,7 +14,7 @@
QT_VERSION = 4.7.4
@@ -50,3 +50,26 @@ Index: buildroot/package/qt/qt.mk
endif
# ensure glib is built first if enabled for Qt's glib support
+Index: buildroot/package/qt/qt-4.7.4-map_keyboard_keys_metas_and_menu.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/qt/qt-4.7.4-map_keyboard_keys_metas_and_menu.patch 2013-02-11 18:18:46.000000000 +0100
+@@ -0,0 +1,18 @@
++Add keys Meta (left and right) and Menu to QWS keyboard maps.
++
++Signed-off-by: Jeremie Scheer <jer...@ar...>
++
++Index: qt-4.7.4/src/gui/embedded/qkbd_defaultmap_qws_p.h
++===================================================================
++--- qt-4.7.4.orig/src/gui/embedded/qkbd_defaultmap_qws_p.h 2011-03-31 22:28:16.530647168 +0200
+++++ qt-4.7.4/src/gui/embedded/qkbd_defaultmap_qws_p.h 2011-03-31 22:29:38.908081695 +0200
++@@ -643,6 +643,9 @@
++ { 111, 0xffff, 0x01000000, 0x06, 0x08, 0x0200 },
++ { 111, 0xffff, 0x01000000, 0x0c, 0x08, 0x0200 },
++ { 119, 0xffff, 0x01000008, 0x00, 0x00, 0x0000 },
+++ { 125, 0xffff, 0x01000022, 0x00, 0x00, 0x0000 }, // Key_Meta (left)
+++ { 126, 0xffff, 0x01000022, 0x00, 0x00, 0x0000 }, // Key_Meta (right)
+++ { 127, 0xffff, 0x01000055, 0x00, 0x00, 0x0000 }, // Key_Menu
++ };
++
++ const QWSKeyboard::Composing QWSKbPrivate::s_keycompose_default[] = {
diff --git a/patches/buildroot/2012.02/cleanup_buildroot.sh b/patches/buildroot/2012.02/cleanup_buildroot.sh
index 11c392b..bd98625 100755
--- a/patches/buildroot/2012.02/cleanup_buildroot.sh
+++ b/patches/buildroot/2012.02/cleanup_buildroot.sh
@@ -80,3 +80,4 @@ rm -rf buildroot/package/tar/tar-1.26-no-gets.patch
rm -rf buildroot/package/cunit/
rm -rf buildroot/package/qextserialport/
rm -rf buildroot/package/compat-wireless/
+rm -rf buildroot/package/qt/qt-4.7.4-map_keyboard_keys_metas_and_menu.patch
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-09 14:09:26
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via e06d8d1e8d3b998d8b036729236bc7bd33996acf (commit)
via ec20987f293bc0a560cbdff5ef138dee67cf736c (commit)
via 68d2b086b744aafeeb794476a4d66bc62026b917 (commit)
via fd3a664d24d46f458f50a757798974f649de275d (commit)
via 6512dde16c281ca33c6561a943d7301c941f6d22 (commit)
via 1697a93d4517bc8d37b62746587f9d89417800c2 (commit)
from b574fa628d6f331818bf663cd9ce2e9cc8c22bba (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit e06d8d1e8d3b998d8b036729236bc7bd33996acf
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 15:07:29 2013 +0100
[LINUX][3.7] apf27 config: select pwm-imx by default
commit ec20987f293bc0a560cbdff5ef138dee67cf736c
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 15:07:01 2013 +0100
[LINUX][3.7] apf27: add pwm support
commit 68d2b086b744aafeeb794476a4d66bc62026b917
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 15:06:29 2013 +0100
[LINUX][3.7] imx27: pwm: rename ipg clock and add per clock
commit fd3a664d24d46f458f50a757798974f649de275d
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 15:05:20 2013 +0100
[LINUX][3.7] imx27: pwm: adds the mandatory macro to select this peripheral
commit 6512dde16c281ca33c6561a943d7301c941f6d22
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 14:59:16 2013 +0100
[LINUX][3.7] imx: update platform mxc-pwm to register driver with device id instead of driver name
commit 1697a93d4517bc8d37b62746587f9d89417800c2
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 14:57:21 2013 +0100
[LINUX][3.7] imx: allows to use pwm-imx without device tree
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf27/apf27-linux-3.7.config | 2 +
.../3.7/0201-armadeus-add_apf27dev_baseboard.patch | 57 +++++++++-------
...madeus-imx-allow_using_imx-pwm_without_DT.patch | 72 +++++++++++++++++++
...b-armadeus-imx-pwm-update_platform_device.patch | 74 ++++++++++++++++++++
...deus-imx27-pwm-add_macro_for_registration.patch | 17 +++++
...x27-clk-rename_pwm_driver_and_add_per_clk.patch | 20 +++++
6 files changed, 217 insertions(+), 25 deletions(-)
create mode 100644 patches/linux/3.7/0207a-armadeus-imx-allow_using_imx-pwm_without_DT.patch
create mode 100644 patches/linux/3.7/0207b-armadeus-imx-pwm-update_platform_device.patch
create mode 100644 patches/linux/3.7/0207c-armadeus-imx27-pwm-add_macro_for_registration.patch
create mode 100644 patches/linux/3.7/0207d-armadeus-imx27-clk-rename_pwm_driver_and_add_per_clk.patch
diff --git a/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.config b/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.config
index fca5c1e..00c7b9d 100644
--- a/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.config
+++ b/buildroot/target/device/armadeus/apf27/apf27-linux-3.7.config
@@ -203,6 +203,8 @@ CONFIG_IMX_SDMA=y
CONFIG_IMX_DMA=y
# CONFIG_IOMMU_SUPPORT is not set
CONFIG_IIO=m
+CONFIG_PWM=y
+CONFIG_PWM_IMX=y
CONFIG_ARMADEUS_DRIVERS=y
CONFIG_ARMADEUS_FPGA_DRIVERS=y
CONFIG_ARMADEUS_FPGA_LOADER_DRIVER=m
diff --git a/patches/linux/3.7/0201-armadeus-add_apf27dev_baseboard.patch b/patches/linux/3.7/0201-armadeus-add_apf27dev_baseboard.patch
index fbec6e4..21d47c0 100644
--- a/patches/linux/3.7/0201-armadeus-add_apf27dev_baseboard.patch
+++ b/patches/linux/3.7/0201-armadeus-add_apf27dev_baseboard.patch
@@ -8,11 +8,11 @@ Signed-off-by: Eric Jarrige <eri...@ar...>
Signed-off-by: Jeremie Scheer <jer...@ar...>
Signed-off-by: Kevin Joly <jol...@gm...>
-Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+Index: linux-3.7.6/arch/arm/mach-imx/apf27-dev.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.7.1/arch/arm/mach-imx/apf27-dev.c 2013-01-02 17:57:45.000000000 +0100
-@@ -0,0 +1,1025 @@
+--- /dev/null
++++ linux-3.7.6/arch/arm/mach-imx/apf27-dev.c
+@@ -0,0 +1,1032 @@
+ /*
+ * apf27-dev.c
+ * Support for AFP27 module's development baseboard
@@ -77,7 +77,6 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+#endif
+#include <linux/can/platform/mcp251x.h>
+#if 0
-+#include "../../../drivers/armadeus/pwm/pwm.h"
+#include <mach/imx_dam.h>
+#include <mach/imx_sound.h>
+#include <mach/imx-alsa.h>
@@ -135,8 +134,8 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+#ifdef CONFIG_SOC_CAMERA_OV96XX_MODULE
+#define CONFIG_SOC_CAMERA_OV96XX 1
+#endif
-+#ifdef CONFIG_ARMADEUS_PWM_DRIVER_MODULE
-+#define CONFIG_PWM
++#ifdef CONFIG_PWM_IMX_MODULE
++#define CONFIG_PWM_IMX 1
+#endif
+
+#define TSC2101_INT 17
@@ -241,6 +240,9 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+ TSC2101_INT_GPIO | GPIO_IN | GPIO_GPIO,
+ USER_LED | GPIO_GPIO | GPIO_OUT,
+ USER_BUTTON | GPIO_GPIO | GPIO_IN,
++#ifdef CONFIG_PWM_IMX
++ PE5_PF_PWMO,
++#endif
+};
+
+
@@ -1018,6 +1020,11 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+ ARRAY_SIZE(apf27dev_spi_board_info));
+
+ platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
++
++#ifdef CONFIG_PWM_IMX
++ imx27_add_mxc_pwm();
++#endif
++
+#if 0
+#ifdef CONFIG_SPI_TSC2102
+ /* Due to an hardware "bug", force TSC2101 ChipSelect at startup
@@ -1038,10 +1045,10 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev.c
+#endif
+}
+
-Index: linux-3.7.1/arch/arm/mach-imx/apf27-lcd.c
+Index: linux-3.7.6/arch/arm/mach-imx/apf27-lcd.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.7.1/arch/arm/mach-imx/apf27-lcd.c 2013-01-02 17:21:07.000000000 +0100
+--- /dev/null
++++ linux-3.7.6/arch/arm/mach-imx/apf27-lcd.c
@@ -0,0 +1,157 @@
+/*
+ * apf27-lcd.c
@@ -1200,10 +1207,10 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-lcd.c
+}
+
+#endif
-Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev-ext-apw.c
+Index: linux-3.7.6/arch/arm/mach-imx/apf27-dev-ext-apw.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.7.1/arch/arm/mach-imx/apf27-dev-ext-apw.c 2013-01-02 17:21:07.000000000 +0100
+--- /dev/null
++++ linux-3.7.6/arch/arm/mach-imx/apf27-dev-ext-apw.c
@@ -0,0 +1,175 @@
+ /*
+ * apf27-dev-ext-apw.c
@@ -1380,10 +1387,10 @@ Index: linux-3.7.1/arch/arm/mach-imx/apf27-dev-ext-apw.c
+ printk("done\n");
+}
+
-Index: linux-3.7.1/arch/arm/mach-imx/mach-apf27.c
+Index: linux-3.7.6/arch/arm/mach-imx/mach-apf27.c
===================================================================
---- linux-3.7.1.orig/arch/arm/mach-imx/mach-apf27.c 2013-01-02 17:21:07.000000000 +0100
-+++ linux-3.7.1/arch/arm/mach-imx/mach-apf27.c 2013-01-02 17:21:07.000000000 +0100
+--- linux-3.7.6.orig/arch/arm/mach-imx/mach-apf27.c
++++ linux-3.7.6/arch/arm/mach-imx/mach-apf27.c
@@ -43,6 +43,7 @@
#include "devices-imx27.h"
@@ -1392,7 +1399,7 @@ Index: linux-3.7.1/arch/arm/mach-imx/mach-apf27.c
static const int apf27_pins[] __initconst = {
/* UART1 */
-@@ -270,6 +271,10 @@
+@@ -270,6 +271,10 @@ static void __init apf27_init(void)
i2c_register_board_info(1, apf27_i2c_devices_bus1,
ARRAY_SIZE(apf27_i2c_devices_bus1));
imx27_add_imx_i2c(1, &apf27_i2c_1_data);
@@ -1403,11 +1410,11 @@ Index: linux-3.7.1/arch/arm/mach-imx/mach-apf27.c
}
static void __init apf27_timer_init(void)
-Index: linux-3.7.1/arch/arm/mach-imx/Kconfig
+Index: linux-3.7.6/arch/arm/mach-imx/Kconfig
===================================================================
---- linux-3.7.1.orig/arch/arm/mach-imx/Kconfig 2013-01-02 17:21:07.000000000 +0100
-+++ linux-3.7.1/arch/arm/mach-imx/Kconfig 2013-01-02 17:21:07.000000000 +0100
-@@ -430,6 +430,103 @@
+--- linux-3.7.6.orig/arch/arm/mach-imx/Kconfig
++++ linux-3.7.6/arch/arm/mach-imx/Kconfig
+@@ -430,6 +430,103 @@ config MACH_APF27
Include support for APF27 platform. This includes specific
configurations for the module and its peripherals.
@@ -1511,11 +1518,11 @@ Index: linux-3.7.1/arch/arm/mach-imx/Kconfig
endif
if ARCH_IMX_V6_V7
-Index: linux-3.7.1/arch/arm/mach-imx/Makefile
+Index: linux-3.7.6/arch/arm/mach-imx/Makefile
===================================================================
---- linux-3.7.1.orig/arch/arm/mach-imx/Makefile 2013-01-02 17:21:07.000000000 +0100
-+++ linux-3.7.1/arch/arm/mach-imx/Makefile 2013-01-02 17:21:07.000000000 +0100
-@@ -46,6 +46,9 @@
+--- linux-3.7.6.orig/arch/arm/mach-imx/Makefile
++++ linux-3.7.6/arch/arm/mach-imx/Makefile
+@@ -46,6 +46,9 @@ obj-$(CONFIG_MACH_MXT_TD60) += mach-mxt_
obj-$(CONFIG_MACH_IMX27IPCAM) += mach-imx27ipcam.o
obj-$(CONFIG_MACH_IMX27_DT) += imx27-dt.o
obj-$(CONFIG_MACH_APF27) += mach-apf27.o
diff --git a/patches/linux/3.7/0207a-armadeus-imx-allow_using_imx-pwm_without_DT.patch b/patches/linux/3.7/0207a-armadeus-imx-allow_using_imx-pwm_without_DT.patch
new file mode 100644
index 0000000..087e1b4
--- /dev/null
+++ b/patches/linux/3.7/0207a-armadeus-imx-allow_using_imx-pwm_without_DT.patch
@@ -0,0 +1,72 @@
+pwm-imx driver is only working with device tree. This patch adds support for
+platforms without device tree.
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+---
+
+Index: linux-3.7.6/arch/arm/plat-mxc/include/mach/devices-common.h
+===================================================================
+--- linux-3.7.6.orig/arch/arm/plat-mxc/include/mach/devices-common.h
++++ linux-3.7.6/arch/arm/plat-mxc/include/mach/devices-common.h
+@@ -281,6 +281,7 @@ struct platform_device *__init imx_add_p
+
+ struct imx_mxc_pwm_data {
+ int id;
++ const char *devid;
+ resource_size_t iobase;
+ resource_size_t iosize;
+ resource_size_t irq;
+Index: linux-3.7.6/drivers/pwm/pwm-imx.c
+===================================================================
+--- linux-3.7.6.orig/drivers/pwm/pwm-imx.c
++++ linux-3.7.6/drivers/pwm/pwm-imx.c
+@@ -231,6 +231,19 @@ static const struct of_device_id imx_pwm
+ };
+ MODULE_DEVICE_TABLE(of, imx_pwm_dt_ids);
+
++static struct platform_device_id imx_pwm_devtype[] = {
++ {
++ .name = "imx1-pwm",
++ .driver_data = &imx_pwm_data_v1,
++ }, {
++ .name = "imx27-pwm",
++ .driver_data = &imx_pwm_data_v2,
++ }, {
++ /* sentinel */
++ }
++};
++MODULE_DEVICE_TABLE(platform, imx_pwm_devtype);
++
+ static int __devinit imx_pwm_probe(struct platform_device *pdev)
+ {
+ const struct of_device_id *of_id =
+@@ -240,8 +253,6 @@ static int __devinit imx_pwm_probe(struc
+ struct resource *r;
+ int ret = 0;
+
+- if (!of_id)
+- return -ENODEV;
+
+ imx = devm_kzalloc(&pdev->dev, sizeof(*imx), GFP_KERNEL);
+ if (imx == NULL) {
+@@ -278,7 +289,11 @@ static int __devinit imx_pwm_probe(struc
+ if (imx->mmio_base == NULL)
+ return -EADDRNOTAVAIL;
+
+- data = of_id->data;
++ if (of_id)
++ data = of_id->data;
++ else
++ data = pdev->id_entry->driver_data;
++
+ imx->config = data->config;
+ imx->set_enable = data->set_enable;
+
+@@ -308,6 +323,7 @@ static struct platform_driver imx_pwm_dr
+ },
+ .probe = imx_pwm_probe,
+ .remove = __devexit_p(imx_pwm_remove),
++ .id_table = imx_pwm_devtype,
+ };
+
+ module_platform_driver(imx_pwm_driver);
diff --git a/patches/linux/3.7/0207b-armadeus-imx-pwm-update_platform_device.patch b/patches/linux/3.7/0207b-armadeus-imx-pwm-update_platform_device.patch
new file mode 100644
index 0000000..0acf20e
--- /dev/null
+++ b/patches/linux/3.7/0207b-armadeus-imx-pwm-update_platform_device.patch
@@ -0,0 +1,74 @@
+pwm-imx platform device must now be registered with dev-id (imx1-pwm or
+imx27-pwm) to match driver compatible list.
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+---
+
+Index: linux-3.7.6/arch/arm/plat-mxc/devices/platform-mxc_pwm.c
+===================================================================
+--- linux-3.7.6.orig/arch/arm/plat-mxc/devices/platform-mxc_pwm.c
++++ linux-3.7.6/arch/arm/plat-mxc/devices/platform-mxc_pwm.c
+@@ -9,9 +9,10 @@
+ #include <mach/hardware.h>
+ #include <mach/devices-common.h>
+
+-#define imx_mxc_pwm_data_entry_single(soc, _id, _hwid, _size) \
++#define imx_mxc_pwm_data_entry_single(soc, _devid, _id, _hwid, _size) \
+ { \
+ .id = _id, \
++ .devid = _devid, \
+ .iobase = soc ## _PWM ## _hwid ## _BASE_ADDR, \
+ .iosize = _size, \
+ .irq = soc ## _INT_PWM ## _hwid, \
+@@ -21,31 +22,31 @@
+
+ #ifdef CONFIG_SOC_IMX21
+ const struct imx_mxc_pwm_data imx21_mxc_pwm_data __initconst =
+- imx_mxc_pwm_data_entry_single(MX21, 0, , SZ_4K);
++ imx_mxc_pwm_data_entry_single(MX21, "imx1-pwm", 0, , SZ_4K);
+ #endif /* ifdef CONFIG_SOC_IMX21 */
+
+ #ifdef CONFIG_SOC_IMX25
+ const struct imx_mxc_pwm_data imx25_mxc_pwm_data[] __initconst = {
+-#define imx25_mxc_pwm_data_entry(_id, _hwid) \
+- imx_mxc_pwm_data_entry(MX25, _id, _hwid, SZ_16K)
+- imx25_mxc_pwm_data_entry(0, 1),
+- imx25_mxc_pwm_data_entry(1, 2),
+- imx25_mxc_pwm_data_entry(2, 3),
+- imx25_mxc_pwm_data_entry(3, 4),
++#define imx25_mxc_pwm_data_entry(_devid, _id, _hwid) \
++ imx_mxc_pwm_data_entry(MX25, _devid_, _id, _hwid, SZ_16K)
++ imx25_mxc_pwm_data_entry("imx27-pwm", 0, 1),
++ imx25_mxc_pwm_data_entry("imx27-pwm", 1, 2),
++ imx25_mxc_pwm_data_entry("imx27-pwm", 2, 3),
++ imx25_mxc_pwm_data_entry("imx27-pwm", 3, 4),
+ };
+ #endif /* ifdef CONFIG_SOC_IMX25 */
+
+ #ifdef CONFIG_SOC_IMX27
+ const struct imx_mxc_pwm_data imx27_mxc_pwm_data __initconst =
+- imx_mxc_pwm_data_entry_single(MX27, 0, , SZ_4K);
++ imx_mxc_pwm_data_entry_single(MX27, "imx27-pwm", 0, , SZ_4K);
+ #endif /* ifdef CONFIG_SOC_IMX27 */
+
+ #ifdef CONFIG_SOC_IMX51
+ const struct imx_mxc_pwm_data imx51_mxc_pwm_data[] __initconst = {
+-#define imx51_mxc_pwm_data_entry(_id, _hwid) \
+- imx_mxc_pwm_data_entry(MX51, _id, _hwid, SZ_16K)
+- imx51_mxc_pwm_data_entry(0, 1),
+- imx51_mxc_pwm_data_entry(1, 2),
++#define imx51_mxc_pwm_data_entry(_devid, _id, _hwid) \
++ imx_mxc_pwm_data_entry(MX51, _devid, _id, _hwid, SZ_16K)
++ imx51_mxc_pwm_data_entry("imx27-pwm", 0, 1),
++ imx51_mxc_pwm_data_entry("imx27-pwm", 1, 2),
+ };
+ #endif /* ifdef CONFIG_SOC_IMX51 */
+
+@@ -64,6 +65,6 @@ struct platform_device *__init imx_add_m
+ },
+ };
+
+- return imx_add_platform_device("mxc_pwm", data->id,
++ return imx_add_platform_device(data->devid, data->id,
+ res, ARRAY_SIZE(res), NULL, 0);
+ }
diff --git a/patches/linux/3.7/0207c-armadeus-imx27-pwm-add_macro_for_registration.patch b/patches/linux/3.7/0207c-armadeus-imx27-pwm-add_macro_for_registration.patch
new file mode 100644
index 0000000..b3633af
--- /dev/null
+++ b/patches/linux/3.7/0207c-armadeus-imx27-pwm-add_macro_for_registration.patch
@@ -0,0 +1,17 @@
+The platform function for the registration of imx27 pwm is missing.
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+---
+
+Index: linux-3.7.6/arch/arm/mach-imx/devices-imx27.h
+===================================================================
+--- linux-3.7.6.orig/arch/arm/mach-imx/devices-imx27.h
++++ linux-3.7.6/arch/arm/mach-imx/devices-imx27.h
+@@ -86,3 +86,7 @@ extern const struct imx_spi_imx_data imx
+ extern const struct imx_pata_imx_data imx27_pata_imx_data;
+ #define imx27_add_pata_imx() \
+ imx_add_pata_imx(&imx27_pata_imx_data)
++
++extern struct imx_mxc_pwm_data imx27_mxc_pwm_data;
++#define imx27_add_mxc_pwm() \
++ imx_add_mxc_pwm(&imx27_mxc_pwm_data)
diff --git a/patches/linux/3.7/0207d-armadeus-imx27-clk-rename_pwm_driver_and_add_per_clk.patch b/patches/linux/3.7/0207d-armadeus-imx27-clk-rename_pwm_driver_and_add_per_clk.patch
new file mode 100644
index 0000000..f198789
--- /dev/null
+++ b/patches/linux/3.7/0207d-armadeus-imx27-clk-rename_pwm_driver_and_add_per_clk.patch
@@ -0,0 +1,20 @@
+pwm-imx driver needs two clock: ipg and per. The first clock must be renamed
+according to the driver and the second must be added.
+
+Signed-off-by: Gwenhael Goavec-Merou <gwe...@ar...>
+---
+
+Index: linux-3.7.6/arch/arm/mach-imx/clk-imx27.c
+===================================================================
+--- linux-3.7.6.orig/arch/arm/mach-imx/clk-imx27.c
++++ linux-3.7.6/arch/arm/mach-imx/clk-imx27.c
+@@ -222,7 +222,8 @@ int __init mx27_clocks_init(unsigned lon
+ clk_register_clkdev(clk[per1_gate], "per", "imx-gpt.4");
+ clk_register_clkdev(clk[gpt6_ipg_gate], "ipg", "imx-gpt.5");
+ clk_register_clkdev(clk[per1_gate], "per", "imx-gpt.5");
+- clk_register_clkdev(clk[pwm_ipg_gate], NULL, "mxc_pwm.0");
++ clk_register_clkdev(clk[pwm_ipg_gate], "ipg", "imx27-pwm.0");
++ clk_register_clkdev(clk[per1_gate], "per", "imx27-pwm.0");
+ clk_register_clkdev(clk[per2_gate], "per", "mxc-mmc.0");
+ clk_register_clkdev(clk[sdhc1_ipg_gate], "ipg", "mxc-mmc.0");
+ clk_register_clkdev(clk[per2_gate], "per", "mxc-mmc.1");
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2013-02-09 09:08:27
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via b574fa628d6f331818bf663cd9ce2e9cc8c22bba (commit)
from 6812778d10219ee0e55096f67e1282993213cfc3 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit b574fa628d6f331818bf663cd9ce2e9cc8c22bba
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Sat Feb 9 10:07:28 2013 +0100
[LINUX][3.8] mxs: gpio-mxs: Use EDGE instead of LEVEL
-----------------------------------------------------------------------
Summary of changes:
...o-mxs-add_support_for_both_edge_interrupt.patch | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/patches/linux/3.8/0206-armadeus-mxs-gpio-mxs-add_support_for_both_edge_interrupt.patch b/patches/linux/3.8/0206-armadeus-mxs-gpio-mxs-add_support_for_both_edge_interrupt.patch
index 01a5955..6d051d3 100644
--- a/patches/linux/3.8/0206-armadeus-mxs-gpio-mxs-add_support_for_both_edge_interrupt.patch
+++ b/patches/linux/3.8/0206-armadeus-mxs-gpio-mxs-add_support_for_both_edge_interrupt.patch
@@ -34,9 +34,9 @@ Index: linux-3.8-rc5/drivers/gpio/gpio-mxs.c
+ case IRQ_TYPE_EDGE_BOTH:
+ val = gpio_get_value(port->bgc.gc.base + gpio_idx);
+ if (val)
-+ edge = GPIO_INT_LOW_LEV;
++ edge = GPIO_INT_FALL_EDGE;
+ else
-+ edge = GPIO_INT_HIGH_LEV;
++ edge = GPIO_INT_RISE_EDGE;
+ port->both_edges |= 1 << gpio_idx;
+ break;
case IRQ_TYPE_EDGE_RISING:
hooks/post-receive
--
armadeus
|
|
From: Fabien M <fa...@us...> - 2013-02-08 14:37:36
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 6812778d10219ee0e55096f67e1282993213cfc3 (commit)
via 3374f15e7136e69b2111fece7e23d75a6d8b0d0d (commit)
from 5007f0f4f5f5763a46e851b85cc6c9873c8e661b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 6812778d10219ee0e55096f67e1282993213cfc3
Merge: 3374f15 5007f0f
Author: Fabien Marteau <fab...@ar...>
Date: Fri Feb 8 15:37:22 2013 +0100
Merge branch 'master' of ssh://git.code.sf.net/p/armadeus/code
commit 3374f15e7136e69b2111fece7e23d75a6d8b0d0d
Author: Fabien Marteau <fab...@ar...>
Date: Fri Feb 8 15:37:10 2013 +0100
[software][uboot] nitpick in uboot_recover python code
-----------------------------------------------------------------------
Summary of changes:
software/uboot_recover/apf28_recover.py | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/software/uboot_recover/apf28_recover.py b/software/uboot_recover/apf28_recover.py
index 3d00c89..87f99e0 100644
--- a/software/uboot_recover/apf28_recover.py
+++ b/software/uboot_recover/apf28_recover.py
@@ -131,10 +131,11 @@ class UBoot:
if __name__ == "__main__":
+ BR_HOST_PATH = "../../buildroot/output/host"
SPEED = 115200
BINARY = "apf28-u-boot.sb"
- USB_DOWNLOAD_APP = "../../buildroot/output/host/usr/bin/gnet-imx28-usb-downloader"
- ELFTOSB_APP = "../../buildroot/output/host/usr/bin/elftosb"
+ USB_DOWNLOAD_APP = BR_HOST_PATH + "/usr/bin/gnet-imx28-usb-downloader"
+ ELFTOSB_APP = BR_HOST_PATH + "/usr/bin/elftosb"
NAND_BINARY = "apf28_nand_recover.sb"
ENV_RECOVER = "apf28_env_recover.txt"
ENV_DOWNLOAD = 0x42000000
hooks/post-receive
--
armadeus
|