From 0a45217d024d21322f6118a1f817c5fe1e425c09 Mon Sep 17 00:00:00 2001
From: Robert Nelson <robertcnelson@gmail.com>
Date: Sun, 9 Jun 2013 00:04:20 -0500
Subject: [PATCH] forgot patch

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
---
 .../0011-panda-spidev-setup-pinmux.patch      | 50 +++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 patches/omap_panda/0011-panda-spidev-setup-pinmux.patch

diff --git a/patches/omap_panda/0011-panda-spidev-setup-pinmux.patch b/patches/omap_panda/0011-panda-spidev-setup-pinmux.patch
new file mode 100644
index 000000000..da9fcdad3
--- /dev/null
+++ b/patches/omap_panda/0011-panda-spidev-setup-pinmux.patch
@@ -0,0 +1,50 @@
+From 9f5066a898b77f2fe2b1f0946bb6afebe3d08f6d Mon Sep 17 00:00:00 2001
+From: Yann <yann.wanwanscappel@free.fr>
+Date: Sat, 8 Jun 2013 13:06:37 -0500
+Subject: [PATCH 7/7] panda: spidev: setup pinmux
+
+It works fine on my board, I've been able to perform data transfers using the spidev_test program provided in kernel documentation
+(shortcut between SIMO and SOMI to perform an hardware loopback). I also checked that CS0 and CS1 and CLK are properly driven using my scope.
+
+The clock is strangely configured as input, but it is also the case for omap3 beagle board, so I guess this is fine.
+
+Signed-off-by: Yann <yann.wanwanscappel@free.fr>
+Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
+---
+ arch/arm/mach-omap2/board-omap4panda.c |   13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
+index 3563f86..10bb576 100644
+--- a/arch/arm/mach-omap2/board-omap4panda.c
++++ b/arch/arm/mach-omap2/board-omap4panda.c
+@@ -103,6 +103,16 @@ static struct platform_device leds_gpio = {
+ 	},
+ };
+ 
++static void __init omap4_panda_config_mcspi1_mux(void)
++{
++	/* NOTE: Clock pins need to be in input mode */
++	omap_mux_init_signal("mcspi1_clk", OMAP_PIN_INPUT);
++	omap_mux_init_signal("mcspi1_simo", OMAP_PIN_OUTPUT);
++	omap_mux_init_signal("mcspi1_somi", OMAP_PIN_INPUT_PULLUP);
++	omap_mux_init_signal("mcspi1_cs0", OMAP_PIN_OUTPUT);
++	omap_mux_init_signal("mcspi1_cs1", OMAP_PIN_OUTPUT);
++}
++
+ static struct spi_board_info panda_mcspi_board_info[] = {
+ 	/* spi 1.0 */
+ 	{
+@@ -472,7 +482,8 @@ static void __init omap4_panda_init(void)
+ 	omap4_ehci_init();
+ 	if (!strcmp(expboard_name, "spidev")) {
+ 	#if IS_ENABLED(CONFIG_SPI_SPIDEV)
+-		pr_info("Panda expansionboard: spidev: enabling spi3/spi4\n");
++		pr_info("Panda expansionboard: spidev: enabling spi1.0 and spi1.1\n");
++		omap4_panda_config_mcspi1_mux();
+ 		spi_register_board_info(panda_mcspi_board_info, ARRAY_SIZE(panda_mcspi_board_info));
+ 	#endif
+ 	}
+-- 
+1.7.10.4
+
-- 
GitLab