nas100d-kernel: Updated for 2.6.15-rc2
authorRod Whitby <rod@whitby.id.au>
Mon, 21 Nov 2005 07:42:32 +0000 (07:42 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Mon, 21 Nov 2005 07:42:32 +0000 (07:42 +0000)
packages/linux/nas100d-kernel.inc
packages/linux/nas100d-kernel/2.6.15/60-nas100d-i2c.patch
packages/linux/nas100d-kernel/2.6.15/60-nas100d-ide.patch
packages/linux/nas100d-kernel/2.6.15/defconfig
packages/linux/nas100d-kernel_2.6.15-rc2.bb [new file with mode: 0644]

index f8da5d3..6dd8a46 100644 (file)
@@ -188,6 +188,9 @@ EXTRA_OEMAKE += "EXTRAVERSION="
 EXTRA_OEMAKE += "LOCALVERSION="
 EXTRA_OEMAKE += "MAKEFLAGS='--no-print-directory'"
 
+# Override KERNEL_RELEASE from kernel.bbclass to match:
+KERNEL_RELEASE = "${KERNEL_VERSION}"
+
 # By putting the added files in place in a separate task before
 # do_patch it becomes possible to patch these files.
 do_unpacklocal() {
@@ -201,14 +204,13 @@ do_unpacklocal() {
 addtask unpacklocal before do_patch after do_unpack
 
 do_configure_prepend() {
-       install -m 0644 ${WORKDIR}/defconfig ${S}/.config
-       if test '${ARCH_BYTE_SEX}' = le
+       rm -f ${S}/.config
+       echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >>'${S}/.config'
+       if test '${ARCH_BYTE_SEX}' = be
        then
-               sed -i '/CONFIG_CPU_BIG_ENDIAN/d' '${S}/.config'
-       else
                echo 'CONFIG_CPU_BIG_ENDIAN=y' >>'${S}/.config'
        fi
-       echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >> ${S}/.config
+       sed -e '/CONFIG_CPU_BIG_ENDIAN/d' -e '/CONFIG_CMDLINE=/d' '${WORKDIR}/defconfig' >>'${S}/.config'
        rm -rf ${S}/include/asm-arm/arch ${S}/include/asm-arm/proc \
               ${S}/include/asm-arm/.proc ${S}/include/asm-arm/.arch
 }
index 5073d4b..5dfed57 100644 (file)
@@ -1,58 +1,27 @@
- drivers/i2c/busses/i2c-ixp4xx.c |    7 
- drivers/i2c/chips/Kconfig       |    9 
- drivers/i2c/chips/Makefile      |    1 
- drivers/i2c/chips/pcf8563.c     |  466 ++++++++++++++++++++++++++++++++++++++++
- include/linux/pcf8563.h         |   24 ++
- 5 files changed, 504 insertions(+), 3 deletions(-)
+ drivers/i2c/chips/Kconfig   |    9 
+ drivers/i2c/chips/Makefile  |    1 
+ drivers/i2c/chips/pcf8563.c |  466 ++++++++++++++++++++++++++++++++++++++++++++
+ include/linux/pcf8563.h     |   27 ++
+ 4 files changed, 503 insertions(+)
 
---- linux-nas100d.orig/drivers/i2c/busses/i2c-ixp4xx.c 2005-11-16 23:10:02.000000000 +0100
-+++ linux-nas100d/drivers/i2c/busses/i2c-ixp4xx.c      2005-11-16 23:10:02.000000000 +0100
-@@ -67,7 +67,6 @@ static int ixp4xx_bit_getscl(void *data)
-       gpio_line_config(ixp4xx_scl_pin(data), IXP4XX_GPIO_IN );
-       gpio_line_get(ixp4xx_scl_pin(data), &scl);
--
-       return scl;
- }     
-@@ -77,7 +76,6 @@ static int ixp4xx_bit_getsda(void *data)
-       gpio_line_config(ixp4xx_sda_pin(data), IXP4XX_GPIO_IN );
-       gpio_line_get(ixp4xx_sda_pin(data), &sda);
--
-       return sda;
- }     
-@@ -126,7 +124,10 @@ static int ixp4xx_i2c_probe(struct platf
-       drv_data->algo_data.udelay = 10;
-       drv_data->algo_data.mdelay = 10;
-       drv_data->algo_data.timeout = 100;
--
-+#ifdef CONFIG_MACH_NAS100D
-+      drv_data->algo_data.udelay = 100;
-+      drv_data->algo_data.mdelay = 100;
-+#endif
-       drv_data->adapter.id = I2C_HW_B_IXP4XX;
-       strlcpy(drv_data->adapter.name, ixp4xx_i2c_driver.driver.name,
-               I2C_NAME_SIZE);
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-nas100d/drivers/i2c/chips/pcf8563.c  2005-11-16 23:12:33.000000000 +0100
++++ linux-nas100d/drivers/i2c/chips/pcf8563.c  2005-11-22 17:32:35.000000000 +0100
 @@ -0,0 +1,466 @@
 +/*
-+ *  pcf8563.c - An i2c driver for the Philips PCF8563 RTC
-+ *  Copyright 2005 Alessandro Zummo
++ * pcf8563.c - An i2c driver for the Philips PCF8563 RTC
++ * Copyright 2005 Tower Technologies
 + *
-+ *  please send all reports to:
-+ *      a dot zummo at towertech dot it
++ * Author: Alessandro Zummo <a.zummo@towertech.it>
++ * Maintainers: http://www.nslu2-linux.org/
 + *
-+ *  based on the other drivers in this same directory.
++ * based on the other drivers in this same directory.
 + *
-+ *  http://www.semiconductors.philips.com/acrobat/datasheets/PCF8563-04.pdf
++ * http://www.semiconductors.philips.com/acrobat/datasheets/PCF8563-04.pdf
 + *
-+ *  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 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.
 + */
 +
 +#include <linux/module.h>
@@ -66,7 +35,7 @@
 +
 +#include <linux/pcf8563.h>
 +
-+#define DRV_VERSION "0.3.2"
++#define DRV_VERSION "0.3.4"
 +
 +/* Addresses to scan */
 +static unsigned short normal_i2c[] = { 0x51, I2C_CLIENT_END };
 +              return -EIO;
 +      }
 +
-+        if (buf[PCF8563_REG_SC] & PCF8563_SC_LV)
-+                dev_info(&client->dev,
++      if (buf[PCF8563_REG_SC] & PCF8563_SC_LV)
++              dev_info(&client->dev,
 +                      "low voltage detected, date/time is not reliable.\n");
 +
 +      dev_dbg(&client->dev,
 +              { PCF8563_REG_SC,       0x7F,   0,      59      },
 +              { PCF8563_REG_MN,       0x7F,   0,      59      },
 +              { PCF8563_REG_HR,       0x3F,   0,      23      },
-+              { PCF8563_REG_DM,       0x3F,   1,      31      },
-+              { PCF8563_REG_MO,       0x1F,   1,      12      },
++              { PCF8563_REG_DM,       0x3F,   0,      31      },
++              { PCF8563_REG_MO,       0x1F,   0,      12      },
 +              { PCF8563_REG_YR,       0xFF,   0,      99      },
 +      };
 +
 +      client->driver = &pcf8563_driver;
 +      client->adapter = adapter;
 +
-+      strlcpy(client->name, pcf8563_driver.driver.name, I2C_NAME_SIZE);
++      strlcpy(client->name, pcf8563_driver.name, I2C_NAME_SIZE);
 +
 +      i2c_set_clientdata(client, data);
 +
 +module_init(pcf8563_init);
 +module_exit(pcf8563_exit);
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-nas100d/include/linux/pcf8563.h      2005-11-16 23:10:02.000000000 +0100
-@@ -0,0 +1,24 @@
++++ linux-nas100d/include/linux/pcf8563.h      2005-11-22 01:36:46.000000000 +0100
+@@ -0,0 +1,27 @@
 +/*
-+ *  pcf8563.h - defines for drivers/i2c/chips/pcf8563.c
-+ *  Copyright 2005 Alessandro Zummo
++ * pcf8563.h - defines for drivers/i2c/chips/pcf8563.c
++ * Copyright 2005 Tower Technologies
++ *
++ * Author: Alessandro Zummo <a.zummo@towertech.it>
++ * Maintainers: http://www.nslu2-linux.org/
 + *
-+ *  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 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.
 + */
 +
 +#ifndef __LINUX_PCF8563_H__
 +extern int pcf8563_do_command(unsigned int cmd, void *arg);
 +
 +#endif /* __LINUX_PCF8563_H__ */
---- linux-nas100d.orig/drivers/i2c/chips/Kconfig       2005-11-16 23:09:48.000000000 +0100
-+++ linux-nas100d/drivers/i2c/chips/Kconfig    2005-11-16 23:10:02.000000000 +0100
+--- linux-nas100d.orig/drivers/i2c/chips/Kconfig       2005-11-21 22:01:31.000000000 +0100
++++ linux-nas100d/drivers/i2c/chips/Kconfig    2005-11-22 01:36:46.000000000 +0100
 @@ -135,4 +135,13 @@ config RTC_X1205_I2C
          This driver can also be built as a module. If so, the module
          will be called x1205.
 +        This driver can also be built as a module. If so, the module
 +        will be called pcf8563.
  endmenu
---- linux-nas100d.orig/drivers/i2c/chips/Makefile      2005-11-16 23:09:48.000000000 +0100
-+++ linux-nas100d/drivers/i2c/chips/Makefile   2005-11-16 23:10:02.000000000 +0100
+--- linux-nas100d.orig/drivers/i2c/chips/Makefile      2005-11-21 22:01:31.000000000 +0100
++++ linux-nas100d/drivers/i2c/chips/Makefile   2005-11-22 01:36:46.000000000 +0100
 @@ -14,6 +14,7 @@ obj-$(CONFIG_SENSORS_RTC8564)        += rtc8564
  obj-$(CONFIG_ISP1301_OMAP)    += isp1301_omap.o
  obj-$(CONFIG_TPS65010)                += tps65010.o
index afd7d9c..fea83fb 100644 (file)
        (void) aec62xx_tune_chipset(drive, speed);
        return ide_dma_enable(drive);
  }
-@@ -263,7 +281,7 @@ static int aec62xx_irq_timeout (ide_driv
-               case PCI_DEVICE_ID_ARTOP_ATP865:
-               case PCI_DEVICE_ID_ARTOP_ATP865R:
-                       printk(" AEC62XX time out ");
--#if 0
-+#ifdef CONFIG_MACH_NAS100D
-                       {
-                               int i = 0;
-                               u8 reg49h = 0;
-@@ -277,7 +295,7 @@ static int aec62xx_irq_timeout (ide_driv
-               default:
-                       break;
-       }
--#if 0
-+#ifdef CONFIG_MACH_NAS100D
-       {
-               ide_hwif_t *hwif        = HWIF(drive);
-               struct pci_dev *dev     = hwif->pci_dev;
 @@ -299,6 +317,14 @@ static unsigned int __devinit init_chips
  {
        int bus_speed = system_bus_clock();
index f0d28cc..ef9276a 100644 (file)
@@ -157,7 +157,7 @@ CONFIG_ALIGNMENT_TRAP=y
 #
 CONFIG_ZBOOT_ROM_TEXT=0x0
 CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="root=/dev/mtdblock3 rw rootfstype=jffs2 mem=64M@0x00000000 init=/linuxrc noirqdebug console=ttyS0,115200n8"
+CONFIG_CMDLINE="root=/dev/mtdblock2 rw rootfstype=jffs2 mem=64M@0x00000000 init=/linuxrc console=ttyS0,115200n8 hctosys=1"
 # CONFIG_XIP_KERNEL is not set
 
 #
@@ -895,7 +895,7 @@ CONFIG_IXP4XX_WATCHDOG=y
 #
 # CONFIG_USBPCWATCHDOG is not set
 # CONFIG_NVRAM is not set
-CONFIG_RTC=m
+CONFIG_RTC=y
 # CONFIG_DTLK is not set
 # CONFIG_R3964 is not set
 # CONFIG_APPLICOM is not set
@@ -962,9 +962,9 @@ CONFIG_SENSORS_EEPROM=n
 # CONFIG_SENSORS_PCF8591 is not set
 # CONFIG_SENSORS_RTC8564 is not set
 # CONFIG_SENSORS_MAX6875 is not set
-CONFIG_I2C_DEBUG_CORE=n
-CONFIG_I2C_DEBUG_ALGO=n
-CONFIG_I2C_DEBUG_BUS=n
+CONFIG_I2C_DEBUG_CORE=y
+CONFIG_I2C_DEBUG_ALGO=y
+CONFIG_I2C_DEBUG_BUS=y
 CONFIG_I2C_DEBUG_CHIP=y
 CONFIG_RTC_PCF8563_I2C=y
 
diff --git a/packages/linux/nas100d-kernel_2.6.15-rc2.bb b/packages/linux/nas100d-kernel_2.6.15-rc2.bb
new file mode 100644 (file)
index 0000000..d3e5ae2
--- /dev/null
@@ -0,0 +1,31 @@
+# Kernel for Iomega NAS 100d
+#
+# Increment PR_CONFIG for changes to the nas100d-kernel specific
+# defconfig (do *NOT* increment anything in here for changes
+# to other kernel configs!)
+PR_CONFIG = "0"
+#
+# Increment the number below (i.e. the digits after PR) when
+# making changes within this file or for changes to the patches
+# applied to the kernel.
+PR = "r0.${PR_CONFIG}"
+
+include nas100d-kernel.inc
+
+# N1K_PATCHES - full list of patches to apply
+N1K_PATCHES = "\
+       file://00-memory-h-page-shift.patch;patch=1 \
+       file://10-mtdpart-redboot-fis-byteswap.patch;patch=1 \
+       file://19-jffs2-force-be.patch;patch=1 \
+       file://50-nas100d-arch.patch;patch=1 \
+       file://55-nas100d-arch.patch;patch=1 \
+       file://60-nas100d-ide.patch;patch=1 \
+       file://60-nas100d-i2c.patch;patch=1 \
+       file://90-ixp4xx-nslu2.patch;patch=1 \
+"
+
+# These options get added to the kernel command line, only put things
+# specific to the bootstrap of *this* kernel in here - DISTRO specfic
+# config must be in CMDLINE_ROOT (see the full definition of CMDLINE
+# in nas100d-kernel.inc)
+CMDLINE_KERNEL_OPTIONS = "pcf8563.hctosys=1"