From ddc9a5ae0cd3592b32f59b9b9f1460f8ea6b520c Mon Sep 17 00:00:00 2001 From: Mike Fiore Date: Fri, 7 Feb 2014 11:58:45 -0600 Subject: build mts-id-eeprom and mts-io versions that support MTDC-GPIOB --- .../mtocgd3/linux-2.6.39.4-mach-at91-mtocgd3.patch | 78 +++++++++++++++------- multitech/recipes/multitech/mts-id-eeprom_0.1.0.bb | 4 ++ multitech/recipes/multitech/mts-io_0.7.2.bb | 12 +++- 3 files changed, 69 insertions(+), 25 deletions(-) diff --git a/multitech/recipes/linux/linux-2.6.39-at91/mtocgd3/linux-2.6.39.4-mach-at91-mtocgd3.patch b/multitech/recipes/linux/linux-2.6.39-at91/mtocgd3/linux-2.6.39.4-mach-at91-mtocgd3.patch index 4e35e85..dbc292f 100644 --- a/multitech/recipes/linux/linux-2.6.39-at91/mtocgd3/linux-2.6.39.4-mach-at91-mtocgd3.patch +++ b/multitech/recipes/linux/linux-2.6.39-at91/mtocgd3/linux-2.6.39.4-mach-at91-mtocgd3.patch @@ -1,7 +1,7 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c =================================================================== ---- git.orig/arch/arm/mach-at91/board-sam9x5cm.c 2013-04-17 17:15:13.000000000 -0500 -+++ git/arch/arm/mach-at91/board-sam9x5cm.c 2013-11-05 17:25:46.511692620 -0600 +--- git.orig/arch/arm/mach-at91/board-sam9x5cm.c 2013-12-27 14:27:13.000000000 -0600 ++++ git/arch/arm/mach-at91/board-sam9x5cm.c 2014-02-06 16:31:32.817405456 -0600 @@ -18,6 +18,9 @@ #include #include @@ -26,18 +26,18 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .chip_select = 1, + .bus_num = 1, + }, -+ { /* SPI1_NCS3 to daughter card */ -+ .modalias = "spidev", ++ { /* SPI1_NCS3 to daughter card analog inputs */ ++ .modalias = "mts-io-dc-adc", + .chip_select = 2, + .bus_num = 1, + }, -+ { /* SPI1_NCS4 to daughter card */ -+ .modalias = "spidev", ++ { /* SPI1_NCS4 to daughter card digital inputs */ ++ .modalias = "mts-io-dc-din", + .chip_select = 3, + .bus_num = 1, + }, -+ { /* SPI1_NCS5 to daughter card */ -+ .modalias = "spidev", ++ { /* SPI1_NCS5 to daughter card digital outputs */ ++ .modalias = "mts-io-dc-dout", + .chip_select = 4, + .bus_num = 1, + }, @@ -68,10 +68,8 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .name = "UBoot Config", + .offset = 768*1024, + .size = 640*1024, - }, - { -- .name = "Partition 2", -- .offset = MTDPART_OFS_NXTBLK, ++ }, ++ { + .name = "UBoot Redundant Config", + .offset = 1408*1024, + .size = 640*1024, @@ -90,8 +88,10 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .name = "Oem Config", + .offset = 16*1024*1024, + .size = 8*1024*1024, -+ }, -+ { + }, + { +- .name = "Partition 2", +- .offset = MTDPART_OFS_NXTBLK, + .name = "Rootfs", + .offset = 24*1024*1024, .size = MTDPART_SIZ_FULL, @@ -129,7 +129,7 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c /* configure chip-select 3 (NAND) */ sam9_smc_configure(3, &cm_nand_smc_config); -@@ -189,17 +260,62 @@ +@@ -189,17 +260,90 @@ * LEDs */ static struct gpio_led cm_leds[] = { @@ -156,7 +156,7 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .name = "led-c", + .gpio = AT91_PIN_PA25, + .active_low = 1 - }, ++ }, + { + .name = "led-d", + .gpio = AT91_PIN_PA26, @@ -166,7 +166,7 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .name = "led-e", + .gpio = AT91_PIN_PA27, + .active_low = 1 -+ }, + }, + { + .name = "led-f", + .gpio = AT91_PIN_PA28, @@ -176,9 +176,14 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + + +uint8_t mts_id_eeprom[512]; ++uint8_t mts_dc_eeprom[512]; + +EXPORT_SYMBOL(mts_id_eeprom); ++EXPORT_SYMBOL(mts_dc_eeprom); + ++/* ++ * On-board EEPROM ++ */ +static void mts_id_eeprom_load(struct memory_accessor *macc, void *context) +{ + int tmp; @@ -197,20 +202,47 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c + .byte_len = SZ_4K / 8, + .page_size = 16, + .setup = mts_id_eeprom_load, ++}; ++ ++/* ++ * Daughter card EEPROM ++ */ ++static void mts_dc_eeprom_load(struct memory_accessor *macc, void *context) ++{ ++ int tmp; ++ ++ memset(mts_dc_eeprom, 0, sizeof(mts_id_eeprom)); ++ ++ tmp = macc->read(macc, mts_dc_eeprom, 0, sizeof(mts_dc_eeprom)); ++ if (tmp != sizeof(mts_dc_eeprom)) { ++ printk(KERN_INFO "sam9x5: dc eeprom read failed: %d\n", tmp); ++ } else { ++ printk(KERN_INFO "sam9x5: read %d bytes from dc eeprom\n", tmp); ++ } ++} ++ ++static struct at24_platform_data dc_data = { ++ .byte_len = SZ_4K / 8, ++ .page_size = 16, ++ .setup = mts_dc_eeprom_load, }; /* -@@ -207,7 +323,8 @@ +@@ -207,7 +351,12 @@ */ static struct i2c_board_info __initdata cm_i2c_devices[] = { { - I2C_BOARD_INFO("24c512", 0x50) + I2C_BOARD_INFO("24c04", 0x56), + .platform_data = &at24c04_data, ++ }, ++ { ++ I2C_BOARD_INFO("24c04", 0x50), ++ .platform_data = &dc_data, }, }; -@@ -234,8 +351,12 @@ +@@ -234,8 +383,12 @@ /* LEDs */ at91_gpio_leds(cm_leds, ARRAY_SIZE(cm_leds)); @@ -225,8 +257,8 @@ Index: git/arch/arm/mach-at91/board-sam9x5cm.c } Index: git/arch/arm/mach-at91/board-sam9x5ek.c =================================================================== ---- git.orig/arch/arm/mach-at91/board-sam9x5ek.c 2013-04-17 17:15:13.000000000 -0500 -+++ git/arch/arm/mach-at91/board-sam9x5ek.c 2013-11-01 12:16:09.080917828 -0500 +--- git.orig/arch/arm/mach-at91/board-sam9x5ek.c 2013-12-27 14:27:13.000000000 -0600 ++++ git/arch/arm/mach-at91/board-sam9x5ek.c 2014-02-06 15:18:45.409321681 -0600 @@ -23,6 +23,7 @@ #include #include @@ -414,8 +446,8 @@ Index: git/arch/arm/mach-at91/board-sam9x5ek.c MACHINE_START(AT91SAM9X5EK, "Atmel AT91SAM9X5-EK") Index: git/arch/arm/mach-at91/at91sam9x5_devices.c =================================================================== ---- git.orig/arch/arm/mach-at91/at91sam9x5_devices.c 2013-04-17 17:15:13.000000000 -0500 -+++ git/arch/arm/mach-at91/at91sam9x5_devices.c 2013-11-01 12:16:09.080917828 -0500 +--- git.orig/arch/arm/mach-at91/at91sam9x5_devices.c 2013-12-27 14:27:13.000000000 -0600 ++++ git/arch/arm/mach-at91/at91sam9x5_devices.c 2014-02-06 15:18:45.409321681 -0600 @@ -543,11 +543,11 @@ #endif diff --git a/multitech/recipes/multitech/mts-id-eeprom_0.1.0.bb b/multitech/recipes/multitech/mts-id-eeprom_0.1.0.bb index ccf3521..bbdd250 100644 --- a/multitech/recipes/multitech/mts-id-eeprom_0.1.0.bb +++ b/multitech/recipes/multitech/mts-id-eeprom_0.1.0.bb @@ -1,3 +1,7 @@ require mts-id-eeprom.inc PR = "${INC_PR}.0" + +TAG = "e92217e366678be4d556646038963c24bf51982f" + +SRC_URI = "git://sw.multitech.prv/usr/local/git/mwf/mts-id-eeprom.git;protocol=ssh;branch=daughter-cards;tag=${TAG}" diff --git a/multitech/recipes/multitech/mts-io_0.7.2.bb b/multitech/recipes/multitech/mts-io_0.7.2.bb index 5cb53f6..2d3faab 100644 --- a/multitech/recipes/multitech/mts-io_0.7.2.bb +++ b/multitech/recipes/multitech/mts-io_0.7.2.bb @@ -1,11 +1,19 @@ require mts-io.inc -TAG="v${PV}" +#TAG="v${PV}" + +#SRC_URI = " \ +# file://mts-io.init \ +# file://radio-reset-h5 \ +# git://git.multitech.net/cdp-io-controller.git;protocol=git;branch=master;tag=${TAG} \ +#" + +TAG="86fc87d06bb1c8c1d0dc8c5d846189df70c18395" SRC_URI = " \ file://mts-io.init \ file://radio-reset-h5 \ - git://git.multitech.net/cdp-io-controller.git;protocol=git;branch=master;tag=${TAG} \ + git://sw.multitech.prv/usr/local/git/jjg/cdp-io-controller.git;protocol=ssh;branch=daughter-cards;tag=${TAG} \ " SRC_URI_append_mt100eocg-pcie-dk = "file://mts-io-0.6.2-pcieh5.patch" -- cgit v1.2.3