u-boot: add SPI, EEPROM and DTT support for mpc8313e-rdb
authorJeremy Laine <jeremy.laine@m4x.org>
Wed, 17 Sep 2008 13:15:56 +0000 (13:15 +0000)
committerJeremy Laine <jeremy.laine@m4x.org>
Wed, 17 Sep 2008 13:15:56 +0000 (13:15 +0000)
packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-eeprom.patch [new file with mode: 0644]
packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-lm75.patch [new file with mode: 0644]
packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-spi.patch [new file with mode: 0644]
packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-watchdog.patch [new file with mode: 0644]
packages/u-boot/u-boot_1.3.2.bb

diff --git a/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-eeprom.patch b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-eeprom.patch
new file mode 100644 (file)
index 0000000..bdc69d9
--- /dev/null
@@ -0,0 +1,21 @@
+Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h
+===================================================================
+--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h    2008-09-12 18:52:50.000000000 +0200
++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2008-09-12 18:52:58.000000000 +0200
+@@ -263,6 +263,16 @@
+ #define CFG_I2C_OFFSET                0x3000
+ #define CFG_I2C2_OFFSET               0x3100
++/*
++ * EEPROM configuration
++ */
++#define CONFIG_CMD_EEPROM
++#define CFG_I2C_EEPROM_ADDR_LEN               2       /* 16-bit EEPROM address */
++#define CFG_I2C_EEPROM_ADDR           0x50    /* Atmel: AT24C256*/
++#define CFG_EEPROM_PAGE_WRITE_DELAY_MS        10      /* 10ms of delay */
++#define CFG_EEPROM_PAGE_WRITE_BITS    6       /* 64-Byte Page Write Mode */
++#define CFG_EEPROM_PAGE_WRITE_ENABLE
++
+ /* TSEC */
+ #define CFG_TSEC1_OFFSET      0x24000
+ #define CFG_TSEC1             (CFG_IMMR+CFG_TSEC1_OFFSET)
diff --git a/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-lm75.patch b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-lm75.patch
new file mode 100644 (file)
index 0000000..d9331dd
--- /dev/null
@@ -0,0 +1,23 @@
+Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h
+===================================================================
+--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h    2008-09-12 18:52:58.000000000 +0200
++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2008-09-12 18:53:10.000000000 +0200
+@@ -370,6 +370,7 @@
+ #define CONFIG_CMD_PCI
+ #define CONFIG_CMD_NAND
+ #define CONFIG_CMD_SPI
++#define CONFIG_CMD_DTT
+ #if defined(CFG_RAMBOOT)
+     #undef CONFIG_CMD_ENV
+@@ -392,6 +393,10 @@
+ #define MTDPARTS_DEFAULT      "mtdparts=physmap-flash.0:384k(uboot),64k(env)"
++/* Digital Thermometer and Thermostat */
++#define CONFIG_DTT_LM75               1
++#define CONFIG_DTT_SENSORS    { 0x48 }
++
+ /*
+  * Miscellaneous configurable options
+  */
diff --git a/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-spi.patch b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-spi.patch
new file mode 100644 (file)
index 0000000..039996c
--- /dev/null
@@ -0,0 +1,70 @@
+Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c
+===================================================================
+--- u-boot-1.3.2.orig/board/freescale/mpc8313erdb/mpc8313erdb.c        2008-09-12 18:48:23.000000000 +0200
++++ u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c     2008-09-12 18:50:10.000000000 +0200
+@@ -28,6 +28,7 @@
+ #endif
+ #include <pci.h>
+ #include <mpc83xx.h>
++#include <spi.h> 
+ DECLARE_GLOBAL_DATA_PTR;
+@@ -107,3 +108,33 @@
+ #endif
+ }
+ #endif
++
++
++/*
++ * The following are used to control the SPI chip selects for the SPI command.
++ */
++#ifdef CONFIG_HARD_SPI
++
++#define SPI_CS_MASK   0x80000000
++
++void spi_eeprom_chipsel(int cs)
++{
++      volatile gpio83xx_t *iopd = &((immap_t *)CFG_IMMR)->gpio[0];
++
++      if (cs)
++              iopd->dat &= ~SPI_CS_MASK;
++      else
++              iopd->dat |=  SPI_CS_MASK;
++}
++
++/*
++ * The SPI command uses this table of functions for controlling the SPI
++ * chip selects.
++ */
++spi_chipsel_type spi_chipsel[] = {
++      spi_eeprom_chipsel,
++};
++int spi_chipsel_cnt = sizeof(spi_chipsel) / sizeof(spi_chipsel[0]);
++
++#endif /* CONFIG_HARD_SPI */
++
+Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h
+===================================================================
+--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h    2008-09-12 18:50:09.000000000 +0200
++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2008-09-12 18:50:50.000000000 +0200
+@@ -359,6 +359,7 @@
+ #define CONFIG_CMD_DATE
+ #define CONFIG_CMD_PCI
+ #define CONFIG_CMD_NAND
++#define CONFIG_CMD_SPI
+ #if defined(CFG_RAMBOOT)
+     #undef CONFIG_CMD_ENV
+@@ -367,6 +368,11 @@
+ #define CONFIG_CMDLINE_EDITING 1
++/* SPI */
++#define CONFIG_MPC8XXX_SPI
++#define CONFIG_HARD_SPI                       /* SPI with hardware support */
++#undef CONFIG_SOFT_SPI                        /* SPI bit-banged */
++
+ /*
+  * JFFS2 partitions (mtdparts command line support)
+  */
diff --git a/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-watchdog.patch b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-watchdog.patch
new file mode 100644 (file)
index 0000000..db92fea
--- /dev/null
@@ -0,0 +1,15 @@
+Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h
+===================================================================
+--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h    2008-09-12 18:47:22.000000000 +0200
++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2008-09-12 18:48:11.000000000 +0200
+@@ -460,6 +460,10 @@
+       HRCWH_BIG_ENDIAN |\
+       HRCWH_LALE_NORMAL)
++/* Watchdog */
++#define CONFIG_WATCHDOG
++#define CFG_WATCHDOG_VALUE 0xFFFF
++
+ /* System IO Config */
+ #define CFG_SICRH     (SICRH_TSOBI1 | SICRH_TSOBI2)   /* RGMII */
+ #define CFG_SICRL     SICRL_USBDR                     /* Enable Internal USB Phy  */
index 8e806ef..d610526 100644 (file)
@@ -2,7 +2,7 @@ require u-boot.inc
 
 DEFAULT_PREFERENCE = "-1"
 
-PR = "r2"
+PR = "r3"
 
 SRC_URI = "ftp://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2"
 
@@ -10,6 +10,9 @@ SRC_URI_append_mpc8313e-rdb = "\
            file://mpc8313e-rdb-autoboot.patch;patch=1 \
            file://mpc8313e-rdb-mtdparts.patch;patch=1 \
            file://mpc8313e-rdb-nand.patch;patch=1 \
+           file://mpc8313e-rdb-spi.patch;patch=1 \
+           file://mpc8313e-rdb-eeprom.patch;patch=1 \
+           file://mpc8313e-rdb-lm75.patch;patch=1 \
            file://u-boot-fsl-1.3.0-mpc8313erdb-vsc7385-support.patch;patch=1 \
            file://u-boot-fsl-1.3.0-mpc8313erdb-fix-vitesse-7385-firmware.patch;patch=1 \
            file://u-boot-fsl-1.3.0-mpc8313erdb-performance-tuning-for-TSEC.patch;patch=1 \