[oe-commits] : u-boot: add SPI, EEPROM and DTT support for mpc8313e-rdb

OE GIT Trial gittrial at amethyst.openembedded.net
Wed Sep 17 13:48:00 UTC 2008


Module: OE.dev
Branch: master
Commit: e3e3016bd2dc74d5021401617e65ea19a2dc0b12
URL:    http://gitweb.openembedded.net//OE.dev.git/?a=commit;h=e3e3016bd2dc74d5021401617e65ea19a2dc0b12

Author:  <jeremy_laine at openembedded.org>
Date:   Wed Sep 17 13:15:56 2008 +0000

u-boot: add SPI, EEPROM and DTT support for mpc8313e-rdb

---

 .../u-boot/u-boot-1.3.2/mpc8313e-rdb-eeprom.patch  |   21 ++++++
 .../u-boot/u-boot-1.3.2/mpc8313e-rdb-lm75.patch    |   23 +++++++
 .../u-boot/u-boot-1.3.2/mpc8313e-rdb-spi.patch     |   70 ++++++++++++++++++++
 .../u-boot-1.3.2/mpc8313e-rdb-watchdog.patch       |   15 ++++
 packages/u-boot/u-boot_1.3.2.bb                    |    5 +-
 5 files changed, 133 insertions(+), 1 deletions(-)

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
index 0000000..bdc69d9
--- /dev/null
+++ b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-eeprom.patch
@@ -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
index 0000000..d9331dd
--- /dev/null
+++ b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-lm75.patch
@@ -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
index 0000000..039996c
--- /dev/null
+++ b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-spi.patch
@@ -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
index 0000000..db92fea
--- /dev/null
+++ b/packages/u-boot/u-boot-1.3.2/mpc8313e-rdb-watchdog.patch
@@ -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  */
diff --git a/packages/u-boot/u-boot_1.3.2.bb b/packages/u-boot/u-boot_1.3.2.bb
index 8e806ef..d610526 100644
--- a/packages/u-boot/u-boot_1.3.2.bb
+++ b/packages/u-boot/u-boot_1.3.2.bb
@@ -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 \





More information about the Openembedded-commits mailing list