linux-ti33x-psp 3.1: fix beaglebone cape detection
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.1 / 0037-beaglebone-compare-complete-partnumber-not-the-first.patch
1 From c97ae962c459f33b27800309b30f5ed8ebeba2c2 Mon Sep 17 00:00:00 2001
2 From: Koen Kooi <koen@dominion.thruhere.net>
3 Date: Thu, 26 Jan 2012 10:57:23 +0100
4 Subject: [PATCH 37/37] beaglebone: compare complete partnumber, not the first 5 chars when detecting capes
6 Otherwise it will init multiple capes when only one is present:
8 [    0.456913] BeagleBone cape EEPROM: found eeprom at address 0x56
9 [    0.456932] BeagleBone cape: Beagleboardtoys BeagleBone DVI-D CAPE
10 [    0.456948] BeagleBone cape partnumber: BB-BONE-DVID-01
11 [    0.456961] BeagleBone cape: initializing DVI cape
12 [    0.492772] BeagleBone cape: initializing LCD cape
13 [    0.502925] [<c0406e89>] (am33xx_register_lcdc+0xd/0x24) from [<c001c505>] (beaglebone_cape_setup+0x109/0x1dc)
14 [    0.502965] [<c001c505>] (beaglebone_cape_setup+0x109/0x1dc) from [<c0168b3b>] (at24_probe+0x2b3/0x34c)
15 [    0.503683] [<c0406e89>] (am33xx_register_lcdc+0xd/0x24) from [<c001c505>] (beaglebone_cape_setup+0x109/0x1dc)
16 [    0.503715] [<c001c505>] (beaglebone_cape_setup+0x109/0x1dc) from [<c0168b3b>] (at24_probe+0x2b3/0x34c)
17 [    0.509362] Failed to register Beagleboardtoys 7" LCD cape device
18 [    0.509390] BeagleBone cape: initializing LCD cape touchscreen
20 Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
21 ---
22  arch/arm/mach-omap2/board-am335xevm.c |    4 ++--
23  1 files changed, 2 insertions(+), 2 deletions(-)
25 diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
26 index 6a0ace9..5c48d59 100644
27 --- a/arch/arm/mach-omap2/board-am335xevm.c
28 +++ b/arch/arm/mach-omap2/board-am335xevm.c
29 @@ -1352,11 +1352,11 @@ static void beaglebone_cape_setup(struct memory_accessor *mem_acc, void *context
30         snprintf(tmp, sizeof(cape_config.partnumber) + 1, "%s", cape_config.partnumber);
31         pr_info("BeagleBone cape partnumber: %s\n", tmp);   
32  
33 -       if (!strncmp("BB-BONE-DVID-01", cape_config.partnumber, 5)) {
34 +       if (!strncmp("BB-BONE-DVID-01", cape_config.partnumber, 15)) {
35                         pr_info("BeagleBone cape: initializing DVI cape\n");
36                         dvi_init(0,0);
37         }
38 -       if (!strncmp("BB-BONE-LCD7-01", cape_config.partnumber, 5)) {
39 +       if (!strncmp("BB-BONE-LCD7-01", cape_config.partnumber, 15)) {
40                 pr_info("BeagleBone cape: initializing LCD cape\n");
41                 bbtoys7lcd_init(0,0);
42                 pr_info("BeagleBone cape: initializing LCD cape touchscreen\n");
43 -- 
44 1.7.2.5