diff options
Diffstat (limited to 'packages/u-boot/u-boot-1.3.2')
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/001-090205-SPI.patch (renamed from packages/u-boot/u-boot-1.3.2/boc01/001-090115-SPI.patch) | 30 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/010-081212-LCD.patch | 24 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/013-081211-FIX_OOB_8BITS_LARGEPAGE_NAND.patch | 17 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/013-090206-FIX_OOB_8BITS_LARGEPAGE_NAND.patch | 29 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/014-081211-BOOT_RESCUE.patch | 14 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/015-090205-EMC.patch | 31 | ||||
-rw-r--r-- | packages/u-boot/u-boot-1.3.2/boc01/016-090209-PM.patch | 56 |
7 files changed, 153 insertions, 48 deletions
diff --git a/packages/u-boot/u-boot-1.3.2/boc01/001-090115-SPI.patch b/packages/u-boot/u-boot-1.3.2/boc01/001-090205-SPI.patch index 96b624b3a1..6c0ed5c36a 100644 --- a/packages/u-boot/u-boot-1.3.2/boc01/001-090115-SPI.patch +++ b/packages/u-boot/u-boot-1.3.2/boc01/001-090205-SPI.patch @@ -1,7 +1,7 @@ Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c =================================================================== ---- u-boot-1.3.2.orig/board/freescale/mpc8313erdb/mpc8313erdb.c 2009-01-15 10:51:45.000000000 +0100 -+++ u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c 2009-01-15 12:18:31.000000000 +0100 +--- u-boot-1.3.2.orig/board/freescale/mpc8313erdb/mpc8313erdb.c ++++ u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c @@ -28,6 +28,7 @@ #endif #include <pci.h> @@ -10,7 +10,7 @@ Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c DECLARE_GLOBAL_DATA_PTR; -@@ -107,3 +108,29 @@ +@@ -107,3 +108,33 @@ void ft_board_setup(void *blob, bd_t *bd #endif } #endif @@ -21,12 +21,16 @@ Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c + */ +#ifdef CONFIG_HARD_SPI + -+void spi_rfid_chipsel(int cs) ++#define SPI_CS_MASK 0x80000000 ++ ++void spi_eeprom_chipsel(int cs) +{ -+ if(cs) -+ gpio_clear(14); ++ volatile gpio83xx_t *iopd = &((immap_t *)CFG_IMMR)->gpio[0]; ++ ++ if (cs) ++ iopd->dat &= ~SPI_CS_MASK; + else -+ gpio_set(14); ++ iopd->dat |= SPI_CS_MASK; +} + +/* @@ -34,7 +38,7 @@ Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c + * chip selects. + */ +spi_chipsel_type spi_chipsel[] = { -+ spi_rfid_chipsel, ++ spi_eeprom_chipsel, +}; +int spi_chipsel_cnt = sizeof(spi_chipsel) / sizeof(spi_chipsel[0]); + @@ -42,8 +46,8 @@ Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c + Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h =================================================================== ---- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h 2009-01-15 10:51:51.000000000 +0100 -+++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2009-01-15 12:16:57.000000000 +0100 +--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h ++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h @@ -369,6 +369,7 @@ #define CONFIG_CMD_PCI #define CONFIG_CMD_NAND @@ -66,8 +70,8 @@ Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h */ Index: u-boot-1.3.2/drivers/spi/mpc8xxx_spi.c =================================================================== ---- u-boot-1.3.2.orig/drivers/spi/mpc8xxx_spi.c 2009-01-15 10:52:30.000000000 +0100 -+++ u-boot-1.3.2/drivers/spi/mpc8xxx_spi.c 2009-01-15 10:53:23.000000000 +0100 +--- u-boot-1.3.2.orig/drivers/spi/mpc8xxx_spi.c ++++ u-boot-1.3.2/drivers/spi/mpc8xxx_spi.c @@ -34,6 +34,8 @@ #define SPI_MODE_REV (0x80000000 >> 5) /* Reverse mode - MSB first */ #define SPI_MODE_MS (0x80000000 >> 6) /* Always master */ @@ -77,7 +81,7 @@ Index: u-boot-1.3.2/drivers/spi/mpc8xxx_spi.c #define SPI_TIMEOUT 1000 -@@ -45,9 +47,7 @@ +@@ -45,9 +47,7 @@ void spi_init(void) * SPI pins on the MPC83xx are not muxed, so all we do is initialize * some registers */ diff --git a/packages/u-boot/u-boot-1.3.2/boc01/010-081212-LCD.patch b/packages/u-boot/u-boot-1.3.2/boc01/010-081212-LCD.patch index 07c7b3840a..33a0c761f9 100644 --- a/packages/u-boot/u-boot-1.3.2/boc01/010-081212-LCD.patch +++ b/packages/u-boot/u-boot-1.3.2/boc01/010-081212-LCD.patch @@ -181,7 +181,7 @@ Index: u-boot-1.3.2/common/cmd_lcd.c =================================================================== --- /dev/null +++ u-boot-1.3.2/common/cmd_lcd.c -@@ -0,0 +1,243 @@ +@@ -0,0 +1,237 @@ +/* + * (C) Copyright 2008 + * Alexandre Coffignal, CĂ©noSYS, alexandre.coffignal@cenosys.com @@ -216,13 +216,6 @@ Index: u-boot-1.3.2/common/cmd_lcd.c +#define DELAY 1 +#define AEL 0x0F + -+static void NT7506_init_lcd(char ael); -+static void NT7506_print_splash(char * Picture,char width,char height); -+static void NT7506_set_xaddr(unsigned char x); -+static void NT7506_set_yaddr(unsigned char y); -+static void NT7506_writeb_data(unsigned char value); -+static void NT7506_writeb_ctl(unsigned char value); -+static void iowrite16(unsigned short value); + +static void iowrite16(unsigned short value) +{ @@ -269,7 +262,7 @@ Index: u-boot-1.3.2/common/cmd_lcd.c + NT7506_writeb_ctl(NT_COL_LSB | (x & 0x0F) ); //Send low nibble +} + -+static void ImageRota(char * src,char * dest, int w ,int h) ++static void ImageRota(unsigned char *src, unsigned char *dest, int w ,int h) +{ + int i,j,bit,IndexRead; + char mask=0; @@ -290,14 +283,13 @@ Index: u-boot-1.3.2/common/cmd_lcd.c +} + + -+static void NT7506_print_splash(char * picture,char width,char height) ++static void NT7506_print_splash(unsigned char *picture, char width, char height) +{ + int i; -+ char value; -+ char imagerota[2048]; ++ unsigned char imagerota[2048]; + int indeximage=0; + -+ int x,y,xfb,yfb,Index; ++ int x,y,xfb,yfb; + char src[2048]; + if(width>128) + width=128; @@ -379,7 +371,7 @@ Index: u-boot-1.3.2/common/cmd_lcd.c + + +/**************************************************/ -+void do_lcd(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) ++int do_lcd(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) +{ + char lcd_ael=AEL; + if(argc>1) @@ -390,6 +382,8 @@ Index: u-boot-1.3.2/common/cmd_lcd.c + + NT7506_init_lcd(lcd_ael); + NT7506_print_splash(Bollore_bits,Bollore_width,Bollore_height); ++ ++ return 0; +} + +U_BOOT_CMD( @@ -398,7 +392,7 @@ Index: u-boot-1.3.2/common/cmd_lcd.c + "lcd\n" +); + -+void do_backlight(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) ++int do_backlight(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) +{ + if (!strncmp(argv[1], "on", 7)) + { diff --git a/packages/u-boot/u-boot-1.3.2/boc01/013-081211-FIX_OOB_8BITS_LARGEPAGE_NAND.patch b/packages/u-boot/u-boot-1.3.2/boc01/013-081211-FIX_OOB_8BITS_LARGEPAGE_NAND.patch deleted file mode 100644 index 911dd2907e..0000000000 --- a/packages/u-boot/u-boot-1.3.2/boc01/013-081211-FIX_OOB_8BITS_LARGEPAGE_NAND.patch +++ /dev/null @@ -1,17 +0,0 @@ -Index: u-boot-1.3.2/drivers/mtd/nand/nand_bbt.c -=================================================================== ---- u-boot-1.3.2.orig/drivers/mtd/nand/nand_bbt.c 2008-12-11 10:15:52.000000000 +0100 -+++ u-boot-1.3.2/drivers/mtd/nand/nand_bbt.c 2008-12-11 10:16:39.000000000 +0100 -@@ -914,10 +914,11 @@ - .pattern = scan_ff_pattern - }; - -+//Samsung makes sure that either the 1st or 2nd page of every initial invalid block has non-FFh data at the column address of 2048. - static struct nand_bbt_descr largepage_memorybased = { - .options = 0, - .offs = 0, -- .len = 2, -+ .len = 1, - .pattern = scan_ff_pattern - }; - diff --git a/packages/u-boot/u-boot-1.3.2/boc01/013-090206-FIX_OOB_8BITS_LARGEPAGE_NAND.patch b/packages/u-boot/u-boot-1.3.2/boc01/013-090206-FIX_OOB_8BITS_LARGEPAGE_NAND.patch new file mode 100644 index 0000000000..803b46d8e9 --- /dev/null +++ b/packages/u-boot/u-boot-1.3.2/boc01/013-090206-FIX_OOB_8BITS_LARGEPAGE_NAND.patch @@ -0,0 +1,29 @@ +Index: u-boot-1.3.2/drivers/mtd/nand/nand_bbt.c +=================================================================== +--- u-boot-1.3.2.orig/drivers/mtd/nand/nand_bbt.c 2008-03-09 16:20:02.000000000 +0100 ++++ u-boot-1.3.2/drivers/mtd/nand/nand_bbt.c 2009-02-06 14:50:35.000000000 +0100 +@@ -914,10 +914,11 @@ + .pattern = scan_ff_pattern + }; + ++//Samsung makes sure that either the 1st or 2nd page of every initial invalid block has non-FFh data at the column address of 2048. + static struct nand_bbt_descr largepage_memorybased = { + .options = 0, + .offs = 0, +- .len = 2, ++ .len = 1, + .pattern = scan_ff_pattern + }; + +Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h +=================================================================== +--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h 2009-02-06 15:42:07.000000000 +0100 ++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h 2009-02-06 15:42:45.000000000 +0100 +@@ -205,6 +205,7 @@ + | BR_MS_FCM /* MSEL = FCM */ \ + | BR_V ) /* valid */ + #define CFG_OR1_PRELIM ( 0xFFFF8000 /* length 32K */ \ ++ | OR_FCM_PGS \ + | OR_FCM_CSCT \ + | OR_FCM_CST \ + | OR_FCM_CHT \ diff --git a/packages/u-boot/u-boot-1.3.2/boc01/014-081211-BOOT_RESCUE.patch b/packages/u-boot/u-boot-1.3.2/boc01/014-081211-BOOT_RESCUE.patch index e18055e64c..d2ebdef772 100644 --- a/packages/u-boot/u-boot-1.3.2/boc01/014-081211-BOOT_RESCUE.patch +++ b/packages/u-boot/u-boot-1.3.2/boc01/014-081211-BOOT_RESCUE.patch @@ -2,7 +2,15 @@ Index: u-boot-1.3.2/common/main.c =================================================================== --- u-boot-1.3.2.orig/common/main.c +++ u-boot-1.3.2/common/main.c -@@ -377,6 +377,15 @@ void main_loop (void) +@@ -39,6 +39,7 @@ + #endif + + #include <post.h> ++#include <gpio.h> + + #ifdef CONFIG_SILENT_CONSOLE + DECLARE_GLOBAL_DATA_PTR; +@@ -377,6 +378,15 @@ void main_loop (void) } else #endif /* CONFIG_BOOTCOUNT_LIMIT */ @@ -22,7 +30,7 @@ Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h =================================================================== --- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h +++ u-boot-1.3.2/include/configs/MPC8313ERDB.h -@@ -405,6 +405,7 @@ +@@ -406,6 +406,7 @@ #define PRE_INIT_GPIO 0x28 #define INIT_GPIO 0x08 #define MAX_GPIO_OUT 7 @@ -30,7 +38,7 @@ Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h /* Digital Thermometer and Thermostat */ #define CONFIG_DTT_LM73 1 -@@ -558,6 +559,7 @@ +@@ -559,6 +560,7 @@ * Environment Configuration */ #define CONFIG_ENV_OVERWRITE diff --git a/packages/u-boot/u-boot-1.3.2/boc01/015-090205-EMC.patch b/packages/u-boot/u-boot-1.3.2/boc01/015-090205-EMC.patch new file mode 100644 index 0000000000..afc43c47ed --- /dev/null +++ b/packages/u-boot/u-boot-1.3.2/boc01/015-090205-EMC.patch @@ -0,0 +1,31 @@ +Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c +=================================================================== +--- u-boot-1.3.2.orig/board/freescale/mpc8313erdb/mpc8313erdb.c ++++ u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c +@@ -135,8 +135,9 @@ void pci_init_board(void) + struct pci_region *reg[] = { pci_regions }; + int warmboot; + +- /* Enable all 3 PCI_CLK_OUTPUTs. */ +- clk->occr |= 0xe0000000; ++ /* Enable PCI_CLK_OUTPUT 1 only. ++ Disable others for better EMC footprint. */ ++ clk->occr = (clk->occr & 0x1fffffff) | OCCR_PCICOE1; + + /* + * Configure PCI Local Access Windows +Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h +=================================================================== +--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h ++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h +@@ -133,8 +133,8 @@ + #define CFG_DDR_CLK_CNTL DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05 + /*0x02000000*/ + #define CFG_DDRCDR_VALUE ( DDRCDR_EN \ +- | DDRCDR_PZ_NOMZ \ +- | DDRCDR_NZ_NOMZ \ ++ | DDRCDR_PZ_MAXZ \ ++ | DDRCDR_NZ_MAXZ \ + | DDRCDR_M_ODR ) + + /* diff --git a/packages/u-boot/u-boot-1.3.2/boc01/016-090209-PM.patch b/packages/u-boot/u-boot-1.3.2/boc01/016-090209-PM.patch new file mode 100644 index 0000000000..940e4ae40c --- /dev/null +++ b/packages/u-boot/u-boot-1.3.2/boc01/016-090209-PM.patch @@ -0,0 +1,56 @@ +Index: u-boot-1.3.2/include/configs/MPC8313ERDB.h +=================================================================== +--- u-boot-1.3.2.orig/include/configs/MPC8313ERDB.h ++++ u-boot-1.3.2/include/configs/MPC8313ERDB.h +@@ -60,7 +60,7 @@ + * to access the PMC registers, unless a JTAG debugger is + * connected, or some resistor modifications are made. + */ +-#define CFG_8313ERDB_BROKEN_PMC 1 ++#undef CFG_8313ERDB_BROKEN_PMC + + #define CFG_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ + #define CFG_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ +Index: u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c +=================================================================== +--- u-boot-1.3.2.orig/board/freescale/mpc8313erdb/mpc8313erdb.c ++++ u-boot-1.3.2/board/freescale/mpc8313erdb/mpc8313erdb.c +@@ -30,6 +30,7 @@ + #include <mpc83xx.h> + #include <spi.h> + #include <gpio.h> ++#include <asm/processor.h> + + DECLARE_GLOBAL_DATA_PTR; + +@@ -39,7 +40,29 @@ int board_early_init_f(void) + volatile immap_t *im = (immap_t *)CFG_IMMR; + + if (im->pmc.pmccr1 & PMCCR1_POWER_OFF) +- gd->flags |= GD_FLG_SILENT; ++ { ++ volatile immap_t *immap = (immap_t *) CFG_IMMR; ++ ulong msr; ++ /* Interrupts and MMU off */ ++ __asm__ __volatile__ ("mfmsr %0":"=r" (msr):); ++ ++ msr &= ~( MSR_EE | MSR_IR | MSR_DR); ++ __asm__ __volatile__ ("mtmsr %0"::"r" (msr)); ++ ++ /* enable Reset Control Reg */ ++ immap->reset.rpr = 0x52535445; ++ __asm__ __volatile__ ("sync"); ++ __asm__ __volatile__ ("isync"); ++ ++ /* confirm Reset Control Reg is enabled */ ++ while(!((immap->reset.rcer) & RCER_CRE)); ++ ++ udelay(200); ++ ++ /* perform reset, only one bit */ ++ immap->reset.rcr = RCR_SWHR; ++ } ++ + #endif + + return 0; |