From 075e33ca803378fa42187ecf5fd44a57e061a84a Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Sun, 3 Jun 2012 10:07:58 +0200 Subject: Initial commit --- recipes-bsp/u-boot/u-boot-git/bootaddr.patch | 12 + recipes-bsp/u-boot/u-boot-git/colibri_t30.patch | 220 +++++++++++++++++ recipes-bsp/u-boot/u-boot-git/remove-overlay.patch | 11 + recipes-bsp/u-boot/u-boot-git/remove-unused.patch | 104 ++++++++ .../u-boot/u-boot-git/tegra2-nand-warning.patch | 12 + .../u-boot/u-boot-git/u-boot-board-unused.patch | 62 +++++ .../u-boot/u-boot-git/u-boot-userspacetools.patch | 12 + recipes-bsp/u-boot/u-boot-git/u-boot-warning.patch | 272 +++++++++++++++++++++ .../u-boot/u-boot-git/u-boot_ap20warning.patch | 11 + recipes-bsp/u-boot/u-boot.inc | 68 ++++++ recipes-bsp/u-boot/u-boot_git.bb | 61 +++++ recipes-bsp/u-boot/u-boot_git.bbappend | 70 ++++++ recipes-bsp/u-boot/u-boot_git.bbappend.orig | 23 ++ recipes-bsp/u-boot/u-boot_git.bbappend~ | 68 ++++++ 14 files changed, 1006 insertions(+) create mode 100644 recipes-bsp/u-boot/u-boot-git/bootaddr.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/colibri_t30.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/remove-overlay.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/remove-unused.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/tegra2-nand-warning.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/u-boot-board-unused.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/u-boot-userspacetools.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/u-boot-warning.patch create mode 100644 recipes-bsp/u-boot/u-boot-git/u-boot_ap20warning.patch create mode 100644 recipes-bsp/u-boot/u-boot.inc create mode 100644 recipes-bsp/u-boot/u-boot_git.bb create mode 100644 recipes-bsp/u-boot/u-boot_git.bbappend create mode 100644 recipes-bsp/u-boot/u-boot_git.bbappend.orig create mode 100644 recipes-bsp/u-boot/u-boot_git.bbappend~ (limited to 'recipes-bsp') diff --git a/recipes-bsp/u-boot/u-boot-git/bootaddr.patch b/recipes-bsp/u-boot/u-boot-git/bootaddr.patch new file mode 100644 index 0000000..d452b61 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/bootaddr.patch @@ -0,0 +1,12 @@ +diff -Naur git.old/include/configs/tegra3-common.h git/include/configs/tegra3-common.h +--- git.old/include/configs/tegra3-common.h 2012-01-29 22:40:43.240684735 +0100 ++++ git/include/configs/tegra3-common.h 2012-01-29 22:49:00.330204308 +0100 +@@ -323,7 +323,7 @@ + */ + + /* Below should be (NV_PA_SDRAM_BASE + 0x00E08000), but ld errors out */ +-#define CONFIG_SYS_TEXT_BASE 0x80E08000 ++#define CONFIG_SYS_TEXT_BASE 0x80108000 + #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 + + #define CONFIG_SYS_INIT_RAM_ADDR CONFIG_STACKBASE diff --git a/recipes-bsp/u-boot/u-boot-git/colibri_t30.patch b/recipes-bsp/u-boot/u-boot-git/colibri_t30.patch new file mode 100644 index 0000000..485a28f --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/colibri_t30.patch @@ -0,0 +1,220 @@ +diff -Naur git/board/nvidia/cardhu/pinmux-config-common.h git.old/board/nvidia/cardhu/pinmux-config-common.h +--- git/board/nvidia/cardhu/pinmux-config-common.h 2012-01-28 12:16:26.000000000 +0100 ++++ git.old/board/nvidia/cardhu/pinmux-config-common.h 2012-01-28 18:56:06.939970059 +0100 +@@ -174,20 +174,21 @@ + DEFAULT_PINMUX(LCD_DC1, DISPLAYA, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(CRT_HSYNC, CRT, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(CRT_VSYNC, CRT, NORMAL, NORMAL, OUTPUT), +- LV_PINMUX(VI_D0, RSVD1, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D1, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D2, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D3, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D0, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D1, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D2, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D3, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), + LV_PINMUX(VI_D4, VI, NORMAL, NORMAL, OUTPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D5, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D7, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D10, RSVD1, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_MCLK, VI, UP, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D5, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D7, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D10, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ /* Enable MIC_GND, Pulldown, so this is switched off by default*/ ++ LV_PINMUX(VI_MCLK, RSVD1, DOWN, NORMAL, INPUT, DISABLE, DISABLE), + DEFAULT_PINMUX(UART2_RXD, IRDA, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(UART2_TXD, IRDA, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(UART2_RTS_N, UARTB, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(UART2_CTS_N, UARTB, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(UART3_TXD, UARTC, NORMAL, NORMAL, OUTPUT), ++ DEFAULT_PINMUX(UART3_TXD, UARTC, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(UART3_RXD, UARTC, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(UART3_CTS_N, UARTC, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(UART3_RTS_N, UARTC, NORMAL, NORMAL, OUTPUT), +@@ -205,13 +206,13 @@ + DEFAULT_PINMUX(CLK3_OUT, EXTPERIPH3, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(CLK3_REQ, DEV3, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_WP_N, GMI, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_CS2_N, RSVD1, UP, NORMAL, INPUT), /* EN_VDD_BL1 */ ++ DEFAULT_PINMUX(GMI_CS2_N, NAND, UP, NORMAL, INPUT), /* EN_VDD_BL1 */ + DEFAULT_PINMUX(GMI_AD8, PWM0, NORMAL, NORMAL, OUTPUT), /* LCD1_BL_PWM */ +- DEFAULT_PINMUX(GMI_AD10, NAND, NORMAL, NORMAL, OUTPUT), /* LCD1_BL_EN */ +- DEFAULT_PINMUX(GMI_A16, SPI4, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_A17, SPI4, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_A18, SPI4, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_A19, SPI4, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD10, PWM2, NORMAL, NORMAL, OUTPUT), /* LCD1_BL_EN */ ++ DEFAULT_PINMUX(GMI_A16, UARTD, NORMAL, NORMAL, OUTPUT), ++ DEFAULT_PINMUX(GMI_A17, UARTD, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_A18, UARTD, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_A19, UARTD, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(CAM_MCLK, VI_ALT2, UP, NORMAL, INPUT), + DEFAULT_PINMUX(GPIO_PCC1, RSVD1, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GPIO_PBB0, RSVD1, NORMAL, NORMAL, INPUT), +@@ -256,13 +257,9 @@ + DEFAULT_PINMUX(DAP1_DIN, I2S0, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(DAP1_DOUT, I2S0, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(DAP1_SCLK, I2S0, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(CLK1_REQ, DAP, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(CLK1_OUT, EXTPERIPH1, NORMAL, NORMAL, INPUT), +-#ifdef CONFIG_SND_HDA_CODEC_REALTEK +- DEFAULT_PINMUX(SPDIF_IN, DAP2, DOWN, NORMAL, INPUT), +-#else ++ DEFAULT_PINMUX(CLK1_REQ, DAP, UP, NORMAL, INPUT), ++ DEFAULT_PINMUX(CLK1_OUT, EXTPERIPH1, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(SPDIF_IN, SPDIF, NORMAL, NORMAL, INPUT), +-#endif + DEFAULT_PINMUX(SPDIF_OUT, SPDIF, NORMAL, NORMAL, OUTPUT), + #ifdef CONFIG_SND_HDA_CODEC_REALTEK + DEFAULT_PINMUX(DAP2_FS, HDA, DOWN, NORMAL, INPUT), +@@ -280,9 +277,13 @@ + DEFAULT_PINMUX(SPI1_SCK, SPI1, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(SPI1_CS0_N, SPI1, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(SPI1_MISO, SPI1, NORMAL, NORMAL, INPUT), +- DEFAULT_PINMUX(PEX_L0_PRSNT_N, PCIE, NORMAL, NORMAL, INPUT), ++ /* ASIX RESET in */ ++ DEFAULT_PINMUX(PEX_L0_PRSNT_N, PCIE, UP, NORMAL, INPUT), ++ /* ASIX wakeup */ + DEFAULT_PINMUX(PEX_L0_RST_N, PCIE, NORMAL, NORMAL, OUTPUT), +- DEFAULT_PINMUX(PEX_L0_CLKREQ_N, PCIE, NORMAL, NORMAL, INPUT), ++ /* ASIX VBUS in */ ++ DEFAULT_PINMUX(PEX_L0_CLKREQ_N, PCIE, UP, NORMAL, INPUT), ++ /* ASIX PME in */ + DEFAULT_PINMUX(PEX_WAKE_N, PCIE, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(PEX_L1_PRSNT_N, PCIE, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(PEX_L1_RST_N, PCIE, NORMAL, NORMAL, OUTPUT), +@@ -294,10 +295,9 @@ + DEFAULT_PINMUX(HDMI_INT, RSVD0, NORMAL, TRISTATE, INPUT), + + /* Gpios */ +- /* SDMMC1 CD gpio */ +- DEFAULT_PINMUX(GMI_IORDY, RSVD1, UP, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_IORDY, NAND, UP, NORMAL, INPUT), + /* SDMMC1 WP gpio */ +- LV_PINMUX(VI_D11, RSVD1, UP, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D11, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), + + /* Touch RESET */ + DEFAULT_PINMUX(GMI_AD14, NAND, NORMAL, NORMAL, OUTPUT), +@@ -310,11 +310,11 @@ + DEFAULT_PINMUX(SDMMC3_DAT4, SDMMC3, UP, NORMAL, INPUT), + + LV_PINMUX(VI_D6, VI, NORMAL, NORMAL, OUTPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D8, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_D9, SDMMC2, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_PCLK, RSVD1, UP, TRISTATE, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_HSYNC, RSVD1, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), +- LV_PINMUX(VI_VSYNC, RSVD1, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D8, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_D9, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_PCLK, VI, UP, TRISTATE, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_HSYNC, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), ++ LV_PINMUX(VI_VSYNC, VI, NORMAL, NORMAL, INPUT, DISABLE, DISABLE), + }; + + #if 0 // jz +@@ -358,21 +358,21 @@ + + static struct pingroup_config unused_pins_lowpower[] = { + DEFAULT_PINMUX(GMI_CS0_N, NAND, UP, TRISTATE, OUTPUT), +- DEFAULT_PINMUX(GMI_CS3_N, NAND, UP, TRISTATE, OUTPUT), +- DEFAULT_PINMUX(GMI_CS4_N, NAND, UP, TRISTATE, OUTPUT), ++ DEFAULT_PINMUX(GMI_CS3_N, NAND, NORMAL, NORMAL, OUTPUT), ++ DEFAULT_PINMUX(GMI_CS4_N, NAND, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_CS7_N, NAND, UP, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_AD0, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD1, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD2, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD3, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD4, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD5, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD6, NAND, NORMAL, TRISTATE, INPUT), +- DEFAULT_PINMUX(GMI_AD7, NAND, NORMAL, TRISTATE, INPUT), ++ DEFAULT_PINMUX(GMI_AD0, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD1, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD2, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD3, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD4, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD5, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD6, NAND, NORMAL, NORMAL, INPUT), ++ DEFAULT_PINMUX(GMI_AD7, NAND, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_AD9, PWM1, NORMAL, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_AD11, NAND, NORMAL, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_AD13, NAND, UP, NORMAL, INPUT), +- DEFAULT_PINMUX(GMI_WR_N, NAND, NORMAL, TRISTATE, OUTPUT), ++ DEFAULT_PINMUX(GMI_WR_N, NAND, NORMAL, NORMAL, OUTPUT), + }; + + #endif /* PINMUX_CONFIG_COMMON_H */ +diff -Naur git/board/nvidia/cardhu/tegra3-cardhu.dts git.old/board/nvidia/cardhu/tegra3-cardhu.dts +--- git/board/nvidia/cardhu/tegra3-cardhu.dts 2012-01-28 12:16:26.000000000 +0100 ++++ git.old/board/nvidia/cardhu/tegra3-cardhu.dts 2012-01-28 16:52:31.660622281 +0100 +@@ -14,12 +14,17 @@ + }; + + aliases { ++ /* UART A = UART1 */ + console = "/serial@70006000"; + usb0 = "/usb@0x7d008000"; + usb1 = "/usb@0x7d000000"; + ++ /* SDMMC-4 */ + sdmmc0 = "/sdhci@78000600"; +- sdmmc1 = "/sdhci@78000000"; ++ /* SDMMC-1 */ ++ /* sdmmc1 = "/sdhci@78000000";*/ ++ /* SDMMC-2 */ ++ sdmmc1 = "/sdhci@78000200"; + }; + + chosen { +@@ -40,19 +45,19 @@ + clock-frequency = <408000000>; + }; + +- sdhci@78000000 { ++ sdhci@78000200 { + status = "ok"; + width = <4>; /* width of SDIO port */ + removable = <1>; + /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */ +- cd-gpio = <&gpio 69 0>; /* card detect, gpio PI5 */ +- wp-gpio = <&gpio 155 0>; /* write protect, gpio PT3 */ +- power-gpio = <&gpio 31 3>; /* power enable, gpio PD7 */ ++ /* cd-gpio = <&gpio 69 0>; *//* card detect, gpio PI5 */ ++ /*wp-gpio = <&gpio 155 0>; *//* write protect, gpio PT3 */ ++ /*power-gpio = <&gpio 31 3>;*/ /* power enable, gpio PD7 */ + }; + + sdhci@78000600 { + status = "ok"; +- width = <4>; /* width of SDIO port */ ++ width = <8>; /* width of SDIO port */ + removable = <0>; + }; + +@@ -61,7 +66,7 @@ + width = <1366>; + height = <768>; + bits_per_pixel = <16>; +- pwfm = <&pwfm0>; ++ /*pwfm = <&pwfm0>;*/ + display = <&display1>; + frame-buffer = <0x1C022000>; + +@@ -72,10 +77,10 @@ + vert_timing = <12 5 20 25>; + + /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */ +- gpios = <&gpio 56 3>, /* PH0, LCD1_BL_PWM */ +- <&gpio 58 3>, /* PH2, LCD1_BL_EN */ +- <&gpio 90 3>, /* PL2, LVDS1_SHTDN */ +- <&gpio 92 3>; /* PL4, EN_VDD_PNL1 */ ++ /*gpios = <&gpio 56 3>,*/ /* PH0, LCD1_BL_PWM */ ++ /*<&gpio 58 3>,*/ /* PH2, LCD1_BL_EN */ ++ /*<&gpio 90 3>,*/ /* PL2, LVDS1_SHTDN */ ++ /*<&gpio 92 3>;*/ /* PL4, EN_VDD_PNL1 */ + }; + + usb@0x7d000000 { diff --git a/recipes-bsp/u-boot/u-boot-git/remove-overlay.patch b/recipes-bsp/u-boot/u-boot-git/remove-overlay.patch new file mode 100644 index 0000000..dfd9ba3 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/remove-overlay.patch @@ -0,0 +1,11 @@ +--- git/arch/arm/cpu/armv7/u-boot.lds 2012-06-02 21:16:34.000000000 +0200 ++++ x +@@ -68,7 +68,7 @@ + + _end = .; + +- .bss __rel_dyn_start (OVERLAY) : { ++ .bss __rel_dyn_start : { + __bss_start = .; + *(.bss) + . = ALIGN(4); diff --git a/recipes-bsp/u-boot/u-boot-git/remove-unused.patch b/recipes-bsp/u-boot/u-boot-git/remove-unused.patch new file mode 100644 index 0000000..92e933f --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/remove-unused.patch @@ -0,0 +1,104 @@ +diff -urNdb u-boot/arch/arm/cpu/armv7/tegra-common/board.c u-boot.new/arch/arm/cpu/armv7/tegra-common/board.c +--- u-boot/arch/arm/cpu/armv7/tegra-common/board.c 2011-12-15 17:28:52.000000000 +0100 ++++ u-boot.new/arch/arm/cpu/armv7/tegra-common/board.c 2011-12-20 15:05:10.603876354 +0100 +@@ -41,6 +41,7 @@ + u32 reg; + + reg = readl(&pmc->pmc_scratch20); ++ (void) reg; + debug("pmc->pmc_scratch20 (ODMData) = 0x%08X\n", reg); + + //Colibri T20 does not use OdmData +diff -urNdb u-boot/common/cmd_mtdparts.c u-boot.new/common/cmd_mtdparts.c +--- u-boot/common/cmd_mtdparts.c 2011-12-06 17:10:16.000000000 +0100 ++++ u-boot.new/common/cmd_mtdparts.c 2011-12-20 15:12:07.454221888 +0100 +@@ -871,9 +871,12 @@ + debug("dev type = %d (%s), dev num = %d, mtd-id = %s\n", + id->type, MTD_DEV_TYPE(id->type), + id->num, id->mtd_id); ++#ifdef DEBUG + pend = strchr(p, ';'); + debug("parsing partitions %.*s\n", (pend ? pend - p : strlen(p)), p); +- ++#else ++ (void)pend; ++#endif + + /* parse partitions */ + num_parts = 0; +diff -urNdb u-boot/common/cmd_ubi.c u-boot.new/common/cmd_ubi.c +--- u-boot/common/cmd_ubi.c 2011-12-06 17:10:16.000000000 +0100 ++++ u-boot.new/common/cmd_ubi.c 2011-12-20 15:14:57.464387590 +0100 +@@ -316,7 +316,6 @@ + static int ubi_volume_read(char *volume, char *buf, size_t size) + { + int err, lnum, off, len, tbuf_size; +- size_t count_save = size; + void *tbuf; + unsigned long long tmp; + struct ubi_volume *vol; +@@ -347,7 +346,7 @@ + if (vol->corrupted) + printf("read from corrupted volume %d", vol->vol_id); + if (offp + size > vol->used_bytes) +- count_save = size = vol->used_bytes - offp; ++ size = vol->used_bytes - offp; + + tbuf_size = vol->usable_leb_size; + if (size < tbuf_size) +diff -urNdb u-boot/drivers/mtd/ubi/vmt.c u-boot.new/drivers/mtd/ubi/vmt.c +--- u-boot/drivers/mtd/ubi/vmt.c 2011-12-06 17:10:16.000000000 +0100 ++++ u-boot.new/drivers/mtd/ubi/vmt.c 2011-12-20 15:16:48.334522354 +0100 +@@ -684,6 +684,7 @@ + + ubi->volumes[vol->vol_id] = NULL; + err = ubi_destroy_gluebi(vol); ++ (void) err; + cdev_del(&vol->cdev); + volume_sysfs_close(vol); + } +diff -urNdb u-boot/drivers/usb/eth/asix.c u-boot.new/drivers/usb/eth/asix.c +--- u-boot/drivers/usb/eth/asix.c 2011-12-15 17:28:52.000000000 +0100 ++++ u-boot.new/drivers/usb/eth/asix.c 2011-12-20 15:22:59.254665754 +0100 +@@ -364,6 +364,8 @@ + + rx_ctl = asix_read_rx_ctl(dev); + debug("RX_CTL is 0x%04x after software reset\n", rx_ctl); ++ (void)rx_ctl; ++ + if (asix_write_rx_ctl(dev, 0x0000) < 0) + goto out_err; + +diff -urNdb u-boot/fs/jffs2/jffs2_1pass.c u-boot.new/fs/jffs2/jffs2_1pass.c +--- u-boot/fs/jffs2/jffs2_1pass.c 2011-12-06 17:10:01.000000000 +0100 ++++ u-boot.new/fs/jffs2/jffs2_1pass.c 2011-12-20 15:40:45.114614263 +0100 +@@ -813,6 +813,7 @@ + #if 0 + putLabeledWord("read_inode: returning = ", totalSize); + #endif ++ (void) ret; + return totalSize; + } + +@@ -1575,9 +1576,8 @@ + + if (*(uint32_t *)(&buf[ofs-buf_ofs]) == 0xffffffff) { + uint32_t inbuf_ofs; +- uint32_t empty_start, scan_end; ++ uint32_t scan_end; + +- empty_start = ofs; + ofs += 4; + scan_end = min_t(uint32_t, EMPTY_SCAN_SIZE( + part->sector_size)/8, +diff -urNdb u-boot/lib/lzo/lzo1x_decompress.c u-boot.new/lib/lzo/lzo1x_decompress.c +--- u-boot/lib/lzo/lzo1x_decompress.c 2011-12-06 17:10:00.000000000 +0100 ++++ u-boot.new/lib/lzo/lzo1x_decompress.c 2011-12-20 15:42:36.064554125 +0100 +@@ -48,6 +48,7 @@ + src += 7; + if (version >= 0x0940) + level = *src++; ++ (void) level; + if (get_unaligned_be32(src) & HEADER_HAS_FILTER) + src += 4; /* filter info */ + diff --git a/recipes-bsp/u-boot/u-boot-git/tegra2-nand-warning.patch b/recipes-bsp/u-boot/u-boot-git/tegra2-nand-warning.patch new file mode 100644 index 0000000..ad039ca --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/tegra2-nand-warning.patch @@ -0,0 +1,12 @@ +--- /home/tegradev/oe/output/work/colibri-t20-angstrom-linux-gnueabi/u-boot-git-r80/git/board/toradex/common/tegra2_nand.c~ 2012-01-17 11:09:37.000000000 +0100 ++++ /home/tegradev/oe/output/work/colibri-t20-angstrom-linux-gnueabi/u-boot-git-r80/git/board/toradex/common/tegra2_nand.c 2012-01-18 20:06:36.439745214 +0100 +@@ -954,7 +954,8 @@ + tmp_id = nand_read_byte(&tmp_mtd); + tmp_3rd = nand_read_byte(&tmp_mtd); + tmp_4th = nand_read_byte(&tmp_mtd); +- ++ (void)tmp_3rd; ++ + sprintf(compat, "%02X,%02X,%02X", tmp_manf, tmp_id, tmp_4th); + node = fdt_node_offset_by_compatible(gd->blob, 0, compat); + if (node < 0) { diff --git a/recipes-bsp/u-boot/u-boot-git/u-boot-board-unused.patch b/recipes-bsp/u-boot/u-boot-git/u-boot-board-unused.patch new file mode 100644 index 0000000..98a33a9 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/u-boot-board-unused.patch @@ -0,0 +1,62 @@ +--- git/board/toradex/common/board.c 2012-06-02 21:16:34.000000000 +0200 ++++ git/board/toradex/common/board.c 2012-06-02 22:27:51.000000000 +0200 +@@ -146,14 +146,21 @@ + #error "tegra: We need CONFIG_TEGRA_PMU to support CONFIG_TEGRA_CLOCK_SCALING" + #endif + ++#define GENERATE_FUSE_DEV_INFO 0 + static TrdxBootDevice board_get_current_bootdev(void) + { +- unsigned reg, reg1, reg2; ++ unsigned reg; ++#if GENERATE_FUSE_DEV_INFO ++ unsigned reg1 = 0; ++ unsigned reg2; ++#endif + unsigned strap_select; + unsigned skip_strap; + unsigned fuse_select; ++#if GENERATE_FUSE_DEV_INFO + unsigned fuse_device_info; + unsigned sdmmc_instance; ++#endif + TrdxBootDevice boot_device; + + //get the latched strap pins, bit [26:29] +@@ -187,15 +194,12 @@ + + clock_disable(PERIPH_ID_FUSE); + #else +- (void)reg2; + #ifdef CONFIG_TEGRA3 + //simulate a T30 fuse setting + reg = NvBootFuseBootDevice_Sdmmc; +- reg1 = 0; + #else + //simulate a T20 fuse setting + reg = NvBootFuseBootDevice_NandFlash; +- reg1 = 0; + #endif + #endif + //get the fuse 'SKIP_DEV_SEL_STRAPS', bit 3 +@@ -207,8 +211,10 @@ + { + printf("Using fuses, %u\n", fuse_select); + //getting fuse device info and sdmmc instance, bit 7 of fuse_device info ++#if GENERATE_FUSE_DEV_INFO + fuse_device_info = reg1 & 0x3fff; + sdmmc_instance = ((reg1 & 0x80)==0x80) ? 2 : 3; ++#endif + switch(fuse_select) + { + case NvBootFuseBootDevice_Sdmmc: +@@ -225,7 +231,9 @@ + else + { + /* printf("Using straps, %u\n", strap_select);*/ ++#if GENERATE_FUSE_DEV_INFO + sdmmc_instance = 3; ++#endif + switch(strap_select) + { + case NvStrapDevSel_Emmc_Primary_x4: diff --git a/recipes-bsp/u-boot/u-boot-git/u-boot-userspacetools.patch b/recipes-bsp/u-boot/u-boot-git/u-boot-userspacetools.patch new file mode 100644 index 0000000..6e7a3e9 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/u-boot-userspacetools.patch @@ -0,0 +1,12 @@ +diff -urNdb u-boot-git.old//tools/env/Makefile u-boot-git//tools/env/Makefile +--- u-boot-git.old//tools/env/Makefile 2011-11-19 18:17:17.000000000 +0100 ++++ u-boot-git//tools/env/Makefile 2011-11-19 18:15:22.000000000 +0100 +@@ -28,6 +28,8 @@ + + CPPFLAGS := -Wall -DUSE_HOSTCC -I$(SRCTREE)/include + ++CPPFLAGS += -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mfloat-abi=soft -mthumb-interwork -mno-thumb ++ + ifeq ($(MTD_VERSION),old) + CPPFLAGS += -DMTD_OLD + endif diff --git a/recipes-bsp/u-boot/u-boot-git/u-boot-warning.patch b/recipes-bsp/u-boot/u-boot-git/u-boot-warning.patch new file mode 100644 index 0000000..2552464 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/u-boot-warning.patch @@ -0,0 +1,272 @@ +#--- git/include/common.h~ 2012-05-31 21:57:20.000000000 +0200 +#+++ git/include/common.h 2012-05-31 21:57:43.000000000 +0200 +@@ -1,3 +1,6 @@ ++#pragma GCC diagnostic warning "-Wunused-but-set-variable" ++#pragma GCC diagnostic warning "-Wmaybe-uninitialized" ++#pragma GCC diagnostic warning "-Wstrict-aliasing" + /* + * (C) Copyright 2000-2009 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/board/toradex/common/tegra2_nand.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/board/toradex/common/tegra2_nand.c +--- git/board/toradex/common/tegra2_nand.c 2012-06-01 00:56:03.000000000 +0200 ++++ git/board/toradex/common/tegra2_nand.c 2012-06-01 01:03:43.000000000 +0200 +@@ -919,7 +919,7 @@ + struct nand_info *info = &nand_ctrl; + struct fdt_nand *config = &info->config; + struct mtd_info tmp_mtd; +- int tmp_manf, tmp_id, tmp_3rd, tmp_4th; ++ int tmp_manf, tmp_id, /*tmp_3rd,*/ tmp_4th; + char compat[8]; + int node; + +@@ -952,7 +952,8 @@ + /* Read manufacturer and device IDs */ + tmp_manf = nand_read_byte(&tmp_mtd); + tmp_id = nand_read_byte(&tmp_mtd); +- tmp_3rd = nand_read_byte(&tmp_mtd); ++ /*tmp_3rd = nand_read_byte(&tmp_mtd); ++ (void) tmp_3rd;*/ + tmp_4th = nand_read_byte(&tmp_mtd); + + sprintf(compat, "%02X,%02X,%02X", tmp_manf, tmp_id, tmp_4th); +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/common/cmd_mtdparts.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/common/cmd_mtdparts.c +--- git/common/cmd_mtdparts.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/common/cmd_mtdparts.c 2012-06-01 01:06:16.000000000 +0200 +@@ -838,7 +838,7 @@ + struct mtdids *id; + const char *mtd_id; + unsigned int mtd_id_len; +- const char *p, *pend; ++ const char *p; + LIST_HEAD(tmp_list); + struct list_head *entry, *n; + u16 num_parts; +@@ -871,8 +871,7 @@ + debug("dev type = %d (%s), dev num = %d, mtd-id = %s\n", + id->type, MTD_DEV_TYPE(id->type), + id->num, id->mtd_id); +- pend = strchr(p, ';'); +- debug("parsing partitions %.*s\n", (pend ? pend - p : strlen(p)), p); ++ debug("parsing partitions %.*s\n", (strchr(p, ';') ? strchr(p, ';') - p : strlen(p)), p); + + + /* parse partitions */ +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/common/cmd_nand.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/common/cmd_nand.c +--- git/common/cmd_nand.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/common/cmd_nand.c 2012-06-01 01:08:03.000000000 +0200 +@@ -190,7 +190,7 @@ + loff_t *off, loff_t *size) + { + int ret; +- loff_t maxsize; ++ loff_t maxsize=0; + + if (argc == 0) { + *off = 0; +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/common/cmd_ubi.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/common/cmd_ubi.c +--- git/common/cmd_ubi.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/common/cmd_ubi.c 2012-06-01 01:09:33.000000000 +0200 +@@ -316,7 +316,6 @@ + static int ubi_volume_read(char *volume, char *buf, size_t size) + { + int err, lnum, off, len, tbuf_size; +- size_t count_save = size; + void *tbuf; + unsigned long long tmp; + struct ubi_volume *vol; +@@ -347,7 +346,7 @@ + if (vol->corrupted) + printf("read from corrupted volume %d", vol->vol_id); + if (offp + size > vol->used_bytes) +- count_save = size = vol->used_bytes - offp; ++ size = vol->used_bytes - offp; + + tbuf_size = vol->usable_leb_size; + if (size < tbuf_size) +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/common/cmd_ximg.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/common/cmd_ximg.c +--- git/common/cmd_ximg.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/common/cmd_ximg.c 2012-06-01 01:15:20.000000000 +0200 +@@ -55,7 +55,7 @@ + int verify; + int part = 0; + char pbuf[10]; +- image_header_t *hdr; ++ image_header_t *hdr = NULL; + #if defined(CONFIG_FIT) + const char *uname = NULL; + const void* fit_hdr; +@@ -238,16 +238,22 @@ + * space, use slower decompression algorithm + * which requires at most 2300 KB of memory. + */ +- i = BZ2_bzBuffToBuffDecompress( +- (char*)ntohl(hdr->ih_load), +- &unc_len, (char *)data, len, +- CONFIG_SYS_MALLOC_LEN < (4096 * 1024), +- 0); +- if (i != BZ_OK) { +- printf ("BUNZIP2 ERROR %d - " +- "image not loaded\n", i); ++ if(hdr == NULL) { ++ printf ("hdr not set\n"); + return 1; + } ++ else { ++ i = BZ2_bzBuffToBuffDecompress( ++ (char*)ntohl(hdr->ih_load), ++ &unc_len, (char *)data, len, ++ CONFIG_SYS_MALLOC_LEN < (4096 * 1024), ++ 0); ++ if (i != BZ_OK) { ++ printf ("BUNZIP2 ERROR %d - " ++ "image not loaded\n", i); ++ return 1; ++ } ++ } + } + break; + #endif /* CONFIG_BZIP2 */ +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/drivers/mtd/ubi/vmt.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/drivers/mtd/ubi/vmt.c +--- git/drivers/mtd/ubi/vmt.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/drivers/mtd/ubi/vmt.c 2012-06-01 01:17:21.000000000 +0200 +@@ -678,12 +678,10 @@ + */ + void ubi_free_volume(struct ubi_device *ubi, struct ubi_volume *vol) + { +- int err; +- + dbg_msg("free volume %d", vol->vol_id); + + ubi->volumes[vol->vol_id] = NULL; +- err = ubi_destroy_gluebi(vol); ++ (void)ubi_destroy_gluebi(vol); + cdev_del(&vol->cdev); + volume_sysfs_close(vol); + } +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/drivers/usb/eth/asix.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/drivers/usb/eth/asix.c +--- git/drivers/usb/eth/asix.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/drivers/usb/eth/asix.c 2012-06-01 01:22:07.000000000 +0200 +@@ -326,7 +326,6 @@ + { + int embd_phy; + unsigned char buf[ETH_ALEN]; +- u16 rx_ctl; + struct ueth_data *dev = (struct ueth_data *)eth->priv; + int timeout = 0; + char *addr_str, *end; +@@ -363,13 +362,11 @@ + goto out_err; + } + +- rx_ctl = asix_read_rx_ctl(dev); +- debug("RX_CTL is 0x%04x after software reset\n", rx_ctl); ++ (void) asix_read_rx_ctl(dev); + if (asix_write_rx_ctl(dev, 0x0000) < 0) + goto out_err; + +- rx_ctl = asix_read_rx_ctl(dev); +- debug("RX_CTL is 0x%04x setting to 0x0000\n", rx_ctl); ++ (void) asix_read_rx_ctl(dev); + + if ((dev->pusb_dev->descriptor.idVendor == 0x0b95) && (dev->pusb_dev->descriptor.idProduct == 0x772b)) { + #define AX_CMD_READ_EEPROM 0x0B +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/fs/jffs2/jffs2_1pass.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/fs/jffs2/jffs2_1pass.c +--- git/fs/jffs2/jffs2_1pass.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/fs/jffs2/jffs2_1pass.c 2012-06-01 01:26:48.000000000 +0200 +@@ -696,7 +696,6 @@ + u32 latestVersion = 0; + uchar *lDest; + uchar *src; +- long ret; + int i; + u32 counter = 0; + #ifdef CONFIG_SYS_JFFS2_SORT_FRAGMENTS +@@ -768,28 +767,23 @@ + #endif + switch (jNode->compr) { + case JFFS2_COMPR_NONE: +- ret = (unsigned long) ldr_memcpy(lDest, src, jNode->dsize); ++ (void) ldr_memcpy(lDest, src, jNode->dsize); + break; + case JFFS2_COMPR_ZERO: +- ret = 0; + for (i = 0; i < jNode->dsize; i++) + *(lDest++) = 0; + break; + case JFFS2_COMPR_RTIME: +- ret = 0; + rtime_decompress(src, lDest, jNode->csize, jNode->dsize); + break; + case JFFS2_COMPR_DYNRUBIN: + /* this is slow but it works */ +- ret = 0; + dynrubin_decompress(src, lDest, jNode->csize, jNode->dsize); + break; + case JFFS2_COMPR_ZLIB: +- ret = zlib_decompress(src, lDest, jNode->csize, jNode->dsize); + break; + #if defined(CONFIG_JFFS2_LZO) + case JFFS2_COMPR_LZO: +- ret = lzo_decompress(src, lDest, jNode->csize, jNode->dsize); + break; + #endif + default: +@@ -1575,9 +1569,8 @@ + + if (*(uint32_t *)(&buf[ofs-buf_ofs]) == 0xffffffff) { + uint32_t inbuf_ofs; +- uint32_t empty_start, scan_end; ++ uint32_t scan_end; + +- empty_start = ofs; + ofs += 4; + scan_end = min_t(uint32_t, EMPTY_SCAN_SIZE( + part->sector_size)/8, +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/include/u-boot/md5.h u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/include/u-boot/md5.h +--- git/include/u-boot/md5.h 2012-06-01 00:56:04.000000000 +0200 ++++ git/include/u-boot/md5.h 2012-06-01 01:44:25.000000000 +0200 +@@ -11,7 +11,10 @@ + struct MD5Context { + __u32 buf[4]; + __u32 bits[2]; +- unsigned char in[64]; ++ union { ++ unsigned char in[64]; ++ __u32 in32[16]; ++ }; + }; + + /* +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/lib/lzo/lzo1x_decompress.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/lib/lzo/lzo1x_decompress.c +--- git/lib/lzo/lzo1x_decompress.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/lib/lzo/lzo1x_decompress.c 2012-06-01 01:31:29.000000000 +0200 +@@ -32,7 +32,6 @@ + + static inline const unsigned char *parse_header(const unsigned char *src) + { +- u8 level = 0; + u16 version; + int i; + +@@ -47,7 +46,6 @@ + version = get_unaligned_be16(src); + src += 7; + if (version >= 0x0940) +- level = *src++; + if (get_unaligned_be32(src) & HEADER_HAS_FILTER) + src += 4; /* filter info */ + +diff -Naur u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0.orig/git/lib/md5.c u-boot-r0+gitra86e39a5abbe0a14106bc7ae828fb48a10396a91-r0/git/lib/md5.c +--- git/lib/md5.c 2012-06-01 00:56:04.000000000 +0200 ++++ git/lib/md5.c 2012-06-01 01:42:05.000000000 +0200 +@@ -153,8 +153,8 @@ + byteReverse(ctx->in, 14); + + /* Append length in bits and transform */ +- ((__u32 *) ctx->in)[14] = ctx->bits[0]; +- ((__u32 *) ctx->in)[15] = ctx->bits[1]; ++ ctx->in32[14] = ctx->bits[0]; ++ ctx->in32[15] = ctx->bits[1]; + + MD5Transform(ctx->buf, (__u32 *) ctx->in); + byteReverse((unsigned char *) ctx->buf, 4); diff --git a/recipes-bsp/u-boot/u-boot-git/u-boot_ap20warning.patch b/recipes-bsp/u-boot/u-boot-git/u-boot_ap20warning.patch new file mode 100644 index 0000000..d99fc12 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-git/u-boot_ap20warning.patch @@ -0,0 +1,11 @@ +--- git/arch/arm/cpu/armv7/tegra3/ap20.c 2012-01-28 12:16:25.000000000 +0100 ++++ git/arch/arm/cpu/armv7/tegra3/ap20.c~ 2012-01-28 12:42:44.640356495 +0100 +@@ -72,6 +72,8 @@ + return id == (PG_UP_TAG_0_PID_CPU & 0xff); + } + ++//u-boot treats all errors as warnings, &clkrst->crc_pll[CLOCK_ID_XCPU] uses a subscript out of range ++#pragma GCC diagnostic warning "-Warray-bounds" + static int pllx_set_rate(u32 divn, u32 divm, u32 divp, u32 cpcon) + { + struct clk_rst_ctlr *clkrst = (struct clk_rst_ctlr *)NV_PA_CLK_RST_BASE; diff --git a/recipes-bsp/u-boot/u-boot.inc b/recipes-bsp/u-boot/u-boot.inc new file mode 100644 index 0000000..720f995 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot.inc @@ -0,0 +1,68 @@ +DESCRIPTION = "U-Boot - the Universal Boot Loader" +HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome" +SECTION = "bootloaders" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=4c6cde5df68eff615d36789dc18edd3b" + +PROVIDES = "virtual/bootloader" + +DEPENDS = "mtd-utils" + +PACKAGE_ARCH = "${MACHINE_ARCH}" +PARALLEL_MAKE="" + +EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" + +UBOOT_MACHINE ?= "${MACHINE}_config" +UBOOT_BINARY ?= "u-boot.bin" +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" +UBOOT_MAKE_TARGET ?= "all" + +do_configure () { + oe_runmake ${UBOOT_MACHINE} +} + +do_compile () { + unset LDFLAGS + unset CFLAGS + unset CPPFLAGS + oe_runmake ${UBOOT_MAKE_TARGET} +} + +do_install () { + install -d ${D}/boot + install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} + ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} + + if [ -e ${WORKDIR}/fw_env.config ] ; then + install -d ${D}${sysconfdir} + install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config + fi + +} + +FILES_${PN} = "/boot ${sysconfdir}" +# no gnu_hash in uboot.bin, by design, so skip QA +INSANE_SKIP_${PN} = "1" + +inherit deploy + +addtask deploy before do_package after do_compile + +do_deploy () { + install -d ${DEPLOY_DIR_IMAGE} + install ${S}/${UBOOT_BINARY} ${DEPLOY_DIR_IMAGE}/${UBOOT_IMAGE} + + cd ${DEPLOY_DIR_IMAGE} + rm -f ${UBOOT_BINARY} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_BINARY} + + if [ -e ${S}/MLO ] ; then + install ${S}/MLO ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE}-${PV} + rm -f ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE} ${DEPLOY_DIR_IMAGE}/MLO + ln -sf MLO-${MACHINE}-${PV} ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE} + ln -sf MLO-${MACHINE}-${PV} ${DEPLOY_DIR_IMAGE}/MLO + fi +} diff --git a/recipes-bsp/u-boot/u-boot_git.bb b/recipes-bsp/u-boot/u-boot_git.bb new file mode 100644 index 0000000..2b32ab8 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_git.bb @@ -0,0 +1,61 @@ +require u-boot.inc +PR ="r68" + +DEFAULT_PREFERENCE = "-1" +DEFAULT_PREFERENCE_ti814x = "-1" +DEFAULT_PREFERENCE_ti816x = "-1" + +FILESPATHPKG =. "u-boot-git:" + +# ~ TI PSP v2009.11_OMAPPSP_03.00.01.06 (+ couple of commits) +SRC_URI_omap3evm = "git://arago-project.org/git/projects/u-boot-omap3.git;protocol=git \ + file://0001-omap3evm-Change-default-console-serial-port-from.patch \ +" +SRCREV_${PN}_omap3evm = "c0a8fb217fdca7888d89f9a3dee74a4cec865620" +PV_omap3evm = "2009.11+${PR}+gitr${SRCREV}" + +# ~ TI PSP v2009.11_OMAPPSP_03.00.01.06 (+ couple of commits) +SRC_URI_pn-${PN}_am3517-evm = "git://arago-project.org/git/projects/u-boot-omap3.git;protocol=git" +SRCREV_pn-${PN}_am3517-evm = "c0a8fb217fdca7888d89f9a3dee74a4cec865620" +PV_pn-${PN}_am3517-evm = "2009.11+${PR}+gitr${SRCREV}" + +# ~ TI PSP v2009.11_OMAPPSP_03.00.01.06 (+ couple of commits) +SRC_URI_am37x-evm = "git://arago-project.org/git/projects/u-boot-omap3.git;protocol=git \ + file://0001-omap3evm-Change-default-console-serial-port-from.patch \ +" +SRCREV_pn-${PN}_am37x-evm = "c0a8fb217fdca7888d89f9a3dee74a4cec865620" +PV_am37x-evm = "2009.11+${PR}+gitr${SRCREV}" + +SRC_URI_omap3-touchbook = "git://gitorious.org/u-boot-omap3/mainline.git;branch=omap3-dev;protocol=git \ + file://fw_env.config \ + file://dss2.patch \ + file://600mhz.patch \ + file://new-pinmux.patch \ + file://spi3.patch \ + file://spi4.patch \ + file://headphone.patch \ + file://power.patch \ + file://ai-logo.patch \ + file://mmcinit.patch \ + file://touchbook-config.patch \ + file://dont-inline-weak-symbols.patch \ +" +SRCREV_pn-${PN}_omap3-touchbook = "d363f9cb0918a1b6b92e2e20d01543d0c4f53274" +PV_omap3-touchbook = "2009.05+${PR}+gitr${SRCREV}" + +# OMAPL1 omapl137/omapl138 - PSP 3.20.0.11 + +SRC_URI_omapl138 = "git://arago-project.org/git/projects/u-boot-omapl1.git;protocol=http" +SRCREV_pn-${PN}_omapl138 = "5f16b8551b125f16cd8d58f278cb25b94272fd9f" +PV_omapl138 = "2009.11+${PR}+gitr${SRCREV}" + +# hawkboard - master branch (hawk still .07beta) +SRC_URI_hawkboard = "git://arago-project.org/git/people/sekhar/u-boot-omapl1.git;protocol=git;branch=master" +SRC_URI_hawkboard += "file://dont-inline-weak-symbols2.patch" +SRCREV_pn-${PN}_hawkboard = "0d291f2f255e6d66a78b3dc2445362a96ae39a57" +PV_hawkboard = "2009.08+gitr${SRCREV}" + + +S = "${WORKDIR}/git" + +RRECOMMENDS_${PN}_omap3-touchbook = "u-boot-fw-utils" diff --git a/recipes-bsp/u-boot/u-boot_git.bbappend b/recipes-bsp/u-boot/u-boot_git.bbappend new file mode 100644 index 0000000..27ce04a --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_git.bbappend @@ -0,0 +1,70 @@ +# Extends the core U-Boot GIT recipe +# to take the u-boot sources including the colibri stuff from our git repository +PR ="r1" +DEPENDS += "dtc-native" + +FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-git:" + +# Also overwries the license checksum to suit the updated text file in our U-Boot snapshot. +LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb" + +COMPATIBLE_MACHINE_colibri-t20 = "colibri-t20" +COMPATIBLE_MACHINE_colibri-t30 = "colibri-t30" + +DEFAULT_PREFERENCE_colibri-t20 = "1" +DEFAULT_PREFERENCE_colibri-t30 = "1" + +UBOOT_MACHINE_colibri-t20 = "colibri_t20_config" +UBOOT_MACHINE_colibri-t30 = "colibri_t30_config" + +#gitorious git +FILESPATHPKG =. "git:" +S="${WORKDIR}/git" +SRC_URI_COLIBRI = "git://gitorious.org/colibri-t20-embedded-linux-bsp/colibri_t20-u-boot.git;protocol=git;branch=master \ + file://u-boot-warning.patch \ + file://u-boot-board-unused.patch \ +" + +# file://remove-unused.patch \ +# file://u-boot_ap20warning.patch \ +# file://colibri_t30.patch \ +# file://bootaddr.patch \ +#" +SRCREV_colibri-t20 = "63c37d9e1d3ea97391576384d237728c44b5e33b" +SRCREV_colibri-t30 = "63c37d9e1d3ea97391576384d237728c44b5e33b" + +PV_colibri-t20 = "${PR}+gitr${SRCREV}" +PV_colibri-t30 = "${PR}+gitr${SRCREV}" + +#internal SVN +#S = "${WORKDIR}/bootloader/u-boot" +#SVN_REV = 218 +#SRC_URI_COLIBRI = "svn://tegradev:tegra123!@mammut.toradex.int:8090/colibri_tegra_linux/trunk;module=bootloader/u-boot;rev=${SVN_REV};proto=http \ +# file://remove-unused.patch " + +SRC_URI_colibri-t20 = "${SRC_URI_COLIBRI} " +SRC_URI_colibri-t30 = "${SRC_URI_COLIBRI} " + +#compile with -O2 not -Os as with gcc 4.5 the code does not work +do_configure_append() { + # sed -i -e 's/-Os/-O2 -fno-ipa-sra -fno-caller-saves -fno-schedule-insns/' ${S}/config.mk + sed -i -e 's/-Os/-O2 -fno-ipa-sra -fno-caller-saves -fno-schedule-insns -mno-unaligned-access/' ${S}/config.mk +} + + +#build additionally a u-boot binary which uses/stores its environment on an T20 external sd or mmc card +do_compile_append_colibri-t20() { + mv u-boot.bin u-boot-nand.bin + oe_runmake colibri_t20_sdboot_config + oe_runmake all + mv u-boot.bin u-boot-hsmmc.bin + mv u-boot-nand.bin u-boot.bin +} + +UBOOT_IMAGE ?= "u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin" +do_deploy_append_colibri-t20 () { + install ${S}/u-boot-hsmmc.bin ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin + package_stagefile_shell ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin + ln -sf u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc.bin + package_stagefile_shell ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc.bin +} diff --git a/recipes-bsp/u-boot/u-boot_git.bbappend.orig b/recipes-bsp/u-boot/u-boot_git.bbappend.orig new file mode 100644 index 0000000..9a1acc8 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_git.bbappend.orig @@ -0,0 +1,23 @@ +# Extends the core U-Boot GIT recipe +# to take the u-boot sources including the colibri stuff from our git repository + +# Also overwries the license checksum to suit the updated text file in our U-Boot snapshot. +#LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb" + +COMPATIBLE_MACHINE = "omap3-pandora" +DEFAULT_PREFERENCE_omap3-pandora = "1" + +# Latest SRCREV. +SRCREV_pn-${PN}_omap3-pandora = "55d0d2dd5d07fbfd57309997c38da5281b9824b5" + +PR ="r3" +PV_omap3-pandora = "omap3-pandora+${PR}+gitr${SRCREV}" + +SRC_URI_omap3-pandora = "git://git.openpandora.org/pandora-u-boot.git;branch=pandora-2011.12;protocol=git \ +" + +UBOOT_MACHINE_omap3-pandora = "omap3_pandora_config" + +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/recipes-bsp/u-boot/u-boot_git.bbappend~ b/recipes-bsp/u-boot/u-boot_git.bbappend~ new file mode 100644 index 0000000..ad1be2f --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_git.bbappend~ @@ -0,0 +1,68 @@ +# Extends the core U-Boot GIT recipe +# to take the u-boot sources including the colibri stuff from our git repository +PR ="r1" +DEPENDS += "dtc-native" + +FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-git:" + +# Also overwries the license checksum to suit the updated text file in our U-Boot snapshot. +LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb" + +COMPATIBLE_MACHINE_colibri-t20 = "colibri-t20" +COMPATIBLE_MACHINE_colibri-t30 = "colibri-t30" + +DEFAULT_PREFERENCE_colibri-t20 = "1" +DEFAULT_PREFERENCE_colibri-t30 = "1" + +UBOOT_MACHINE_colibri-t20 = "colibri_t20_config" +UBOOT_MACHINE_colibri-t30 = "colibri_t30_config" + +#gitorious git +FILESPATHPKG =. "git:" +S="${WORKDIR}/git" +SRC_URI_COLIBRI = "git://gitorious.org/colibri-t20-embedded-linux-bsp/colibri_t20-u-boot.git;protocol=git;branch=master \ + file://u-boot-warning.patch \ +" +# file://remove-unused.patch \ +# file://u-boot_ap20warning.patch \ +# file://colibri_t30.patch \ +# file://bootaddr.patch \ +#" +SRCREV_colibri-t20 = "63c37d9e1d3ea97391576384d237728c44b5e33b" +SRCREV_colibri-t30 = "63c37d9e1d3ea97391576384d237728c44b5e33b" + +PV_colibri-t20 = "${PR}+gitr${SRCREV}" +PV_colibri-t30 = "${PR}+gitr${SRCREV}" + +#internal SVN +#S = "${WORKDIR}/bootloader/u-boot" +#SVN_REV = 218 +#SRC_URI_COLIBRI = "svn://tegradev:tegra123!@mammut.toradex.int:8090/colibri_tegra_linux/trunk;module=bootloader/u-boot;rev=${SVN_REV};proto=http \ +# file://remove-unused.patch " + +SRC_URI_colibri-t20 = "${SRC_URI_COLIBRI} " +SRC_URI_colibri-t30 = "${SRC_URI_COLIBRI} " + +#compile with -O2 not -Os as with gcc 4.5 the code does not work +do_configure_append() { + # sed -i -e 's/-Os/-O2 -fno-ipa-sra -fno-caller-saves -fno-schedule-insns/' ${S}/config.mk + sed -i -e 's/-Os/-O2 -fno-ipa-sra -fno-caller-saves -fno-schedule-insns -mno-unaligned-access/' ${S}/config.mk +} + + +#build additionally a u-boot binary which uses/stores its environment on an T20 external sd or mmc card +do_compile_append_colibri-t20() { + mv u-boot.bin u-boot-nand.bin + oe_runmake colibri_t20_sdboot_config + oe_runmake all + mv u-boot.bin u-boot-hsmmc.bin + mv u-boot-nand.bin u-boot.bin +} + +UBOOT_IMAGE ?= "u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin" +do_deploy_append_colibri-t20 () { + install ${S}/u-boot-hsmmc.bin ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin + package_stagefile_shell ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin + ln -sf u-boot-hsmmc-${MACHINE}-${PV}-${PR}.bin ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc.bin + package_stagefile_shell ${DEPLOY_DIR_IMAGE}/u-boot-hsmmc.bin +} -- cgit v1.2.3