From ec465d19cb4458e34f76011465e10406bdb101d6 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 26 Jan 2012 11:01:52 +0100 Subject: [PATCH] linux-ti33x-psp 3.1: fix beaglebone cape detection Signed-off-by: Koen Kooi --- ...re-complete-partnumber-not-the-first.patch | 45 +++++++++++++++++++ recipes-kernel/linux/linux-ti33x-psp_3.1.bb | 3 +- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 recipes-kernel/linux/linux-ti33x-psp-3.1/0037-beaglebone-compare-complete-partnumber-not-the-first.patch diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.1/0037-beaglebone-compare-complete-partnumber-not-the-first.patch b/recipes-kernel/linux/linux-ti33x-psp-3.1/0037-beaglebone-compare-complete-partnumber-not-the-first.patch new file mode 100644 index 0000000..4516875 --- /dev/null +++ b/recipes-kernel/linux/linux-ti33x-psp-3.1/0037-beaglebone-compare-complete-partnumber-not-the-first.patch @@ -0,0 +1,45 @@ +From c97ae962c459f33b27800309b30f5ed8ebeba2c2 Mon Sep 17 00:00:00 2001 +From: Koen Kooi +Date: Thu, 26 Jan 2012 10:57:23 +0100 +Subject: [PATCH 37/37] beaglebone: compare complete partnumber, not the first 5 chars when detecting capes + +Otherwise it will init multiple capes when only one is present: + +[ 0.456913] BeagleBone cape EEPROM: found eeprom at address 0x56 +[ 0.456932] BeagleBone cape: Beagleboardtoys BeagleBone DVI-D CAPE +[ 0.456948] BeagleBone cape partnumber: BB-BONE-DVID-01 +[ 0.456961] BeagleBone cape: initializing DVI cape +[ 0.492772] BeagleBone cape: initializing LCD cape +[ 0.502925] [] (am33xx_register_lcdc+0xd/0x24) from [] (beaglebone_cape_setup+0x109/0x1dc) +[ 0.502965] [] (beaglebone_cape_setup+0x109/0x1dc) from [] (at24_probe+0x2b3/0x34c) +[ 0.503683] [] (am33xx_register_lcdc+0xd/0x24) from [] (beaglebone_cape_setup+0x109/0x1dc) +[ 0.503715] [] (beaglebone_cape_setup+0x109/0x1dc) from [] (at24_probe+0x2b3/0x34c) +[ 0.509362] Failed to register Beagleboardtoys 7" LCD cape device +[ 0.509390] BeagleBone cape: initializing LCD cape touchscreen + +Signed-off-by: Koen Kooi +--- + arch/arm/mach-omap2/board-am335xevm.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c +index 6a0ace9..5c48d59 100644 +--- a/arch/arm/mach-omap2/board-am335xevm.c ++++ b/arch/arm/mach-omap2/board-am335xevm.c +@@ -1352,11 +1352,11 @@ static void beaglebone_cape_setup(struct memory_accessor *mem_acc, void *context + snprintf(tmp, sizeof(cape_config.partnumber) + 1, "%s", cape_config.partnumber); + pr_info("BeagleBone cape partnumber: %s\n", tmp); + +- if (!strncmp("BB-BONE-DVID-01", cape_config.partnumber, 5)) { ++ if (!strncmp("BB-BONE-DVID-01", cape_config.partnumber, 15)) { + pr_info("BeagleBone cape: initializing DVI cape\n"); + dvi_init(0,0); + } +- if (!strncmp("BB-BONE-LCD7-01", cape_config.partnumber, 5)) { ++ if (!strncmp("BB-BONE-LCD7-01", cape_config.partnumber, 15)) { + pr_info("BeagleBone cape: initializing LCD cape\n"); + bbtoys7lcd_init(0,0); + pr_info("BeagleBone cape: initializing LCD cape touchscreen\n"); +-- +1.7.2.5 + diff --git a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb index 150a282..84e5c3b 100644 --- a/recipes-kernel/linux/linux-ti33x-psp_3.1.bb +++ b/recipes-kernel/linux/linux-ti33x-psp_3.1.bb @@ -11,7 +11,7 @@ MULTI_CONFIG_BASE_SUFFIX = "" BRANCH = "v3.1-meta-ti-r1r+gitr1d84d8853fa30cf3db2571a5aec572accca4e29d" SRCREV = "1d84d8853fa30cf3db2571a5aec572accca4e29d" -MACHINE_KERNEL_PR_append = "j+gitr${SRCREV}" +MACHINE_KERNEL_PR_append = "k+gitr${SRCREV}" COMPATIBLE_MACHINE = "(ti33x)" @@ -61,6 +61,7 @@ PATCHES_OVER_PSP = " \ file://0034-beaglebone-really-enable-i2c2-pullups-fixes-timeouts.patch \ file://0035-beaglebone-add-structs-for-DVI-cape-LEDs.patch\ file://0036-beaglebone-update-LCD-cape-partnumber.patch \ + file://0037-beaglebone-compare-complete-partnumber-not-the-first.patch \ " SRC_URI += "${@base_contains('DISTRO_FEATURES', 'tipspkernel', "", "${PATCHES_OVER_PSP}", d)}" -- 2.39.2