Browse Source

Update au1000 for .21, build an SREC initramfs image so that it can be tested directly with yamon

SVN-Revision: 7333
Florian Fainelli 18 years ago
parent
commit
46f7d89f9c

+ 7 - 0
target/linux/au1000-2.6/image/Makefile

@@ -48,12 +48,19 @@ define Image/Prepare
 	$(OBJCOPY_BIN) $(KDIR)/loader_flash.elf $(KDIR)/kernel.flash.bin
 endef
 
+define Image/Build/Initramfs
+	$(OBJCOPY_SREC) $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinux.elf $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinux.srec
+endef
+
 define Image/Build
 	$(TARGET_CROSS)objcopy -O srec -I binary --adjust-vma $(FLASH_FS) $(KDIR)/root.$(1) $(KDIR)/root.$(1).srec
 	grep -v S7 $(KDIR)/root.$(1).srec > $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).img
 	grep -v S0 $(KDIR)/kernel.flash.srec >> $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).img
 	$(CP) $(KDIR)/kernel.flash.bin $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinux.bin
 	$(CP) $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).fs
+ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
+	$(call Image/Build/Initramfs)
+endif
 endef
 
 $(eval $(call BuildImage))

+ 0 - 26
target/linux/au1000-2.6/patches/001-redefinitions_fixes.patch

@@ -1,26 +0,0 @@
---- linux-2.6.16.2/drivers/usb/host/ohci-pci.c	2006-04-07 18:56:47.000000000 +0200
-+++ linux-2.6.16.2.new/drivers/usb/host/ohci-pci.c	2006-04-11 14:20:33.000000000 +0200
-@@ -215,7 +215,7 @@
- #endif
- };
- 
-- 
-+/* 
- static int __init ohci_hcd_pci_init (void) 
- {
- 	printk (KERN_DEBUG "%s: " DRIVER_INFO " (PCI)\n", hcd_name);
-@@ -227,11 +227,12 @@
- 	return pci_register_driver (&ohci_pci_driver);
- }
- module_init (ohci_hcd_pci_init);
--
-+*/
- /*-------------------------------------------------------------------------*/
--
-+/*
- static void __exit ohci_hcd_pci_cleanup (void) 
- {	
- 	pci_unregister_driver (&ohci_pci_driver);
- }
- module_exit (ohci_hcd_pci_cleanup);
-+*/

+ 12 - 11
target/linux/au1000-2.6/patches/004-mtx1_watchdog.patch

@@ -1,9 +1,9 @@
-diff -urN linux-2.6.16.7/drivers/char/watchdog/Kconfig linux-2.6.16.7.new/drivers/char/watchdog/Kconfig
---- linux-2.6.16.7/drivers/char/watchdog/Kconfig	2006-04-17 23:53:25.000000000 +0200
-+++ linux-2.6.16.7.new/drivers/char/watchdog/Kconfig	2006-04-22 23:23:53.000000000 +0200
-@@ -460,6 +460,14 @@
- 	  timer expired and no process has written to /dev/watchdog during
- 	  that time.
+diff -urN linux-2.6.21.1/drivers/char/watchdog/Kconfig linux-2.6.21.1.new/drivers/char/watchdog/Kconfig
+--- linux-2.6.21.1/drivers/char/watchdog/Kconfig	2007-04-27 23:49:26.000000000 +0200
++++ linux-2.6.21.1.new/drivers/char/watchdog/Kconfig	2007-05-24 20:05:52.000000000 +0200
+@@ -586,6 +586,14 @@
+ 	  To compile this driver as a module, choose M here: the
+ 	  module will be called rm9k_wdt.
  
 +config MTX1_WATCHDOG
 +	tristate "MTX-1 Hardware Watchdog"
@@ -16,13 +16,14 @@ diff -urN linux-2.6.16.7/drivers/char/watchdog/Kconfig linux-2.6.16.7.new/driver
  # S390 Architecture
  
  config ZVM_WATCHDOG
-diff -urN linux-2.6.16.7/drivers/char/watchdog/Makefile linux-2.6.16.7.new/drivers/char/watchdog/Makefile
---- linux-2.6.16.7/drivers/char/watchdog/Makefile	2006-04-17 23:53:25.000000000 +0200
-+++ linux-2.6.16.7.new/drivers/char/watchdog/Makefile	2006-04-22 23:21:18.000000000 +0200
-@@ -65,6 +65,7 @@
- 
+diff -urN linux-2.6.21.1/drivers/char/watchdog/Makefile linux-2.6.21.1.new/drivers/char/watchdog/Makefile
+--- linux-2.6.21.1/drivers/char/watchdog/Makefile	2007-04-27 23:49:26.000000000 +0200
++++ linux-2.6.21.1.new/drivers/char/watchdog/Makefile	2007-05-24 20:05:41.000000000 +0200
+@@ -74,6 +74,7 @@
  # MIPS Architecture
  obj-$(CONFIG_INDYDOG) += indydog.o
+ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
 +obj-$(CONFIG_MTX1_WATCHDOG) += mtx-1_watchdog.o
  
  # S390 Architecture
+ 

+ 0 - 13
target/linux/au1000-2.6/patches/007-mtx1_sio2.patch

@@ -1,13 +0,0 @@
---- linux-2.6.16.7/arch/mips/au1000/mtx-1/board_setup.c	2006-04-17 23:53:25.000000000 +0200
-+++ linux-2.6.16.7.new/arch/mips/au1000/mtx-1/board_setup.c	2006-04-23 14:35:42.000000000 +0200
-@@ -71,9 +71,7 @@
- #endif
- 
- 	// initialize sys_pinfunc:
--	// disable second ethernet port (SYS_PF_NI2)
--	// set U3/GPIO23 to GPIO23 (SYS_PF_U3)
--	au_writel( SYS_PF_NI2 | SYS_PF_U3, SYS_PINFUNC );
-+	au_writel( SYS_PF_NI2, SYS_PINFUNC );
- 
- 	// initialize GPIO
- 	au_writel( 0xFFFFFFFF, SYS_TRIOUTCLR );

+ 0 - 63
target/linux/au1000-2.6/patches/008-isdel_cardbus.patch

@@ -1,63 +0,0 @@
-diff -urN linux-2.6.16.7/arch/mips/au1000/mtx-1/board_setup.c linux-2.6.16.7.new/arch/mips/au1000/mtx-1/board_setup.c
---- linux-2.6.16.7/arch/mips/au1000/mtx-1/board_setup.c	2006-04-23 14:39:21.000000000 +0200
-+++ linux-2.6.16.7.new/arch/mips/au1000/mtx-1/board_setup.c	2006-04-23 14:39:03.000000000 +0200
-@@ -44,6 +44,9 @@
- #include <asm/pgtable.h>
- #include <asm/mach-au1x00/au1000.h>
- 
-+extern int (*board_pci_idsel)(unsigned int devsel, int assert);
-+int    mtx1_pci_idsel(unsigned int devsel, int assert);
-+
- void board_reset (void)
- {
- 	/* Hit BCSR.SYSTEM_CONTROL[SW_RST] */
-@@ -77,11 +80,37 @@
- 	au_writel( 0xFFFFFFFF, SYS_TRIOUTCLR );
- 	au_writel( 0x00000001, SYS_OUTPUTCLR ); // set M66EN (PCI 66MHz) to OFF
- 	au_writel( 0x00000008, SYS_OUTPUTSET ); // set PCI CLKRUN# to OFF
-+	au_writel( 0x00000002, SYS_OUTPUTSET ); // set EXT_IO3 ON
- 	au_writel( 0x00000020, SYS_OUTPUTCLR ); // set eth PHY TX_ER to OFF
- 
- 	// enable LED and set it to green
- 	au_writel( au_readl(GPIO2_DIR) | 0x1800, GPIO2_DIR );
- 	au_writel( 0x18000800, GPIO2_OUTPUT );
- 
-+	board_pci_idsel = mtx1_pci_idsel;
-+
- 	printk("4G Systems MTX-1 Board\n");
- }
-+
-+int
-+mtx1_pci_idsel(unsigned int devsel, int assert)
-+{
-+#define MTX_IDSEL_ONLY_0_AND_3 0
-+#if MTX_IDSEL_ONLY_0_AND_3
-+       if (devsel != 0 && devsel != 3) {
-+               printk("*** not 0 or 3\n");
-+               return 0;
-+       }
-+#endif
-+
-+       if (assert && devsel != 0) {
-+               // supress signal to cardbus
-+               au_writel( 0x00000002, SYS_OUTPUTCLR ); // set EXT_IO3 OFF
-+       }
-+       else {
-+               au_writel( 0x00000002, SYS_OUTPUTSET ); // set EXT_IO3 ON
-+       }
-+       au_sync_udelay(1);
-+       return 1;
-+}
-+
-diff -urN linux-2.6.16.7/arch/mips/au1000/mtx-1/irqmap.c linux-2.6.16.7.new/arch/mips/au1000/mtx-1/irqmap.c
---- linux-2.6.16.7/arch/mips/au1000/mtx-1/irqmap.c	2006-04-23 14:40:54.000000000 +0200
-+++ linux-2.6.16.7.new/arch/mips/au1000/mtx-1/irqmap.c	2006-04-23 14:40:12.000000000 +0200
-@@ -48,7 +48,7 @@
- #include <asm/mach-au1x00/au1000.h>
- 
- char irq_tab_alchemy[][5] __initdata = {
-- [0] = { -1, INTA, INTB, INTX, INTX},   /* IDSEL 00 - AdapterA-Slot0 (top)    */
-+ [0] = { -1, INTA, INTA, INTX, INTX},   /* IDSEL 00 - AdapterA-Slot0 (top)    */
-  [1] = { -1, INTB, INTA, INTX, INTX},   /* IDSEL 01 - AdapterA-Slot1 (bottom) */
-  [2] = { -1, INTC, INTD, INTX, INTX},   /* IDSEL 02 - AdapterB-Slot0 (top)    */
-  [3] = { -1, INTD, INTC, INTX, INTX},   /* IDSEL 03 - AdapterB-Slot1 (bottom) */

+ 0 - 16
target/linux/au1000-2.6/patches/009-pci_clear_errors.patch

@@ -1,16 +0,0 @@
-diff -urN linux-2.6.19/arch/mips/pci/ops-au1000.c linux-2.6.19.new/arch/mips/pci/ops-au1000.c
---- linux-2.6.19/arch/mips/pci/ops-au1000.c	2006-11-29 22:57:37.000000000 +0100
-+++ linux-2.6.19.new/arch/mips/pci/ops-au1000.c	2006-12-28 03:02:42.000000000 +0100
-@@ -172,7 +172,11 @@
- 		error = -1;
- 		DBG("Au1x Master Abort\n");
- 	} else if ((status >> 28) & 0xf) {
--		DBG("PCI ERR detected: status %x\n", status);
-+		DBG("PCI ERR detected: device %d, status %x\n", device, ((status >> 28) & 0xf));
-+		
-+		/* clear errors */
-+		au_writel(status & 0xf000ffff, Au1500_PCI_STATCMD);		
-+
- 		*data = 0xffffffff;
- 		error = -1;
- 	}

+ 1 - 1
target/linux/au1000-2.6/patches/010-au100_gpio_i2c.patch

@@ -376,7 +376,7 @@ diff -urN linux-2.6.19/drivers/i2c/busses/i2c-au1x00gpio.c linux-2.6.19.new/driv
 +		if (adapter->scl_gpio == scl_gpio &&
 +		    adapter->sda_gpio == sda_gpio)
 +		{
-+			i2c_bit_del_bus(&adapter->adapter);
++			i2c_del_adapter(&adapter->adapter);
 +			if (prev)
 +				prev->next = adapter->next;
 +			else

+ 7 - 7
target/linux/au1000-2.6/patches/011-mtx1_leds.patch

@@ -15,13 +15,13 @@ diff -urN linux-2.6.19.2/drivers/leds/Kconfig linux-2.6.19.2.new/drivers/leds/Kc
  comment "LED Triggers"
  
  config LEDS_TRIGGERS
-diff -urN linux-2.6.19.2/drivers/leds/Makefile linux-2.6.19.2.new/drivers/leds/Makefile
---- linux-2.6.19.2/drivers/leds/Makefile	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2.new/drivers/leds/Makefile	2007-03-02 13:49:35.000000000 +0100
-@@ -13,6 +13,7 @@
- obj-$(CONFIG_LEDS_S3C24XX)		+= leds-s3c24xx.o
- obj-$(CONFIG_LEDS_AMS_DELTA)		+= leds-ams-delta.o
- obj-$(CONFIG_LEDS_NET48XX)		+= leds-net48xx.o
+diff -urN linux-2.6.21.1/drivers/leds/Makefile linux-2.6.21.1.new/drivers/leds/Makefile
+--- linux-2.6.21.1/drivers/leds/Makefile	2007-04-27 23:49:26.000000000 +0200
++++ linux-2.6.21.1.new/drivers/leds/Makefile	2007-05-24 23:39:18.000000000 +0200
+@@ -16,6 +16,7 @@
+ obj-$(CONFIG_LEDS_WRAP)			+= leds-wrap.o
+ obj-$(CONFIG_LEDS_H1940)		+= leds-h1940.o
+ obj-$(CONFIG_LEDS_COBALT)		+= leds-cobalt.o
 +obj-$(CONFIG_LEDS_MTX1)			+= leds-mtx1.o
  
  # LED Triggers