From 73c9713cacf49f300e034bbb6b47df17caf29d4f Mon Sep 17 00:00:00 2001 From: Philip Balister Date: Mon, 4 Feb 2008 20:14:18 +0000 Subject: linux-davinci : Update defconfig. Add patch to support NAND flash. --- conf/machine/davinci-sffsdr.conf | 2 +- packages/linux/linux-davinci/davinci-nand.patch | 905 +++++++++++++++++++++ .../linux/linux-davinci/davinci-sffsdr/defconfig | 85 +- packages/linux/linux-davinci_2.6.x+git-davinci.bb | 1 + 4 files changed, 933 insertions(+), 60 deletions(-) create mode 100644 packages/linux/linux-davinci/davinci-nand.patch diff --git a/conf/machine/davinci-sffsdr.conf b/conf/machine/davinci-sffsdr.conf index ecff6fae13..faf86c5ed0 100644 --- a/conf/machine/davinci-sffsdr.conf +++ b/conf/machine/davinci-sffsdr.conf @@ -19,7 +19,7 @@ EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x20000 -n" #ROOT_FLASH_SIZE = "29" -MACHINE_FEATURES = "kernel26 pcmcia usbhost alsa" +MACHINE_FEATURES = "kernel26 serial" require conf/machine/include/tune-arm926ejs.inc diff --git a/packages/linux/linux-davinci/davinci-nand.patch b/packages/linux/linux-davinci/davinci-nand.patch new file mode 100644 index 0000000000..33e53cf095 --- /dev/null +++ b/packages/linux/linux-davinci/davinci-nand.patch @@ -0,0 +1,905 @@ +Index: linux-davinci/drivers/mtd/nand/davinci_nand.c +=================================================================== +--- /dev/null ++++ linux-davinci/drivers/mtd/nand/davinci_nand.c +@@ -0,0 +1,638 @@ ++/* ++ * linux/drivers/mtd/nand/davinci_nand.c ++ * ++ * NAND Flash Driver ++ * ++ * Copyright (C) 2006 Texas Instruments. ++ * ++ * ported to 2.6.23 (C) 2008 by ++ * Sander Huijsen ++ * Troy Kisky ++ * Dirk Behme ++ * ++ * -------------------------------------------------------------------------- ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ++ * -------------------------------------------------------------------------- ++ * ++ * Overview: ++ * This is a device driver for the NAND flash device found on the ++ * DaVinci board which utilizes the Samsung k9k2g08 part. ++ * ++ * Modifications: ++ * ver. 1.0: Feb 2005, Vinod/Sudhakar ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++ ++#include ++ ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++#define DAVINCI_NAND_ECC_MODE NAND_ECC_HW3_512 ++#else ++#define DAVINCI_NAND_ECC_MODE NAND_ECC_SOFT ++#endif ++ ++#define DRIVER_NAME "davinci_nand" ++ ++static struct clk *nand_clock; ++static void __iomem *nand_vaddr; ++ ++/* ++ * MTD structure for DaVinici board ++ */ ++static struct mtd_info *nand_davinci_mtd; ++ ++#ifdef CONFIG_MTD_PARTITIONS ++const char *part_probes[] = { "cmdlinepart", NULL }; ++#endif ++ ++static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; ++ ++/* BB marker is byte 5 in OOB of page 0 */ ++static struct nand_bbt_descr davinci_memorybased_small = { ++ .options = NAND_BBT_SCAN2NDPAGE, ++ .offs = 5, ++ .len = 1, ++ .pattern = scan_ff_pattern ++}; ++ ++/* BB marker is bytes 0-1 in OOB of page 0 */ ++static struct nand_bbt_descr davinci_memorybased_large = { ++ .options = 0, ++ .offs = 0, ++ .len = 2, ++ .pattern = scan_ff_pattern ++}; ++ ++inline unsigned int davinci_nand_readl(int offset) ++{ ++ return davinci_readl(DAVINCI_ASYNC_EMIF_CNTRL_BASE + offset); ++} ++ ++inline void davinci_nand_writel(unsigned long value, int offset) ++{ ++ davinci_writel(value, DAVINCI_ASYNC_EMIF_CNTRL_BASE + offset); ++} ++ ++/* ++ * Hardware specific access to control-lines ++ */ ++static void nand_davinci_hwcontrol(struct mtd_info *mtd, int cmd, ++ unsigned int ctrl) ++{ ++ struct nand_chip *chip = mtd->priv; ++ u32 IO_ADDR_W = (u32)chip->IO_ADDR_W; ++ ++ /* Did the control lines change? */ ++ if (ctrl & NAND_CTRL_CHANGE) { ++ IO_ADDR_W &= ~(MASK_ALE|MASK_CLE); ++ ++ if ((ctrl & NAND_CTRL_CLE) == NAND_CTRL_CLE) ++ IO_ADDR_W |= MASK_CLE; ++ else if ((ctrl & NAND_CTRL_ALE) == NAND_CTRL_ALE) ++ IO_ADDR_W |= MASK_ALE; ++ ++ chip->IO_ADDR_W = (void __iomem *)IO_ADDR_W; ++ } ++ ++ if (cmd != NAND_CMD_NONE) ++ writeb(cmd, chip->IO_ADDR_W); ++} ++ ++static void nand_davinci_select_chip(struct mtd_info *mtd, int chip) ++{ ++ /* do nothing */ ++} ++ ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++static void nand_davinci_enable_hwecc(struct mtd_info *mtd, int mode) ++{ ++ u32 retval; ++ ++ /* Reset ECC hardware */ ++ retval = davinci_nand_readl(NANDF1ECC_OFFSET); ++ ++ /* Restart ECC hardware */ ++ retval = davinci_nand_readl(NANDFCR_OFFSET); ++ retval |= (1 << 8); ++ davinci_nand_writel(retval, NANDFCR_OFFSET); ++} ++ ++/* ++ * Read DaVinci ECC register ++ */ ++static u32 nand_davinci_readecc(struct mtd_info *mtd) ++{ ++ /* Read register ECC and clear it */ ++ return davinci_nand_readl(NANDF1ECC_OFFSET); ++} ++ ++/* ++ * Read DaVinci ECC registers and rework into MTD format ++ */ ++static int nand_davinci_calculate_ecc(struct mtd_info *mtd, ++ const u_char *dat, u_char *ecc_code) ++{ ++ unsigned int ecc_val = nand_davinci_readecc(mtd); ++ /* squeeze 0 middle bits out so that it fits in 3 bytes */ ++ unsigned int tmp = (ecc_val&0x0fff)|((ecc_val&0x0fff0000)>>4); ++ /* invert so that erased block ecc is correct */ ++ tmp = ~tmp; ++ ecc_code[0] = (u_char)(tmp); ++ ecc_code[1] = (u_char)(tmp >> 8); ++ ecc_code[2] = (u_char)(tmp >> 16); ++ ++ return 0; ++} ++ ++static int nand_davinci_correct_data(struct mtd_info *mtd, u_char *dat, ++ u_char *read_ecc, u_char *calc_ecc) ++{ ++ struct nand_chip *chip = mtd->priv; ++ u_int32_t eccNand = read_ecc[0] | (read_ecc[1] << 8) | ++ (read_ecc[2] << 16); ++ u_int32_t eccCalc = calc_ecc[0] | (calc_ecc[1] << 8) | ++ (calc_ecc[2] << 16); ++ u_int32_t diff = eccCalc ^ eccNand; ++ ++ if (diff) { ++ if ((((diff>>12)^diff) & 0xfff) == 0xfff) { ++ /* Correctable error */ ++ if ((diff>>(12+3)) < chip->ecc.size) { ++ dat[diff>>(12+3)] ^= (1 << ((diff>>12)&7)); ++ return 1; ++ } else { ++ return -1; ++ } ++ } else if (!(diff & (diff-1))) { ++ /* Single bit ECC error in the ECC itself, ++ nothing to fix */ ++ return 1; ++ } else { ++ /* Uncorrectable error */ ++ return -1; ++ } ++ ++ } ++ return 0; ++} ++#endif ++ ++/* ++ * Read OOB data from flash. ++ */ ++static int read_oob_and_check(struct mtd_info *mtd, loff_t offs, uint8_t *buf, ++ struct nand_bbt_descr *bd) ++{ ++ int i, ret; ++ int page; ++ struct nand_chip *chip = mtd->priv; ++ ++ /* Calculate page address from offset */ ++ page = (int)(offs >> chip->page_shift); ++ page &= chip->pagemask; ++ ++ /* Read OOB data from flash */ ++ ret = chip->ecc.read_oob(mtd, chip, page, 1); ++ if (ret < 0) ++ return ret; ++ ++ /* Copy read OOB data to the buffer*/ ++ memcpy(buf, chip->oob_poi, mtd->oobsize); ++ ++ /* Check pattern against BBM in OOB area */ ++ for (i = 0; i < bd->len; i++) { ++ if (buf[bd->offs + i] != bd->pattern[i]) ++ return 1; ++ } ++ return 0; ++} ++ ++/* ++ * Fill in the memory based Bad Block Table (BBT). ++ */ ++static int nand_davinci_memory_bbt(struct mtd_info *mtd, ++ struct nand_bbt_descr *bd) ++{ ++ int i, numblocks; ++ int startblock = 0; ++ loff_t from = 0; ++ struct nand_chip *chip = mtd->priv; ++ int blocksize = 1 << chip->bbt_erase_shift; ++ uint8_t *buf = chip->buffers->databuf; ++ int len = bd->options & NAND_BBT_SCAN2NDPAGE ? 2 : 1; ++ ++ /* -numblocks- is 2 times the actual number of eraseblocks */ ++ numblocks = mtd->size >> (chip->bbt_erase_shift - 1); ++ ++ /* Now loop through all eraseblocks in the flash */ ++ for (i = startblock; i < numblocks; i += 2) { ++ int j, ret; ++ int offs = from; ++ ++ /* If NAND_BBT_SCAN2NDPAGE flag is set in bd->options, ++ * also each 2nd page of an eraseblock is checked ++ * for a Bad Block Marker. In that case, len equals 2. ++ */ ++ for (j = 0; j < len; j++) { ++ /* Read OOB data and check pattern */ ++ ret = read_oob_and_check(mtd, from, buf, bd); ++ if (ret < 0) ++ return ret; ++ ++ /* Check pattern for bad block markers */ ++ if (ret) { ++ /* Mark bad block by writing 0b11 in the ++ table */ ++ chip->bbt[i >> 3] |= 0x03 << (i & 0x6); ++ ++ printk(KERN_WARNING "Bad eraseblock %d at " \ ++ "0x%08x\n", i >> 1, ++ (unsigned int)from); ++ ++ mtd->ecc_stats.badblocks++; ++ break; ++ } ++ offs += mtd->writesize; ++ } ++ ++ /* Make -from- point to next eraseblock */ ++ from += blocksize; ++ } ++ ++ printk(KERN_NOTICE "Bad block scan: %d out of %d blocks are bad.\n", ++ mtd->ecc_stats.badblocks, numblocks>>1); ++ ++ return 0; ++} ++ ++/* ++ * This function creates a memory based bad block table (BBT). ++ * It is largely based on the standard BBT function, but all ++ * unnecessary junk is thrown out to speed up. ++ */ ++static int nand_davinci_scan_bbt(struct mtd_info *mtd) ++{ ++ struct nand_chip *chip = mtd->priv; ++ struct nand_bbt_descr *bd; ++ int len, ret = 0; ++ ++ chip->bbt_td = NULL; ++ chip->bbt_md = NULL; ++ ++ /* pagesize determines location of BBM */ ++ if (mtd->writesize > 512) ++ bd = &davinci_memorybased_large; ++ else ++ bd = &davinci_memorybased_small; ++ ++ chip->badblock_pattern = bd; ++ ++ /* Use 2 bits per page meaning 4 page markers per byte */ ++ len = mtd->size >> (chip->bbt_erase_shift + 2); ++ ++ /* Allocate memory (2bit per block) and clear the memory bad block ++ table */ ++ chip->bbt = kzalloc(len, GFP_KERNEL); ++ if (!chip->bbt) { ++ printk(KERN_ERR "nand_davinci_scan_bbt: Out of memory\n"); ++ return -ENOMEM; ++ } ++ ++ /* Now try to fill in the BBT */ ++ ret = nand_davinci_memory_bbt(mtd, bd); ++ if (ret) { ++ printk(KERN_ERR "nand_davinci_scan_bbt: " ++ "Can't scan flash and build the RAM-based BBT\n"); ++ ++ kfree(chip->bbt); ++ chip->bbt = NULL; ++ } ++ ++ return ret; ++} ++ ++/* ++ * Read from memory register: we can read 4 bytes at a time. ++ * The hardware takes care of actually reading the NAND flash. ++ */ ++static void nand_davinci_read_buf(struct mtd_info *mtd, uint8_t *buf, int len) ++{ ++ int i; ++ int num_words = len >> 2; ++ u32 *p = (u32 *)buf; ++ struct nand_chip *chip = mtd->priv; ++ ++ for (i = 0; i < num_words; i++) ++ p[i] = readl(chip->IO_ADDR_R); ++} ++ ++/* ++ * Check hardware register for wait status. Returns 1 if device is ready, ++ * 0 if it is still busy. ++ */ ++static int nand_davinci_dev_ready(struct mtd_info *mtd) ++{ ++ return (davinci_nand_readl(NANDFSR_OFFSET) & NAND_BUSY_FLAG); ++} ++ ++static void nand_davinci_set_eccsize(struct nand_chip *chip) ++{ ++ chip->ecc.size = 256; ++ ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++ switch (chip->ecc.mode) { ++ case NAND_ECC_HW12_2048: ++ chip->ecc.size = 2048; ++ break; ++ ++ case NAND_ECC_HW3_512: ++ case NAND_ECC_HW6_512: ++ case NAND_ECC_HW8_512: ++ chip->ecc.size = 512; ++ break; ++ ++ case NAND_ECC_HW3_256: ++ default: ++ /* do nothing */ ++ break; ++ } ++#endif ++} ++ ++static void nand_davinci_set_eccbytes(struct nand_chip *chip) ++{ ++ chip->ecc.bytes = 3; ++ ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++ switch (chip->ecc.mode) { ++ case NAND_ECC_HW12_2048: ++ chip->ecc.bytes += 4; ++ case NAND_ECC_HW8_512: ++ chip->ecc.bytes += 2; ++ case NAND_ECC_HW6_512: ++ chip->ecc.bytes += 3; ++ case NAND_ECC_HW3_512: ++ case NAND_ECC_HW3_256: ++ default: ++ /* do nothing */ ++ break; ++ } ++#endif ++} ++ ++static void __devinit nand_davinci_flash_init(void) ++{ ++ u32 regval, tmp; ++ ++ /* Check for correct pin mux, reconfigure if necessary */ ++ tmp = davinci_readl(DAVINCI_SYSTEM_MODULE_BASE + PINMUX0); ++ ++ if ((tmp & 0x20020C1F) != 0x00000C1F) { ++ /* Disable HPI and ATA mux */ ++ davinci_mux_peripheral(DAVINCI_MUX_HPIEN, 0); ++ davinci_mux_peripheral(DAVINCI_MUX_ATAEN, 0); ++ ++ /* Enable VLYNQ and AEAW */ ++ davinci_mux_peripheral(DAVINCI_MUX_AEAW0, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_AEAW1, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_AEAW2, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_AEAW3, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_AEAW4, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_VLSCREN, 1); ++ davinci_mux_peripheral(DAVINCI_MUX_VLYNQEN, 1); ++ ++ regval = davinci_readl(DAVINCI_SYSTEM_MODULE_BASE + PINMUX0); ++ ++ printk(KERN_WARNING "Warning: MUX config for NAND: Set " \ ++ "PINMUX0 reg to 0x%08x, was 0x%08x, should be done " \ ++ "by bootloader.\n", regval, tmp); ++ } ++ ++ regval = davinci_nand_readl(AWCCR_OFFSET); ++ regval |= 0x10000000; ++ davinci_nand_writel(regval, AWCCR_OFFSET); ++ ++ /*------------------------------------------------------------------* ++ * NAND FLASH CHIP TIMEOUT @ 459 MHz * ++ * * ++ * AEMIF.CLK freq = PLL1/6 = 459/6 = 76.5 MHz * ++ * AEMIF.CLK period = 1/76.5 MHz = 13.1 ns * ++ * * ++ *------------------------------------------------------------------*/ ++ regval = 0 ++ | (0 << 31) /* selectStrobe */ ++ | (0 << 30) /* extWait */ ++ | (1 << 26) /* writeSetup 10 ns */ ++ | (3 << 20) /* writeStrobe 40 ns */ ++ | (1 << 17) /* writeHold 10 ns */ ++ | (0 << 13) /* readSetup 10 ns */ ++ | (3 << 7) /* readStrobe 60 ns */ ++ | (0 << 4) /* readHold 10 ns */ ++ | (3 << 2) /* turnAround ?? ns */ ++ | (0 << 0) /* asyncSize 8-bit bus */ ++ ; ++ tmp = davinci_nand_readl(A1CR_OFFSET); ++ if (tmp != regval) { ++ printk(KERN_WARNING "Warning: NAND config: Set A1CR " \ ++ "reg to 0x%08x, was 0x%08x, should be done by " \ ++ "bootloader.\n", regval, tmp); ++ davinci_nand_writel(regval, A1CR_OFFSET); /* 0x0434018C */ ++ } ++ ++ davinci_nand_writel(0x00000101, NANDFCR_OFFSET); ++} ++ ++/* ++ * Main initialization routine ++ */ ++int __devinit nand_davinci_probe(struct platform_device *pdev) ++{ ++ struct nand_platform_data *pdata = pdev->dev.platform_data; ++ struct resource *res = pdev->resource; ++ struct nand_chip *chip; ++ struct device *dev = NULL; ++ u32 nand_rev_code; ++#ifdef CONFIG_MTD_CMDLINE_PARTS ++ char *master_name; ++ int mtd_parts_nb = 0; ++ struct mtd_partition *mtd_parts = 0; ++#endif ++ ++ nand_clock = clk_get(dev, "AEMIFCLK"); ++ if (IS_ERR(nand_clock)) { ++ printk(KERN_ERR "Error %ld getting AEMIFCLK clock?\n", ++ PTR_ERR(nand_clock)); ++ return -1; ++ } ++ ++ clk_enable(nand_clock); ++ ++ /* Allocate memory for MTD device structure and private data */ ++ nand_davinci_mtd = kmalloc(sizeof(struct mtd_info) + ++ sizeof(struct nand_chip), GFP_KERNEL); ++ ++ if (!nand_davinci_mtd) { ++ printk(KERN_ERR "Unable to allocate davinci NAND MTD device " \ ++ "structure.\n"); ++ clk_disable(nand_clock); ++ return -ENOMEM; ++ } ++ ++ /* Get pointer to private data */ ++ chip = (struct nand_chip *) (&nand_davinci_mtd[1]); ++ ++ /* Initialize structures */ ++ memset((char *)nand_davinci_mtd, 0, sizeof(struct mtd_info)); ++ memset((char *)chip, 0, sizeof(struct nand_chip)); ++ ++ /* Link the private data with the MTD structure */ ++ nand_davinci_mtd->priv = chip; ++ ++ nand_rev_code = davinci_nand_readl(NRCSR_OFFSET); ++ ++ printk("DaVinci NAND Controller rev. %d.%d\n", ++ (nand_rev_code >> 8) & 0xff, nand_rev_code & 0xff); ++ ++ nand_vaddr = ioremap(res->start, res->end - res->start); ++ if (nand_vaddr == NULL) { ++ printk(KERN_ERR "DaVinci NAND: ioremap failed.\n"); ++ clk_disable(nand_clock); ++ kfree(nand_davinci_mtd); ++ return -ENOMEM; ++ } ++ ++ chip->IO_ADDR_R = (void __iomem *)nand_vaddr; ++ chip->IO_ADDR_W = (void __iomem *)nand_vaddr; ++ chip->chip_delay = 0; ++ chip->select_chip = nand_davinci_select_chip; ++ chip->options = 0; ++ chip->ecc.mode = DAVINCI_NAND_ECC_MODE; ++ ++ /* Set ECC size and bytes */ ++ nand_davinci_set_eccsize(chip); ++ nand_davinci_set_eccbytes(chip); ++ ++ /* Set address of hardware control function */ ++ chip->cmd_ctrl = nand_davinci_hwcontrol; ++ chip->dev_ready = nand_davinci_dev_ready; ++ ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++ chip->ecc.calculate = nand_davinci_calculate_ecc; ++ chip->ecc.correct = nand_davinci_correct_data; ++ chip->ecc.hwctl = nand_davinci_enable_hwecc; ++#endif ++ ++ /* Speed up the read buffer */ ++ chip->read_buf = nand_davinci_read_buf; ++ ++ /* Speed up the creation of the bad block table */ ++ chip->scan_bbt = nand_davinci_scan_bbt; ++ ++ nand_davinci_flash_init(); ++ ++ nand_davinci_mtd->owner = THIS_MODULE; ++ ++ /* Scan to find existence of the device */ ++ if (nand_scan(nand_davinci_mtd, 1)) { ++ printk(KERN_ERR "Chip Select is not set for NAND\n"); ++ clk_disable(nand_clock); ++ kfree(nand_davinci_mtd); ++ return -ENXIO; ++ } ++ ++ /* Register the partitions */ ++ add_mtd_partitions(nand_davinci_mtd, pdata->parts, pdata->nr_parts); ++ ++#ifdef CONFIG_MTD_CMDLINE_PARTS ++ /* Set nand_davinci_mtd->name = 0 temporarily */ ++ master_name = nand_davinci_mtd->name; ++ nand_davinci_mtd->name = (char *)0; ++ ++ /* nand_davinci_mtd->name == 0, means: don't bother checking ++ */ ++ mtd_parts_nb = parse_mtd_partitions(nand_davinci_mtd, part_probes, ++ &mtd_parts, 0); ++ ++ /* Restore nand_davinci_mtd->name */ ++ nand_davinci_mtd->name = master_name; ++ ++ add_mtd_partitions(nand_davinci_mtd, mtd_parts, mtd_parts_nb); ++#endif ++ ++ return 0; ++} ++ ++/* ++ * Clean up routine ++ */ ++static int nand_davinci_remove(struct platform_device *pdev) ++{ ++ clk_disable(nand_clock); ++ ++ if (nand_vaddr) ++ iounmap(nand_vaddr); ++ ++ /* Release resources, unregister device */ ++ nand_release(nand_davinci_mtd); ++ ++ /* Free the MTD device structure */ ++ kfree(nand_davinci_mtd); ++ ++ return 0; ++} ++ ++ ++static struct platform_driver nand_davinci_driver = { ++ .probe = nand_davinci_probe, ++ .remove = nand_davinci_remove, ++ .driver = { ++ .name = DRIVER_NAME, ++ }, ++}; ++ ++static int __init nand_davinci_init(void) ++{ ++ return platform_driver_register(&nand_davinci_driver); ++} ++module_init(nand_davinci_init); ++ ++#ifdef MODULE ++static void __exit nand_davinci_exit(void) ++{ ++ platform_driver_unregister(&nand_davinci_driver); ++} ++module_exit(nand_davinci_exit); ++#endif ++ ++MODULE_ALIAS(DRIVER_NAME); ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Texas Instruments"); ++MODULE_DESCRIPTION("Board-specific glue layer for NAND flash on davinci" \ ++ "board"); +Index: linux-davinci/drivers/mtd/nand/Makefile +=================================================================== +--- linux-davinci.orig/drivers/mtd/nand/Makefile ++++ linux-davinci/drivers/mtd/nand/Makefile +@@ -29,5 +29,6 @@ obj-$(CONFIG_MTD_NAND_AT91) += at91_nan + obj-$(CONFIG_MTD_NAND_CM_X270) += cmx270_nand.o + obj-$(CONFIG_MTD_NAND_BASLER_EXCITE) += excite_nandflash.o + obj-$(CONFIG_MTD_NAND_PLATFORM) += plat_nand.o ++obj-$(CONFIG_MTD_NAND_DAVINCI) += davinci_nand.o + + nand-objs := nand_base.o nand_bbt.o +Index: linux-davinci/drivers/mtd/nand/Kconfig +=================================================================== +--- linux-davinci.orig/drivers/mtd/nand/Kconfig ++++ linux-davinci/drivers/mtd/nand/Kconfig +@@ -293,5 +293,17 @@ config MTD_NAND_PLATFORM + devices. You will need to provide platform-specific functions + via platform_data. + ++config MTD_NAND_DAVINCI ++ tristate "NAND Flash device on DaVinci SoC" ++ depends on MTD_NAND ++ select MTD_PARTITIONS ++ help ++ Support for NAND flash on Texas Instruments DaVinci SoC. ++ ++config NAND_FLASH_HW_ECC ++ bool "Hardware ECC Support on NAND Device for DaVinci" ++ depends on MTD_NAND_DAVINCI ++ help ++ Support for Hardware ECC on NAND device for DaVinci. + + endif # MTD_NAND +Index: linux-davinci/include/asm-arm/arch-davinci/nand.h +=================================================================== +--- /dev/null ++++ linux-davinci/include/asm-arm/arch-davinci/nand.h +@@ -0,0 +1,45 @@ ++/* ++ * include/asm-arm/arch-davinci/nand.h ++ * ++ * Copyright (C) 2006 Texas Instruments. ++ * ++ * ported to 2.6.23 (C) 2008 by ++ * Sander Huijsen ++ * Troy Kisky ++ * Dirk Behme ++ * ++ * -------------------------------------------------------------------------- ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ++ * -------------------------------------------------------------------------- ++ * ++ */ ++ ++#ifndef __ARCH_ARM_DAVINCI_NAND_H ++#define __ARCH_ARM_DAVINCI_NAND_H ++ ++#define NRCSR_OFFSET 0x00 ++#define AWCCR_OFFSET 0x04 ++#define A1CR_OFFSET 0x10 ++#define NANDFCR_OFFSET 0x60 ++#define NANDFSR_OFFSET 0x64 ++#define NANDF1ECC_OFFSET 0x70 ++ ++#define MASK_ALE 0x0A ++#define MASK_CLE 0x10 ++ ++#define NAND_BUSY_FLAG 0x01 ++ ++#endif /* __ARCH_ARM_DAVINCI_NAND_H */ +Index: linux-davinci/arch/arm/mach-davinci/mux.c +=================================================================== +--- linux-davinci.orig/arch/arm/mach-davinci/mux.c ++++ linux-davinci/arch/arm/mach-davinci/mux.c +@@ -15,10 +15,6 @@ + + #include + +-/* System control register offsets */ +-#define PINMUX0 0x00 +-#define PINMUX1 0x04 +- + static DEFINE_SPINLOCK(mux_lock); + + void davinci_mux_peripheral(unsigned int mux, unsigned int enable) +Index: linux-davinci/include/asm-arm/arch-davinci/mux.h +=================================================================== +--- linux-davinci.orig/include/asm-arm/arch-davinci/mux.h ++++ linux-davinci/include/asm-arm/arch-davinci/mux.h +@@ -11,6 +11,11 @@ + #ifndef __ASM_ARCH_MUX_H + #define __ASM_ARCH_MUX_H + ++/* System control register offsets */ ++#define PINMUX0 0x00 ++#define PINMUX1 0x04 ++ ++/* System control register bits */ + #define DAVINCI_MUX_AEAW0 0 + #define DAVINCI_MUX_AEAW1 1 + #define DAVINCI_MUX_AEAW2 2 +Index: linux-davinci/include/linux/mtd/nand.h +=================================================================== +--- linux-davinci.orig/include/linux/mtd/nand.h ++++ linux-davinci/include/linux/mtd/nand.h +@@ -123,6 +123,13 @@ typedef enum { + NAND_ECC_SOFT, + NAND_ECC_HW, + NAND_ECC_HW_SYNDROME, ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++ NAND_ECC_HW3_256, ++ NAND_ECC_HW3_512, ++ NAND_ECC_HW6_512, ++ NAND_ECC_HW8_512, ++ NAND_ECC_HW12_2048, ++#endif + } nand_ecc_modes_t; + + /* +Index: linux-davinci/drivers/mtd/nand/nand_base.c +=================================================================== +--- linux-davinci.orig/drivers/mtd/nand/nand_base.c ++++ linux-davinci/drivers/mtd/nand/nand_base.c +@@ -2456,6 +2456,13 @@ int nand_scan_tail(struct mtd_info *mtd) + chip->ecc.write_page_raw = nand_write_page_raw; + + switch (chip->ecc.mode) { ++#ifdef CONFIG_NAND_FLASH_HW_ECC ++ case NAND_ECC_HW12_2048: ++ case NAND_ECC_HW8_512: ++ case NAND_ECC_HW6_512: ++ case NAND_ECC_HW3_512: ++ case NAND_ECC_HW3_256: ++#endif + case NAND_ECC_HW: + /* Use standard hwecc read page function ? */ + if (!chip->ecc.read_page) +Index: linux-davinci/arch/arm/mach-davinci/board-evm.c +=================================================================== +--- linux-davinci.orig/arch/arm/mach-davinci/board-evm.c ++++ linux-davinci/arch/arm/mach-davinci/board-evm.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + +@@ -27,6 +28,7 @@ + #include + + #include ++#include + #include + + /* other misc. init functions */ +@@ -38,7 +40,7 @@ void __init davinci_init_common_hw(void) + /* NOR Flash base address set to CS0 by default */ + #define NOR_FLASH_PHYS 0x02000000 + +-static struct mtd_partition davinci_evm_partitions[] = { ++static struct mtd_partition davinci_evm_norflash_partitions[] = { + /* bootloader (U-Boot, etc) in first 4 sectors */ + { + .name = "bootloader", +@@ -69,30 +71,63 @@ static struct mtd_partition davinci_evm_ + } + }; + +-static struct physmap_flash_data davinci_evm_flash_data = { ++static struct physmap_flash_data davinci_evm_norflash_data = { + .width = 2, +- .parts = davinci_evm_partitions, +- .nr_parts = ARRAY_SIZE(davinci_evm_partitions), ++ .parts = davinci_evm_norflash_partitions, ++ .nr_parts = ARRAY_SIZE(davinci_evm_norflash_partitions), + }; + + /* NOTE: CFI probe will correctly detect flash part as 32M, but EMIF + * limits addresses to 16M, so using addresses past 16M will wrap */ +-static struct resource davinci_evm_flash_resource = { ++static struct resource davinci_evm_norflash_resource = { + .start = NOR_FLASH_PHYS, + .end = NOR_FLASH_PHYS + SZ_16M - 1, + .flags = IORESOURCE_MEM, + }; + +-static struct platform_device davinci_evm_flash_device = { ++static struct platform_device davinci_evm_norflash_device = { + .name = "physmap-flash", + .id = 0, + .dev = { +- .platform_data = &davinci_evm_flash_data, ++ .platform_data = &davinci_evm_norflash_data, + }, + .num_resources = 1, +- .resource = &davinci_evm_flash_resource, ++ .resource = &davinci_evm_norflash_resource, + }; + ++#if defined(CONFIG_MTD_NAND_DAVINCI) || defined(CONFIG_MTD_NAND_DAVINCI_MODULE) ++struct mtd_partition davinci_evm_nandflash_partition[] = { ++ /* 5 MB space at the beginning for bootloader and kernel */ ++ { ++ .name = "NAND filesystem", ++ .offset = 5 * SZ_1M, ++ .size = MTDPART_SIZ_FULL, ++ .mask_flags = 0, ++ } ++}; ++ ++static struct nand_platform_data davinci_evm_nandflash_data = { ++ .parts = davinci_evm_nandflash_partition, ++ .nr_parts = ARRAY_SIZE(davinci_evm_nandflash_partition), ++}; ++ ++static struct resource davinci_evm_nandflash_resource = { ++ .start = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE, ++ .end = DAVINCI_ASYNC_EMIF_DATA_CE0_BASE + SZ_16K - 1, ++ .flags = IORESOURCE_MEM, ++}; ++ ++static struct platform_device davinci_evm_nandflash_device = { ++ .name = "davinci_nand", ++ .id = 0, ++ .dev = { ++ .platform_data = &davinci_evm_nandflash_data, ++ }, ++ .num_resources = 1, ++ .resource = &davinci_evm_nandflash_resource, ++}; ++#endif ++ + #if defined(CONFIG_FB_DAVINCI) || defined(CONFIG_FB_DAVINCI_MODULE) + + static u64 davinci_fb_dma_mask = DMA_32BIT_MASK; +@@ -168,7 +203,10 @@ static struct platform_device rtc_dev = + }; + + static struct platform_device *davinci_evm_devices[] __initdata = { +- &davinci_evm_flash_device, ++ &davinci_evm_norflash_device, ++#if defined(CONFIG_MTD_NAND_DAVINCI) || defined(CONFIG_MTD_NAND_DAVINCI_MODULE) ++ &davinci_evm_nandflash_device, ++#endif + #if defined(CONFIG_FB_DAVINCI) || defined(CONFIG_FB_DAVINCI_MODULE) + &davinci_fb_device, + #endif diff --git a/packages/linux/linux-davinci/davinci-sffsdr/defconfig b/packages/linux/linux-davinci/davinci-sffsdr/defconfig index ac53caffc9..0d5155f32a 100644 --- a/packages/linux/linux-davinci/davinci-sffsdr/defconfig +++ b/packages/linux/linux-davinci/davinci-sffsdr/defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.23-davinci1 -# Sat Oct 20 12:59:22 2007 +# Sun Feb 3 08:30:51 2008 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -241,7 +241,8 @@ CONFIG_CMDLINE="" # # At least one emulation must be selected # -# CONFIG_FPE_NWFPE is not set +CONFIG_FPE_NWFPE=y +# CONFIG_FPE_NWFPE_XP is not set # CONFIG_FPE_FASTFPE is not set # CONFIG_VFP is not set @@ -442,7 +443,10 @@ CONFIG_MTD_CFI_UTIL=y # Mapping drivers for chip access # # CONFIG_MTD_COMPLEX_MAPPINGS is not set -# CONFIG_MTD_PHYSMAP is not set +CONFIG_MTD_PHYSMAP=y +CONFIG_MTD_PHYSMAP_START=0x8000000 +CONFIG_MTD_PHYSMAP_LEN=0x0 +CONFIG_MTD_PHYSMAP_BANKWIDTH=2 # CONFIG_MTD_ARM_INTEGRATOR is not set # CONFIG_MTD_PLATRAM is not set @@ -461,13 +465,15 @@ CONFIG_MTD_CFI_UTIL=y # CONFIG_MTD_DOC2001 is not set # CONFIG_MTD_DOC2001PLUS is not set CONFIG_MTD_NAND=y -# CONFIG_MTD_NAND_VERIFY_WRITE is not set +CONFIG_MTD_NAND_VERIFY_WRITE=y # CONFIG_MTD_NAND_ECC_SMC is not set # CONFIG_MTD_NAND_MUSEUM_IDS is not set CONFIG_MTD_NAND_IDS=y # CONFIG_MTD_NAND_DISKONCHIP is not set # CONFIG_MTD_NAND_NANDSIM is not set -CONFIG_MTD_NAND_PLATFORM=y +# CONFIG_MTD_NAND_PLATFORM is not set +CONFIG_MTD_NAND_DAVINCI=y +CONFIG_NAND_FLASH_HW_ECC=y # CONFIG_MTD_ONENAND is not set # @@ -592,10 +598,7 @@ CONFIG_INPUT=y # # Userland interfaces # -CONFIG_INPUT_MOUSEDEV=y -CONFIG_INPUT_MOUSEDEV_PSAUX=y -CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_MOUSEDEV is not set # CONFIG_INPUT_JOYDEV is not set # CONFIG_INPUT_TSDEV is not set CONFIG_INPUT_EVDEV=m @@ -605,10 +608,10 @@ CONFIG_INPUT_EVDEV=m # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y -CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_ATKBD is not set # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set -CONFIG_KEYBOARD_XTKBD=y +# CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set # CONFIG_KEYBOARD_STOWAWAY is not set # CONFIG_KEYBOARD_GPIO is not set @@ -623,7 +626,7 @@ CONFIG_KEYBOARD_XTKBD=y # CONFIG_SERIO=y CONFIG_SERIO_SERPORT=y -CONFIG_SERIO_LIBPS2=y +# CONFIG_SERIO_LIBPS2 is not set # CONFIG_SERIO_RAW is not set # CONFIG_GAMEPORT is not set @@ -820,46 +823,14 @@ CONFIG_DAB=y # # CONFIG_DISPLAY_SUPPORT is not set # CONFIG_VGASTATE is not set -CONFIG_VIDEO_OUTPUT_CONTROL=m -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -# CONFIG_FB_DDC is not set -# CONFIG_FB_CFB_FILLRECT is not set -# CONFIG_FB_CFB_COPYAREA is not set -# CONFIG_FB_CFB_IMAGEBLIT is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_SYS_FOPS is not set -CONFIG_FB_DEFERRED_IO=y -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -# CONFIG_FB_MODE_HELPERS is not set -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_S1D13XXX is not set -CONFIG_FB_DAVINCI=y -# CONFIG_FB_VIRTUAL is not set +# CONFIG_VIDEO_OUTPUT_CONTROL is not set +# CONFIG_FB is not set # # Console display driver support # # CONFIG_VGA_CONSOLE is not set CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -CONFIG_LOGO=y -CONFIG_LOGO_LINUX_MONO=y -CONFIG_LOGO_LINUX_VGA16=y -CONFIG_LOGO_LINUX_CLUT224=y # # Sound @@ -874,10 +845,7 @@ CONFIG_SOUND=y # # Open Sound System # -CONFIG_SOUND_PRIME=y -# CONFIG_SOUND_MSNDCLAS is not set -# CONFIG_SOUND_MSNDPIN is not set -# CONFIG_SOUND_DAVINCI is not set +# CONFIG_SOUND_PRIME is not set CONFIG_HID_SUPPORT=y CONFIG_HID=y # CONFIG_HID_DEBUG is not set @@ -1027,20 +995,20 @@ CONFIG_USB_FILE_STORAGE=m # CONFIG_USB_FILE_STORAGE_TEST is not set CONFIG_USB_G_SERIAL=m # CONFIG_USB_MIDI_GADGET is not set -CONFIG_MMC=y +CONFIG_MMC=m # CONFIG_MMC_DEBUG is not set # CONFIG_MMC_UNSAFE_RESUME is not set # # MMC/SD Card Drivers # -CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_BOUNCE=y # # MMC/SD Host Controller Drivers # -# CONFIG_MMC_DAVINCI is not set +CONFIG_MMC_DAVINCI=m CONFIG_RTC_LIB=y # CONFIG_RTC_CLASS is not set @@ -1100,9 +1068,9 @@ CONFIG_AUTOFS4_FS=m # # DOS/FAT/NT Filesystems # -CONFIG_FAT_FS=y -CONFIG_MSDOS_FS=y -CONFIG_VFAT_FS=y +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # CONFIG_NTFS_FS is not set @@ -1138,7 +1106,7 @@ CONFIG_JFFS2_FS_WRITEBUFFER=y CONFIG_JFFS2_ZLIB=y CONFIG_JFFS2_RTIME=y # CONFIG_JFFS2_RUBIN is not set -CONFIG_CRAMFS=y +# CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set @@ -1167,8 +1135,7 @@ CONFIG_SUNRPC=y # CONFIG_SUNRPC_BIND34 is not set # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set -CONFIG_SMB_FS=m -# CONFIG_SMB_NLS_DEFAULT is not set +# CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set diff --git a/packages/linux/linux-davinci_2.6.x+git-davinci.bb b/packages/linux/linux-davinci_2.6.x+git-davinci.bb index 9228d1ffda..916b4e252c 100644 --- a/packages/linux/linux-davinci_2.6.x+git-davinci.bb +++ b/packages/linux/linux-davinci_2.6.x+git-davinci.bb @@ -7,6 +7,7 @@ COMPATIBLE_MACHINE = "(davinci-dvevm|davinci-sffsdr)" SRC_URI = "git://source.mvista.com/git/linux-davinci-2.6.git;protocol=git \ file://binutils-buildid-arm.patch;patch=1 \ + file://davinci-nand.patch;patch=1 \ file://defconfig" S = "${WORKDIR}/git" -- cgit v1.2.3 From 8e8193ab49d80f1ff3734d8c5a8af9f9ad59d567 Mon Sep 17 00:00:00 2001 From: Rod Whitby Date: Sat, 9 Feb 2008 20:21:45 +0000 Subject: slugos-packages: demoted eciadsl --- packages/meta/slugos-packages.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/meta/slugos-packages.bb b/packages/meta/slugos-packages.bb index 6e8d9e4089..5d63a71a48 100644 --- a/packages/meta/slugos-packages.bb +++ b/packages/meta/slugos-packages.bb @@ -5,7 +5,7 @@ DESCRIPTION = "Packages that are compatible with the SlugOS firmware" HOMEPAGE = "http://www.nslu2-linux.org" LICENSE = "MIT" -PR = "r44" +PR = "r45" CONFLICTS = "db3" COMPATIBLE_MACHINE = "nslu2" @@ -76,7 +76,6 @@ SLUGOS_PACKAGES = "\ dnsmasq \ e2fsprogs \ e2fsprogs-libs \ - eciadsl \ expat \ ez-ipupdate \ fconfig \ @@ -245,6 +244,7 @@ SLUGOS_PACKAGES = "\ SLUGOS_BROKEN_PACKAGES = "\ bwmon \ dsniff \ + eciadsl \ fetchmail \ lirc-modules lirc \ madfu \ -- cgit v1.2.3 From 6f1077b05000cf74216fc3a28d1c22f6cb7bd2fb Mon Sep 17 00:00:00 2001 From: Manuel Teira Date: Sat, 9 Feb 2008 22:23:44 +0000 Subject: xserver-kdrive-imagen 1.2.0: Fixed include order in picturestr.h to allow compilation against renderproto 0.9.3 --- packages/xorg-xserver/xserver-kdrive-imageon_1.2.0.bb | 3 ++- .../xserver-kdrive/fix-picturestr-include-order.patch | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 packages/xorg-xserver/xserver-kdrive/fix-picturestr-include-order.patch diff --git a/packages/xorg-xserver/xserver-kdrive-imageon_1.2.0.bb b/packages/xorg-xserver/xserver-kdrive-imageon_1.2.0.bb index 26f8666076..622b32179d 100644 --- a/packages/xorg-xserver/xserver-kdrive-imageon_1.2.0.bb +++ b/packages/xorg-xserver/xserver-kdrive-imageon_1.2.0.bb @@ -7,7 +7,7 @@ DEPENDS += "libxkbfile libxcalibrate" PROVIDES = "virtual/xserver" PE = "1" -PR = "r3" +PR = "r4" FILESPATH = "${FILE_DIRNAME}/xserver-kdrive-1.2.0:${FILE_DIRNAME}/xserver-kdrive" SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \ @@ -21,6 +21,7 @@ SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \ file://kdrive-imageon.patch;patch=1 \ file://xcalibrate_coords.patch;patch=1 \ file://enable-builtin-fonts.patch;patch=1 \ + file://fix-picturestr-include-order.patch;patch=1 \ " S = "${WORKDIR}/xorg-server-${PV}" diff --git a/packages/xorg-xserver/xserver-kdrive/fix-picturestr-include-order.patch b/packages/xorg-xserver/xserver-kdrive/fix-picturestr-include-order.patch new file mode 100644 index 0000000000..3da235e1e1 --- /dev/null +++ b/packages/xorg-xserver/xserver-kdrive/fix-picturestr-include-order.patch @@ -0,0 +1,15 @@ +# Reverse include order in render/picturestr.h to be able to compile against renderproto >= 0.9.3 +Index: xorg-server-1.2.0/render/picturestr.h +=================================================================== +--- xorg-server-1.2.0.orig/render/picturestr.h 2008-02-09 22:54:46.000000000 +0100 ++++ xorg-server-1.2.0/render/picturestr.h 2008-02-09 22:54:50.000000000 +0100 +@@ -26,8 +26,8 @@ + #ifndef _PICTURESTR_H_ + #define _PICTURESTR_H_ + +-#include "glyphstr.h" + #include "scrnintstr.h" ++#include "glyphstr.h" + #include "resource.h" + + typedef struct _DirectFormat { -- cgit v1.2.3 From ceef3d9e48b5c6f02166ad6f2c9d5392a9801d74 Mon Sep 17 00:00:00 2001 From: Rod Whitby Date: Sun, 10 Feb 2008 00:08:55 +0000 Subject: madwifi-ng: Add new version for testing (this is the version that OpenWrt currently uses, exiting versions no longer build due to kernel network api changes) --- packages/madwifi/madwifi-ng_r3314-20080131.bb | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 packages/madwifi/madwifi-ng_r3314-20080131.bb diff --git a/packages/madwifi/madwifi-ng_r3314-20080131.bb b/packages/madwifi/madwifi-ng_r3314-20080131.bb new file mode 100644 index 0000000000..9f7c696e49 --- /dev/null +++ b/packages/madwifi/madwifi-ng_r3314-20080131.bb @@ -0,0 +1,12 @@ +# Bitbake recipe for the madwifi-ng driver + +DEFAULT_PREFERENCE = "-1" + +# Disable stripping of kernel modules, since this action strips too +# much out, and the resulting module won't load. +INHIBIT_PACKAGE_STRIP = "1" + +require madwifi-ng_r.inc + +# PR set after the include, to override what's set in the included file. +# PR = "r1" -- cgit v1.2.3 From 5114b62e16ee52ec3ede08d40accc22913ffa099 Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Sun, 10 Feb 2008 00:16:28 +0000 Subject: dbus-java: Removed MAINTAINER field. libmatthew: Dito. logic-analyzer: Dito. rxtx: Dito. --- packages/dbus-java/dbus-java_2.3.bb | 1 - packages/libmatthew/libmatthew_0.5.bb | 1 - packages/logic-analyzer/logic-analyzer_0.8.bb | 1 - packages/rxtx/rxtx_2.1-7r2.bb | 1 - 4 files changed, 4 deletions(-) diff --git a/packages/dbus-java/dbus-java_2.3.bb b/packages/dbus-java/dbus-java_2.3.bb index 72d99c3854..1c30fc7fe4 100644 --- a/packages/dbus-java/dbus-java_2.3.bb +++ b/packages/dbus-java/dbus-java_2.3.bb @@ -4,7 +4,6 @@ DESCRIPTION_dbus-java-bin = "${DESCRIPTION} (Binaries)" LICENSE = "GPLv2 AFL" SECTION = "libs" -MAINTAINER = "Fabian Koester, tarent GmbH Bonn " HOMEPAGE = "http://jalimo.org" AUTHOR = "Matthew Johnson " diff --git a/packages/libmatthew/libmatthew_0.5.bb b/packages/libmatthew/libmatthew_0.5.bb index 23ee04ed26..7a1b05478b 100644 --- a/packages/libmatthew/libmatthew_0.5.bb +++ b/packages/libmatthew/libmatthew_0.5.bb @@ -1,7 +1,6 @@ DESCRIPTION = "Unix socket, debug and hexdump libraries" LICENSE = "LGPL" SECTION = "libs" -MAINTAINER = "Fabian Koester, tarent GmbH Bonn " HOMEPAGE = "http://jalimo.org" AUTHOR = "Matthew Johnson " diff --git a/packages/logic-analyzer/logic-analyzer_0.8.bb b/packages/logic-analyzer/logic-analyzer_0.8.bb index ce691093fa..f66752ad31 100644 --- a/packages/logic-analyzer/logic-analyzer_0.8.bb +++ b/packages/logic-analyzer/logic-analyzer_0.8.bb @@ -1,6 +1,5 @@ DESCRIPTION = "A Java-based logical analyzer for home use." LICENSE = "GPL" -MAINTAINER = "Robert Schuster, tarent GmbH Bonn " HOMEPAGE = "http://sump.org/projects/analyzer/" inherit java diff --git a/packages/rxtx/rxtx_2.1-7r2.bb b/packages/rxtx/rxtx_2.1-7r2.bb index e91a406cfc..260b70a1fe 100644 --- a/packages/rxtx/rxtx_2.1-7r2.bb +++ b/packages/rxtx/rxtx_2.1-7r2.bb @@ -1,7 +1,6 @@ DESCRIPTION = "RXTX provides serial and parallel communication for Java applications" LICENSE = "LGPL" SECTION = "libs" -MAINTAINER = "Robert Schuster, tarent GmbH Bonn " HOMEPAGE = "http://rxtx.org" inherit autotools java-library -- cgit v1.2.3 From 97ed01f3e5d63d088dd1ca10ae009a93fa63739e Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Sun, 10 Feb 2008 00:17:46 +0000 Subject: kobodeluxe: New recipe. --- packages/kobodeluxe/.mtn2git_empty | 0 packages/kobodeluxe/files/.mtn2git_empty | 0 packages/kobodeluxe/files/debian-kobo.patch | 72 +++++++++++++++++++++++++++++ packages/kobodeluxe/kobodeluxe_0.5.1.bb | 26 +++++++++++ 4 files changed, 98 insertions(+) create mode 100644 packages/kobodeluxe/.mtn2git_empty create mode 100644 packages/kobodeluxe/files/.mtn2git_empty create mode 100644 packages/kobodeluxe/files/debian-kobo.patch create mode 100644 packages/kobodeluxe/kobodeluxe_0.5.1.bb diff --git a/packages/kobodeluxe/.mtn2git_empty b/packages/kobodeluxe/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/kobodeluxe/files/.mtn2git_empty b/packages/kobodeluxe/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/kobodeluxe/files/debian-kobo.patch b/packages/kobodeluxe/files/debian-kobo.patch new file mode 100644 index 0000000000..90b1d84080 --- /dev/null +++ b/packages/kobodeluxe/files/debian-kobo.patch @@ -0,0 +1,72 @@ +--- kobodeluxe-0.5.1.orig/kobo.cpp ++++ kobodeluxe-0.5.1/kobo.cpp +@@ -141,21 +141,21 @@ + * Graphics data + */ + /* Current dir; from within the build tree */ +- fmap->addpath("GFX", "./data/gfx"); ++ //fmap->addpath("GFX", "./data/gfx"); + /* Real data dir */ + fmap->addpath("GFX", "DATA>>gfx"); + /* Current dir */ +- fmap->addpath("GFX", "./gfx"); ++ //fmap->addpath("GFX", "./gfx"); + + /* + * Sound data + */ + /* Current dir; from within the build tree */ +- fmap->addpath("SFX", "./data/sfx"); ++ //fmap->addpath("SFX", "./data/sfx"); + /* Real data dir */ + fmap->addpath("SFX", "DATA>>sfx"); + /* Current dir */ +- fmap->addpath("SFX", "./sfx"); ++ //fmap->addpath("SFX", "./sfx"); + + /* + * Score files (user and global) +@@ -173,7 +173,7 @@ + /* System local */ + fmap->addpath("CONFIG", SYSCONF_DIR); + /* In current dir (last resort) */ +- fmap->addpath("CONFIG", "./"); ++ //fmap->addpath("CONFIG", "./"); + } + + +--- kobodeluxe-0.5.1.orig/graphics/window.cpp ++++ kobodeluxe-0.5.1/graphics/window.cpp +@@ -331,7 +331,7 @@ + } + + +-void window_t::center_token(int _x, int _y, const char *txt, char token) ++void window_t::center_token(int _x, int _y, const char *txt, signed char token) + { + center_token_fxp(PIXEL2CS(_x), PIXEL2CS(_y), txt, token); + } +@@ -374,7 +374,7 @@ + } + + +-void window_t::center_token_fxp(int _x, int _y, const char *txt, char token) ++void window_t::center_token_fxp(int _x, int _y, const char *txt, signed char token) + { + _x = CS2PIXEL((_x * xs + 128) >> 8); + _y = CS2PIXEL((_y * ys + 128) >> 8); +--- kobodeluxe-0.5.1.orig/graphics/window.h ++++ kobodeluxe-0.5.1/graphics/window.h +@@ -265,10 +265,10 @@ + void font(int fnt); + void string(int _x, int _y, const char *txt); + void center(int _y, const char *txt); +- void center_token(int _x, int _y, const char *txt, char token = 0); ++ void center_token(int _x, int _y, const char *txt, signed char token = 0); + void string_fxp(int _x, int _y, const char *txt); + void center_fxp(int _y, const char *txt); +- void center_token_fxp(int _x, int _y, const char *txt, char token = 0); ++ void center_token_fxp(int _x, int _y, const char *txt, signed char token = 0); + int textwidth(const char *txt, int min = 0, int max = 255); + int textwidth_fxp(const char *txt, int min = 0, int max = 255); + int fontheight(); diff --git a/packages/kobodeluxe/kobodeluxe_0.5.1.bb b/packages/kobodeluxe/kobodeluxe_0.5.1.bb new file mode 100644 index 0000000000..0c9ae458f8 --- /dev/null +++ b/packages/kobodeluxe/kobodeluxe_0.5.1.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Fast-paced 2D top-down shooter where you have to destroy space station" +SECTION = "games" +PRIORITY = "optional" +LICENSE = "GPL" +AUTHOR = "David Olofson " +HOMEPAGE = "http://olofson.net/kobodl" + +DEPENDS = "libsdl-image virtual/libsdl" + +RDEPENDS_${PN} = "${PN}-data" + +SRC_URI = "http://olofson.net/kobodl/download/KoboDeluxe-${PV}.tar.bz2 \ + file://debian-kobo.patch;patch=1 \ + " + +S = "${WORKDIR}/KoboDeluxe-${PV}" + +inherit autotools + +EXTRA_OECONF = "--disable-sdltest" + +PACKAGES += "${PN}-data" + +FILES_${PN}-data = "${datadir}" + +PACKAGE_ARCH_${PN}-data = "all" -- cgit v1.2.3 From 512f375b6597875d19760d87bc39dfcfba0ca47c Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Sun, 10 Feb 2008 00:25:36 +0000 Subject: MAINTAINERS: Added myself. --- MAINTAINERS | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index be759b4004..f772855b58 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -264,3 +264,14 @@ Interests: Kernels, PXA, GTK+, gsmd Distros: Ångström Machines: hx4700, magician Recipes: avahi, libgsmd + +Person: Robert Schuster 'thebohemian' +Mail: robert.schuster@tarent.de, thebohemian@gmx.net +Website: http://fsfe.org/en/fellows/robertschuster/weblog +Interests: free software, java, games +Distros: chinook-compat +Recipes: jikes-native, jikes-initial, ecj-initial, ecj-bootstrap-native +Recipes: classpath*, cacao*, jamvm* +Recipes: swt-gtk, rxtx, dbus-java, libmatthew, kxml2, xmlpull +Recipes: midpath*, logic-analyze +Recipes: kobodeluxe -- cgit v1.2.3 From ce51a7c1cdf92c7848ef5bca186d794bcaeba0bd Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 01:52:20 +0000 Subject: SlugOS: udev - do not attempt to mount a device via fstab since mounting on SlugOS is done via UUID, not device names. --- packages/udev/files/slugos/mount.sh | 77 +++++++++++++++++++++++++++++++++++++ packages/udev/udev_100.bb | 3 +- 2 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 packages/udev/files/slugos/mount.sh diff --git a/packages/udev/files/slugos/mount.sh b/packages/udev/files/slugos/mount.sh new file mode 100644 index 0000000000..11714c1390 --- /dev/null +++ b/packages/udev/files/slugos/mount.sh @@ -0,0 +1,77 @@ +#!/bin/sh +# +# Called from udev +# Attemp to mount any added block devices +# and remove any removed devices +# + +MOUNT="/bin/mount" +PMOUNT="/usr/bin/pmount" +UMOUNT="/bin/umount" +name="`basename "$DEVNAME"`" + +for line in `cat /etc/udev/mount.blacklist | grep -v ^#` +do + if ( echo "$DEVNAME" | grep -q "$line" ) + then + logger "udev/mount.sh" "[$DEVNAME] is blacklisted, ignoring" + exit 0 + fi +done + +automount() { + ! test -d "/media/$name" && mkdir -p "/media/$name" + + if ! $MOUNT -t auto -o sync $DEVNAME "/media/$name" + then + #logger "mount.sh/automount" "$MOUNT -t auto $DEVNAME \"/media/$name\" failed!" + rm_dir "/media/$name" + else + logger "mount.sh/automount" "Auto-mount of [/media/$name] successful" + touch "/tmp/.automount-$name" + fi +} + +rm_dir() { + # We do not want to rm -r populated directories + if test "`find "$1" | wc -l | tr -d " "`" -lt 2 -a -d "$1" + then + ! test -z "$1" && rm -r "$1" + else + logger "mount.sh/automount" "Not removing non-empty directory [$1]" + fi +} + +if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then + # SlugOS: we pivot to the rootfs based on UUID, not on fstab -- so the fstab may not + # be correct at this point in the boot. So we must not let udev mount devices based + # soley on the fstab, lest we mount overtop the real rootfs. For now we just comment + # out the logic below and let the automount logic (far below) deal with all udev mount + # operations. + #if [ -x "$PMOUNT" ]; then + # $PMOUNT $DEVNAME 2> /dev/null + #elif [ -x $MOUNT ]; then + # $MOUNT $DEVNAME 2> /dev/null + #fi + + # If the device isn't mounted at this point, it isn't configured in fstab + # 20061107: Small correction: The rootfs partition may be called just "rootfs" and not by + # its true device name so this would break. If the rootfs is mounted on two places + # during boot, it confuses the heck out of fsck. So Im auto-adding the root-partition + # to /etc/udev/mount.blacklist via postinst + + cat /proc/mounts | awk '{print $1}' | grep -q "^$DEVNAME$" || automount + +fi + + + +if [ "$ACTION" = "remove" ] && [ -x "$UMOUNT" ] && [ -n "$DEVNAME" ]; then + for mnt in `cat /proc/mounts | grep "$DEVNAME" | cut -f 2 -d " " ` + do + $UMOUNT $mnt + done + + # Remove empty directories from auto-mounter + test -e "/tmp/.automount-$name" && rm_dir "/media/$name" +fi diff --git a/packages/udev/udev_100.bb b/packages/udev/udev_100.bb index ac981bbe9c..c8840e1a8f 100644 --- a/packages/udev/udev_100.bb +++ b/packages/udev/udev_100.bb @@ -9,12 +9,13 @@ used to detect the type of a file system and read its metadata." DESCRIPTION_libvolume-id-dev = "libvolume_id development headers, \ needed to link programs with libvolume_id." -PR = "r10" +PR = "r11" SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \ file://noasmlinkage.patch;patch=1 \ file://flags.patch;patch=1 \ file://mount.blacklist \ + file://mount.sh \ " require udev.inc -- cgit v1.2.3 From c066f95098df28fdd517dee575326d6aa6f5417f Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 01:55:22 +0000 Subject: SlugOS: make "turnup nfs" work correctly with the new network driver (loads firmware, and ensures we do not ifup the interface if the rootfs in nfs). --- packages/netbase/netbase/slugos/if-pre-up.d/test-nfsroot | 10 ++++++++++ packages/netbase/netbase_4.21.bb | 2 +- packages/slugos-init/files/boot/network | 2 +- packages/slugos-init/slugos-init_4.8.bb | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 packages/netbase/netbase/slugos/if-pre-up.d/test-nfsroot diff --git a/packages/netbase/netbase/slugos/if-pre-up.d/test-nfsroot b/packages/netbase/netbase/slugos/if-pre-up.d/test-nfsroot new file mode 100644 index 0000000000..bbfd7d9bb3 --- /dev/null +++ b/packages/netbase/netbase/slugos/if-pre-up.d/test-nfsroot @@ -0,0 +1,10 @@ +#!/bin/sh +# +if [ X"$IFACE" == "Xeth0" ] ; then + nfsroot=`grep ' / nfs ' /proc/mounts` + if [ -n "$nfsroot" ]; then + echo "WARNING: Refusing to ifup eth0 when booted to a nfs-mounted rootfs." + exit 1 + fi +fi +exit 0 diff --git a/packages/netbase/netbase_4.21.bb b/packages/netbase/netbase_4.21.bb index 1f2837a8c1..73e765376c 100644 --- a/packages/netbase/netbase_4.21.bb +++ b/packages/netbase/netbase_4.21.bb @@ -2,7 +2,7 @@ DESCRIPTION = "This package provides the necessary \ infrastructure for basic TCP/IP based networking." SECTION = "base" LICENSE = "GPL" -PR = "r26" +PR = "r27" inherit update-rc.d diff --git a/packages/slugos-init/files/boot/network b/packages/slugos-init/files/boot/network index 8c0635d3ac..8124f19ab2 100644 --- a/packages/slugos-init/files/boot/network +++ b/packages/slugos-init/files/boot/network @@ -25,7 +25,7 @@ iface="$(config iface)" test -z "$iface" && exit 1 # # Fire up a process in the background to load the firmware if necessary -sysf="/sys/class/firmware/$iface" +sysf="/sys/class/firmware/firmware-$iface" ( # Wait for the firware to be requested, if required [ -f $sysf/loading ] || sleep 1 diff --git a/packages/slugos-init/slugos-init_4.8.bb b/packages/slugos-init/slugos-init_4.8.bb index 92ac7e30f3..4babf89d61 100644 --- a/packages/slugos-init/slugos-init_4.8.bb +++ b/packages/slugos-init/slugos-init_4.8.bb @@ -4,7 +4,7 @@ PRIORITY = "required" LICENSE = "GPL" DEPENDS = "base-files devio" RDEPENDS = "busybox devio" -PR = "r1" +PR = "r2" SRC_URI = "file://boot/flash \ file://boot/disk \ -- cgit v1.2.3 From f4477e16a53df1ad084d6ef67037ba2518c71541 Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 01:59:18 +0000 Subject: linux-ixp4xx: NSLU2 defconfig 2.6.24 - turn on ATAGs in /proc to enable RP's new kexec functionality. --- packages/linux/linux-ixp4xx/nslu2/defconfig-2.6.24 | 1 + packages/linux/linux-ixp4xx_2.6.24.bb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/linux/linux-ixp4xx/nslu2/defconfig-2.6.24 b/packages/linux/linux-ixp4xx/nslu2/defconfig-2.6.24 index 28b69a82ed..061c0c0724 100644 --- a/packages/linux/linux-ixp4xx/nslu2/defconfig-2.6.24 +++ b/packages/linux/linux-ixp4xx/nslu2/defconfig-2.6.24 @@ -243,6 +243,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE=" noirqdebug console=ttyS0,115200n8" # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # Floating point emulation diff --git a/packages/linux/linux-ixp4xx_2.6.24.bb b/packages/linux/linux-ixp4xx_2.6.24.bb index 9942433b56..9a5967afa2 100644 --- a/packages/linux/linux-ixp4xx_2.6.24.bb +++ b/packages/linux/linux-ixp4xx_2.6.24.bb @@ -11,7 +11,7 @@ KERNEL_RELEASE = "2.6.24" #PV = "${VANILLA_VERSION}+${KERNEL_RELEASE}+svnr${SRCREV}" PV = "${KERNEL_RELEASE}+svnr${SRCREV}" -PR = "r0" +PR = "r1" # ${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/patch-${KERNEL_RELEASE}.bz2;patch=1 \ -- cgit v1.2.3 From 63bd29895b172a2f9e7deb9fb7096d0df47487ff Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 02:42:10 +0000 Subject: task-slugos: add nfs kernel-module to the base image (for development convenience; this should be removed for the release version). --- packages/tasks/task-slugos.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/tasks/task-slugos.bb b/packages/tasks/task-slugos.bb index bdcfcf7cd3..01cdaa21b4 100644 --- a/packages/tasks/task-slugos.bb +++ b/packages/tasks/task-slugos.bb @@ -6,7 +6,7 @@ DESCRIPTION = "Task packages for the SlugOS distribution" HOMEPAGE = "http://www.nslu2-linux.org" LICENSE = "MIT" -PR = "r16" +PR = "r17" PACKAGE_ARCH = "${MACHINE_ARCH}" ALLOW_EMPTY = "1" @@ -67,6 +67,7 @@ kernel-module-ext3 \ kernel-module-vfat \ kernel-module-nls-cp437 \ kernel-module-nls-utf8 \ +kernel-module-nfs \ " # Add daemon required for HW RNG support @@ -102,7 +103,6 @@ kernel-module-via-velocity \ # # portmap \ # kexec-tools \ -# kernel-module-nfs \ # kernel-module-isofs \ # kernel-module-udf \ # kernel-module-loop \ -- cgit v1.2.3 From 86b701de28c51e8ff8365c2189f0d31801e151ab Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Sun, 10 Feb 2008 02:42:11 +0000 Subject: kobodeluxe: Some fixes. - correct path to sdl-config script - disable building opengl code - added patch to use putenv() instead of SDL_putenv() --- packages/kobodeluxe/files/buildfix.patch | 21 +++++++++++++++++++++ packages/kobodeluxe/kobodeluxe_0.5.1.bb | 7 ++++++- 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 packages/kobodeluxe/files/buildfix.patch diff --git a/packages/kobodeluxe/files/buildfix.patch b/packages/kobodeluxe/files/buildfix.patch new file mode 100644 index 0000000000..01a97e14f2 --- /dev/null +++ b/packages/kobodeluxe/files/buildfix.patch @@ -0,0 +1,21 @@ +Index: kobodeluxe-0.5.1/graphics/gfxengine.cpp +=================================================================== +--- kobodeluxe-0.5.1.orig/graphics/gfxengine.cpp 2008-02-10 03:02:29.000000000 +0100 ++++ kobodeluxe-0.5.1/graphics/gfxengine.cpp 2008-02-10 03:03:45.000000000 +0100 +@@ -25,6 +25,7 @@ + + #include + #include ++#include + + #include "gfxengine.h" + #include "filters.h" +@@ -765,7 +766,7 @@ + return 0; + + if(_centered && !_fullscreen) +- SDL_putenv((char *)"SDL_VIDEO_CENTERED=1"); ++ putenv((char *)"SDL_VIDEO_CENTERED=1"); + + log_printf(DLOG, "Opening screen...\n"); + if(!SDL_WasInit(SDL_INIT_VIDEO)) diff --git a/packages/kobodeluxe/kobodeluxe_0.5.1.bb b/packages/kobodeluxe/kobodeluxe_0.5.1.bb index 0c9ae458f8..5d1196194f 100644 --- a/packages/kobodeluxe/kobodeluxe_0.5.1.bb +++ b/packages/kobodeluxe/kobodeluxe_0.5.1.bb @@ -5,19 +5,24 @@ LICENSE = "GPL" AUTHOR = "David Olofson " HOMEPAGE = "http://olofson.net/kobodl" +PR = "1" + DEPENDS = "libsdl-image virtual/libsdl" RDEPENDS_${PN} = "${PN}-data" SRC_URI = "http://olofson.net/kobodl/download/KoboDeluxe-${PV}.tar.bz2 \ file://debian-kobo.patch;patch=1 \ + file://buildfix.patch;patch=1 \ " S = "${WORKDIR}/KoboDeluxe-${PV}" inherit autotools -EXTRA_OECONF = "--disable-sdltest" +export SDL_CONFIG = "${STAGING_BINDIR_CROSS}/sdl-config" + +EXTRA_OECONF = "--disable-opengl --disable-sdltest" PACKAGES += "${PN}-data" -- cgit v1.2.3 From ee7316097667fbbcd4afec5e190bfdb0ba5333f8 Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 02:45:37 +0000 Subject: Unslung: fuse-module - add old fuse module; this is the last fuse version that worked on the old 2.4 kernels. --- packages/fuse/fuse-module-2.5.3/.mtn2git_empty | 0 .../preserve_CC_with_2_4_kernel.patch | 11 ++++++++ packages/fuse/fuse-module_2.5.3.bb | 31 ++++++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 packages/fuse/fuse-module-2.5.3/.mtn2git_empty create mode 100644 packages/fuse/fuse-module-2.5.3/preserve_CC_with_2_4_kernel.patch create mode 100644 packages/fuse/fuse-module_2.5.3.bb diff --git a/packages/fuse/fuse-module-2.5.3/.mtn2git_empty b/packages/fuse/fuse-module-2.5.3/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/fuse/fuse-module-2.5.3/preserve_CC_with_2_4_kernel.patch b/packages/fuse/fuse-module-2.5.3/preserve_CC_with_2_4_kernel.patch new file mode 100644 index 0000000000..05619d557c --- /dev/null +++ b/packages/fuse/fuse-module-2.5.3/preserve_CC_with_2_4_kernel.patch @@ -0,0 +1,11 @@ +--- fuse-2.5.3/kernel/Makefile.in.orig 2008-01-05 20:43:00.000000000 -0600 ++++ fuse-2.5.3/kernel/Makefile.in 2008-01-05 20:43:25.000000000 -0600 +@@ -54,8 +54,6 @@ + + ifeq ($(majver), 2.4) + +-CC = gcc +-LD = ld + CFLAGS = -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -pipe @KERNELCFLAGS@ + CPPFLAGS = -I@kernelsrc@/include -I. -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DFUSE_VERSION=\"$(VERSION)\" @KERNELCPPFLAGS@ + diff --git a/packages/fuse/fuse-module_2.5.3.bb b/packages/fuse/fuse-module_2.5.3.bb new file mode 100644 index 0000000000..f707888c94 --- /dev/null +++ b/packages/fuse/fuse-module_2.5.3.bb @@ -0,0 +1,31 @@ +require fuse.inc + +PR = "r0" + +SRC_URI += "file://preserve_CC_with_2_4_kernel.patch;patch=1" + +S = "${WORKDIR}/fuse-${PV}" + +FILES_${PN} = "${base_libdir}/modules" + +EXTRA_OECONF = " --enable-kernel-module --with-kernel=${STAGING_KERNEL_DIR}" + +inherit module + +do_configure() { + cd ${S} + oe_runconf +} + +do_compile(){ + LDFLAGS="" + cd ${S}/kernel + oe_runmake +} + +fakeroot do_install() { + LDFLAGS="" + cd ${S}/kernel + oe_runmake install DESTDIR=${D} +} + -- cgit v1.2.3 From 6c64ef3f168986a36f37a2a8d958f45ca5616ff0 Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Sun, 10 Feb 2008 02:50:13 +0000 Subject: kobodeluxe: Set PR to r1. --- packages/kobodeluxe/kobodeluxe_0.5.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/kobodeluxe/kobodeluxe_0.5.1.bb b/packages/kobodeluxe/kobodeluxe_0.5.1.bb index 5d1196194f..25f2f3ceb6 100644 --- a/packages/kobodeluxe/kobodeluxe_0.5.1.bb +++ b/packages/kobodeluxe/kobodeluxe_0.5.1.bb @@ -5,7 +5,7 @@ LICENSE = "GPL" AUTHOR = "David Olofson " HOMEPAGE = "http://olofson.net/kobodl" -PR = "1" +PR = "r1" DEPENDS = "libsdl-image virtual/libsdl" -- cgit v1.2.3 From f9b083e78b37f26877bdf769824ed8a20f3ef3c8 Mon Sep 17 00:00:00 2001 From: Mike Westerhof Date: Sun, 10 Feb 2008 02:52:41 +0000 Subject: SlugOS Packages: add kexec-tools, inetutils, and rtorrent --- packages/meta/slugos-packages.bb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/meta/slugos-packages.bb b/packages/meta/slugos-packages.bb index 5d63a71a48..9a5ad9cfef 100644 --- a/packages/meta/slugos-packages.bb +++ b/packages/meta/slugos-packages.bb @@ -5,7 +5,7 @@ DESCRIPTION = "Packages that are compatible with the SlugOS firmware" HOMEPAGE = "http://www.nslu2-linux.org" LICENSE = "MIT" -PR = "r45" +PR = "r46" CONFLICTS = "db3" COMPATIBLE_MACHINE = "nslu2" @@ -101,6 +101,7 @@ SLUGOS_PACKAGES = "\ gzip \ hdparm \ ifupdown \ + inetutils \ iperf \ ipkg-utils \ iptables \ @@ -108,6 +109,7 @@ SLUGOS_PACKAGES = "\ irssi \ joe \ jpeg \ + kexec-tools \ lcdproc \ less \ libao \ @@ -192,6 +194,7 @@ SLUGOS_PACKAGES = "\ reiserfsprogs reiser4progs \ rng-tools \ rsync \ + rtorrent \ samba \ sane-backends \ screen \ -- cgit v1.2.3 From 7e3bf2113c1b327e6792227ba5608fcae5e9cdfa Mon Sep 17 00:00:00 2001 From: Rod Whitby Date: Sun, 10 Feb 2008 06:18:24 +0000 Subject: fuse: Update from 2.7.1 to 2.7.2 so that it builds against 2.6.24 kernel --- packages/fuse/fuse-2.7.2/.mtn2git_empty | 0 .../fuse-2.7.2/not-run-updaterc.d-on-host.patch | 15 +++++++++++ packages/fuse/fuse-module_2.7.2.bb | 29 ++++++++++++++++++++++ packages/fuse/fuse_2.7.2.bb | 27 ++++++++++++++++++++ 4 files changed, 71 insertions(+) create mode 100644 packages/fuse/fuse-2.7.2/.mtn2git_empty create mode 100644 packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch create mode 100644 packages/fuse/fuse-module_2.7.2.bb create mode 100644 packages/fuse/fuse_2.7.2.bb diff --git a/packages/fuse/fuse-2.7.2/.mtn2git_empty b/packages/fuse/fuse-2.7.2/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch b/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch new file mode 100644 index 0000000000..903a8baa9e --- /dev/null +++ b/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch @@ -0,0 +1,15 @@ +Index: fuse-2.7.2/util/Makefile.am +=================================================================== +--- fuse-2.7.2.orig/util/Makefile.am 2007-04-26 01:36:47.000000000 +0930 ++++ fuse-2.7.2/util/Makefile.am 2008-02-10 16:43:19.000000000 +1030 +@@ -33,10 +33,6 @@ + $(INSTALL_PROGRAM) $(srcdir)/mount.fuse $(DESTDIR)$(MOUNT_FUSE_PATH)/mount.fuse + $(mkdir_p) $(DESTDIR)$(INIT_D_PATH) + $(INSTALL_PROGRAM) $(srcdir)/init_script $(DESTDIR)$(INIT_D_PATH)/fuse +- @if test -x /usr/sbin/update-rc.d; then \ +- echo "/usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true"; \ +- /usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true; \ +- fi + + install-data-local: + $(mkdir_p) $(DESTDIR)$(UDEV_RULES_PATH) diff --git a/packages/fuse/fuse-module_2.7.2.bb b/packages/fuse/fuse-module_2.7.2.bb new file mode 100644 index 0000000000..48cc33a338 --- /dev/null +++ b/packages/fuse/fuse-module_2.7.2.bb @@ -0,0 +1,29 @@ +require fuse.inc + +RRECOMMENDS = "fuse" +PR = "r0" + +S = "${WORKDIR}/fuse-${PV}" +FILES_${PN} = "/dev ${base_libdir}/modules ${sysconfdir}" +EXTRA_OECONF = " --enable-kernel-module --with-kernel=${STAGING_KERNEL_DIR}" + +inherit module + +do_configure() { + cd ${S} ; oe_runconf +} + +do_compile(){ + LDFLAGS="" + cd ${S}/kernel + oe_runmake +} + +fakeroot do_install() { + LDFLAGS="" + install -d ${D}${sysconfdir}/udev/rules.d/ + install -m 644 util/udev.rules ${D}${sysconfdir}/udev/rules.d/ + cd ${S}/kernel + oe_runmake install DESTDIR=${D} +} + diff --git a/packages/fuse/fuse_2.7.2.bb b/packages/fuse/fuse_2.7.2.bb new file mode 100644 index 0