orion: add 3.3 support
authorGabor Juhos <juhosg@openwrt.org>
Sun, 29 Apr 2012 15:20:40 +0000 (15:20 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Sun, 29 Apr 2012 15:20:40 +0000 (15:20 +0000)
SVN-Revision: 31528

target/linux/orion/config-3.3 [new file with mode: 0644]
target/linux/orion/dns323/config-3.3 [new file with mode: 0644]
target/linux/orion/harddisk/config-3.3 [new file with mode: 0644]
target/linux/orion/patches-3.3/100-wrt350nv2_openwrt_partition_map.patch [new file with mode: 0644]
target/linux/orion/patches-3.3/101-wnr854t_partition_map.patch [new file with mode: 0644]
target/linux/orion/patches-3.3/200-dt2_board_support.patch [new file with mode: 0644]
target/linux/orion/patches-3.3/300-dns323_partition_map.patch [new file with mode: 0644]
target/linux/orion/patches-3.3/400-fix-section-mismatch-warnings.patch [new file with mode: 0644]
target/linux/orion/patches-3.3/a01-dt2-fixes-for-3.3.patch [new file with mode: 0644]

diff --git a/target/linux/orion/config-3.3 b/target/linux/orion/config-3.3
new file mode 100644 (file)
index 0000000..6909c81
--- /dev/null
@@ -0,0 +1,190 @@
+CONFIG_ALIGNMENT_TRAP=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
+CONFIG_ARCH_NR_GPIO=0
+CONFIG_ARCH_ORION5X=y
+# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
+# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
+# CONFIG_ARCH_SUPPORTS_MSI is not set
+# CONFIG_ARCH_USES_GETTIMEOFFSET is not set
+CONFIG_ARM=y
+# CONFIG_ARM_CPU_SUSPEND is not set
+CONFIG_ARM_L1_CACHE_SHIFT=5
+CONFIG_ARM_NR_BANKS=8
+CONFIG_ARM_PATCH_PHYS_VIRT=y
+# CONFIG_ARM_THUMB is not set
+# CONFIG_ARPD is not set
+CONFIG_ATA=m
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_CACHE_L2X0 is not set
+CONFIG_CLKSRC_MMIO=y
+CONFIG_CMDLINE="root=/dev/mtdblock1 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200"
+CONFIG_CMDLINE_FORCE=y
+CONFIG_CPU_32v5=y
+CONFIG_CPU_ABRT_EV5T=y
+CONFIG_CPU_CACHE_VIVT=y
+CONFIG_CPU_COPY_FEROCEON=y
+CONFIG_CPU_CP15=y
+CONFIG_CPU_CP15_MMU=y
+CONFIG_CPU_FEROCEON=y
+CONFIG_CPU_FEROCEON_OLD_ID=y
+# CONFIG_CPU_ICACHE_DISABLE is not set
+CONFIG_CPU_PABRT_LEGACY=y
+CONFIG_CPU_TLB_FEROCEON=y
+CONFIG_CPU_USE_DOMAINS=y
+CONFIG_CRYPTO_AES=y
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_BLKCIPHER2=y
+CONFIG_CRYPTO_DEV_MV_CESA=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_WORKQUEUE=y
+# CONFIG_DEBUG_USER is not set
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+CONFIG_DNOTIFY=y
+# CONFIG_DSCC4 is not set
+# CONFIG_FARSYNC is not set
+CONFIG_FRAME_POINTER=y
+CONFIG_GENERIC_ATOMIC64=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+# CONFIG_GENERIC_CPU_DEVICES is not set
+CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_IRQ_CHIP=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_SYSFS=y
+# CONFIG_HAMRADIO is not set
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_HAS_DMA=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAVE_AOUT=y
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_PFN_VALID=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_HAVE_GENERIC_HARDIRQS=y
+CONFIG_HAVE_IDE=y
+CONFIG_HAVE_IRQ_WORK=y
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_HAVE_KERNEL_XZ=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_HAVE_MEMBLOCK=y
+CONFIG_HAVE_OPROFILE=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_HAVE_PROC_CPU=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_SCHED_CLOCK=y
+CONFIG_HAVE_SPARSE_IRQ=y
+CONFIG_HDLC=m
+CONFIG_HDLC_CISCO=m
+CONFIG_HDLC_FR=m
+CONFIG_HDLC_PPP=m
+CONFIG_HDLC_RAW=m
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+CONFIG_HW_RANDOM=y
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_MV64XXX=y
+# CONFIG_I2C_PXA_PCI is not set
+CONFIG_INET_LRO=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_KTIME_SCALAR=y
+CONFIG_LEDS_GPIO=y
+CONFIG_LEGACY_PTYS=y
+CONFIG_LEGACY_PTY_COUNT=256
+# CONFIG_MACH_BIGDISK is not set
+# CONFIG_MACH_D2NET is not set
+# CONFIG_MACH_DB88F5281 is not set
+CONFIG_MACH_DNS323=y
+CONFIG_MACH_DT2=y
+# CONFIG_MACH_EDMINI_V2 is not set
+# CONFIG_MACH_KUROBOX_PRO is not set
+# CONFIG_MACH_LINKSTATION_LSCHL is not set
+# CONFIG_MACH_LINKSTATION_LS_HGL is not set
+# CONFIG_MACH_LINKSTATION_MINI is not set
+# CONFIG_MACH_LINKSTATION_PRO is not set
+# CONFIG_MACH_MSS2 is not set
+# CONFIG_MACH_MV2120 is not set
+# CONFIG_MACH_NET2BIG is not set
+# CONFIG_MACH_RD88F5181L_FXO is not set
+# CONFIG_MACH_RD88F5181L_GE is not set
+# CONFIG_MACH_RD88F5182 is not set
+# CONFIG_MACH_RD88F6183AP_GE is not set
+# CONFIG_MACH_TERASTATION_PRO2 is not set
+# CONFIG_MACH_TS209 is not set
+# CONFIG_MACH_TS409 is not set
+# CONFIG_MACH_TS78XX is not set
+CONFIG_MACH_WNR854T=y
+CONFIG_MACH_WRT350N_V2=y
+CONFIG_MDIO_BOARDINFO=y
+# CONFIG_MLX4_CORE is not set
+CONFIG_MTD_PHYSMAP=y
+CONFIG_MV643XX_ETH=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_PER_CPU_KM=y
+CONFIG_NET_DSA=y
+# CONFIG_NET_DSA_MV88E6060 is not set
+CONFIG_NET_DSA_MV88E6131=y
+CONFIG_NET_DSA_MV88E6XXX=y
+CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
+CONFIG_NET_DSA_TAG_DSA=y
+# CONFIG_NET_DSA_TAG_TRAILER is not set
+# CONFIG_NET_VENDOR_3COM is not set
+CONFIG_NLS=m
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_PAGE_OFFSET=0xC0000000
+CONFIG_PATA_ARTOP=m
+CONFIG_PCI=y
+CONFIG_PERF_USE_VMALLOC=y
+CONFIG_PHYLIB=y
+CONFIG_PLAT_ORION=y
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_QUOTACTL is not set
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_ISL1208=y
+CONFIG_SATA_PMP=y
+CONFIG_SCSI=m
+CONFIG_SCSI_MOD=m
+# CONFIG_SCSI_MULTI_LUN is not set
+# CONFIG_SENSORS_SCH56XX_COMMON is not set
+CONFIG_SPLIT_PTLOCK_CPUS=999999
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_UID16=y
+CONFIG_USB=m
+CONFIG_USB_ARCH_HAS_XHCI=y
+CONFIG_USB_COMMON=m
+CONFIG_USB_EHCI_HCD=m
+# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_UHCI_HCD=m
+CONFIG_VECTORS_BASE=0xffff0000
+# CONFIG_VFP is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_WAN=y
+CONFIG_XZ_DEC=y
+CONFIG_ZBOOT_ROM_BSS=0x0
+CONFIG_ZBOOT_ROM_TEXT=0x0
+CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/orion/dns323/config-3.3 b/target/linux/orion/dns323/config-3.3
new file mode 100644 (file)
index 0000000..b0daf7f
--- /dev/null
@@ -0,0 +1,47 @@
+CONFIG_ATA=y
+CONFIG_ATAGS_PROC=y
+CONFIG_BLK_DEV_DM=y
+CONFIG_BLK_DEV_MD=y
+CONFIG_BLK_DEV_SD=y
+CONFIG_CMDLINE="root=/dev/mtdblock3 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200"
+CONFIG_CRC16=y
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_BLKCIPHER=y
+CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_PCOMP2=y
+CONFIG_DM_CRYPT=y
+CONFIG_DM_MIRROR=y
+CONFIG_DM_SNAPSHOT=y
+CONFIG_EXPORTFS=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT3_FS=y
+CONFIG_EXT4_FS=y
+CONFIG_FS_MBCACHE=y
+CONFIG_GPIO_DEVICE=y
+CONFIG_INPUT=y
+CONFIG_INPUT_EVDEV=y
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_JBD=y
+CONFIG_JBD2=y
+CONFIG_KEXEC=y
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_MD=y
+CONFIG_MD_AUTODETECT=y
+CONFIG_MD_LINEAR=y
+# CONFIG_MD_MULTIPATH is not set
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
+# CONFIG_MD_RAID10 is not set
+# CONFIG_MD_RAID456 is not set
+CONFIG_NLS=y
+CONFIG_RTC_DRV_M41T80=y
+CONFIG_RTC_DRV_M41T80_WDT=y
+CONFIG_SATA_MV=y
+CONFIG_SCSI=y
+CONFIG_SCSI_MOD=y
+CONFIG_SENSORS_G760A=y
+CONFIG_SENSORS_LM75=y
+# CONFIG_USB_SUPPORT is not set
+CONFIG_XFS_FS=y
diff --git a/target/linux/orion/harddisk/config-3.3 b/target/linux/orion/harddisk/config-3.3
new file mode 100644 (file)
index 0000000..a566aa5
--- /dev/null
@@ -0,0 +1,28 @@
+CONFIG_ATA=y
+CONFIG_BLK_DEV_DM=y
+CONFIG_BLK_DEV_MD=y
+CONFIG_BLK_DEV_SD=y
+CONFIG_CRC16=y
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_SNAPSHOT is not set
+CONFIG_EXT4_FS=y
+CONFIG_FS_MBCACHE=y
+CONFIG_JBD2=y
+CONFIG_MD=y
+CONFIG_MD_AUTODETECT=y
+CONFIG_MD_LINEAR=y
+# CONFIG_MD_MULTIPATH is not set
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
+# CONFIG_MD_RAID10 is not set
+# CONFIG_MD_RAID456 is not set
+CONFIG_NLS=y
+CONFIG_SATA_MV=y
+CONFIG_SCSI=y
+CONFIG_SCSI_MOD=y
+CONFIG_USB=y
+CONFIG_USB_COMMON=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_STORAGE=y
diff --git a/target/linux/orion/patches-3.3/100-wrt350nv2_openwrt_partition_map.patch b/target/linux/orion/patches-3.3/100-wrt350nv2_openwrt_partition_map.patch
new file mode 100644 (file)
index 0000000..5e2dc25
--- /dev/null
@@ -0,0 +1,32 @@
+--- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c
++++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
+@@ -134,11 +134,11 @@ static struct mtd_partition wrt350n_v2_n
+       {
+               .name           = "kernel",
+               .offset         = 0x00000000,
+-              .size           = 0x00760000,
++              .size           = 0x00100000,   // change to kernel mtd size here (1/3)
+       }, {
+               .name           = "rootfs",
+-              .offset         = 0x001a0000,
+-              .size           = 0x005c0000,
++              .offset         = 0x00100000,   // change to kernel mtd size here (2/3)
++              .size           = 0x00650000,   // adopt to kernel mtd size here (3/3) = 0x00750000 - <kernel mtd size>
+       }, {
+               .name           = "lang",
+               .offset         = 0x00760000,
+@@ -151,6 +151,14 @@ static struct mtd_partition wrt350n_v2_n
+               .name           = "u-boot",
+               .offset         = 0x007c0000,
+               .size           = 0x00040000,
++      }, {
++              .name           = "eRcOmM_do_not_touch",
++              .offset         = 0x00750000,
++              .size           = 0x00010000,   // erasesize
++      }, {
++              .name           = "image",      // for sysupgrade
++              .offset         = 0x00000000,
++              .size           = 0x00750000,
+       },
+ };
diff --git a/target/linux/orion/patches-3.3/101-wnr854t_partition_map.patch b/target/linux/orion/patches-3.3/101-wnr854t_partition_map.patch
new file mode 100644 (file)
index 0000000..9757d45
--- /dev/null
@@ -0,0 +1,13 @@
+--- a/arch/arm/mach-orion5x/wnr854t-setup.c
++++ b/arch/arm/mach-orion5x/wnr854t-setup.c
+@@ -66,6 +66,10 @@ static struct mtd_partition wnr854t_nor_
+               .name           = "uboot",
+               .offset         = 0x00760000,
+               .size           = 0x00040000,
++      }, {
++              .name           = "image",      // for sysupgrade
++              .offset         = 0x00000000,
++              .size           = 0x00760000,
+       },
+ };
diff --git a/target/linux/orion/patches-3.3/200-dt2_board_support.patch b/target/linux/orion/patches-3.3/200-dt2_board_support.patch
new file mode 100644 (file)
index 0000000..91909ab
--- /dev/null
@@ -0,0 +1,26 @@
+--- a/arch/arm/mach-orion5x/Kconfig
++++ b/arch/arm/mach-orion5x/Kconfig
+@@ -16,6 +16,13 @@ config MACH_RD88F5182
+         Say 'Y' here if you want your kernel to support the
+         Marvell Orion-NAS (88F5182) RD2
++config MACH_DT2
++      bool "Freecom DataTank Gateway"
++      select I2C_BOARDINFO
++      help
++        Say 'Y' here if you want your kernel to support the
++        Freecom DataTank Gateway
++
+ config MACH_KUROBOX_PRO
+       bool "KuroBox Pro"
+       select I2C_BOARDINFO
+--- a/arch/arm/mach-orion5x/Makefile
++++ b/arch/arm/mach-orion5x/Makefile
+@@ -18,6 +18,7 @@ obj-$(CONFIG_MACH_BIGDISK)   += d2net-setu
+ obj-$(CONFIG_MACH_NET2BIG)    += net2big-setup.o
+ obj-$(CONFIG_MACH_MSS2)               += mss2-setup.o
+ obj-$(CONFIG_MACH_WNR854T)    += wnr854t-setup.o
++obj-$(CONFIG_MACH_DT2)                += dt2-setup.o
+ obj-$(CONFIG_MACH_RD88F5181L_GE)      += rd88f5181l-ge-setup.o
+ obj-$(CONFIG_MACH_RD88F5181L_FXO)     += rd88f5181l-fxo-setup.o
+ obj-$(CONFIG_MACH_RD88F6183AP_GE)     += rd88f6183ap-ge-setup.o
diff --git a/target/linux/orion/patches-3.3/300-dns323_partition_map.patch b/target/linux/orion/patches-3.3/300-dns323_partition_map.patch
new file mode 100644 (file)
index 0000000..6eab81f
--- /dev/null
@@ -0,0 +1,30 @@
+--- a/arch/arm/mach-orion5x/dns323-setup.c
++++ b/arch/arm/mach-orion5x/dns323-setup.c
+@@ -113,6 +113,13 @@ subsys_initcall(dns323_pci_init);
+  *  0x00020000-0x001a0000 : "Linux Kernel"
+  *  0x001a0000-0x007d0000 : "File System"
+  *  0x007d0000-0x00800000 : "u-boot"
++ *
++ * Layout as used by OpenWrt
++ *  0x00000000-0x00010000 : "MTD1"
++ *  0x00010000-0x00020000 : "MTD2"
++ *  0x00020000-0x001a0000 : "kernel"
++ *  0x001a0000-0x007d0000 : "rootfs"
++ *  0x007d0000-0x00800000 : "u-boot"
+  */
+ #define DNS323_NOR_BOOT_BASE 0xf4000000
+@@ -128,11 +135,11 @@ static struct mtd_partition dns323_parti
+               .size   = 0x00010000,
+               .offset = 0x00010000,
+       }, {
+-              .name   = "Linux Kernel",
++              .name   = "kernel",
+               .size   = 0x00180000,
+               .offset = 0x00020000,
+       }, {
+-              .name   = "File System",
++              .name   = "rootfs",
+               .size   = 0x00630000,
+               .offset = 0x001A0000,
+       }, {
diff --git a/target/linux/orion/patches-3.3/400-fix-section-mismatch-warnings.patch b/target/linux/orion/patches-3.3/400-fix-section-mismatch-warnings.patch
new file mode 100644 (file)
index 0000000..84ca91f
--- /dev/null
@@ -0,0 +1,31 @@
+--- a/arch/arm/mach-orion5x/common.c
++++ b/arch/arm/mach-orion5x/common.c
+@@ -192,7 +192,7 @@ void __init orion5x_init_early(void)
+ int orion5x_tclk;
+-int __init orion5x_find_tclk(void)
++static __init int orion5x_find_tclk(void)
+ {
+       u32 dev, rev;
+@@ -204,7 +204,7 @@ int __init orion5x_find_tclk(void)
+       return 166666667;
+ }
+-static void orion5x_timer_init(void)
++static __init void orion5x_timer_init(void)
+ {
+       orion5x_tclk = orion5x_find_tclk();
+--- a/arch/arm/mach-orion5x/addr-map.c
++++ b/arch/arm/mach-orion5x/addr-map.c
+@@ -76,7 +76,7 @@ static int __init cpu_win_can_remap(cons
+ /*
+  * Description of the windows needed by the platform code
+  */
+-static struct __initdata orion_addr_map_cfg addr_map_cfg = {
++static struct orion_addr_map_cfg addr_map_cfg __initdata = {
+       .num_wins = 8,
+       .cpu_win_can_remap = cpu_win_can_remap,
+       .bridge_virt_base = ORION5X_BRIDGE_VIRT_BASE,
diff --git a/target/linux/orion/patches-3.3/a01-dt2-fixes-for-3.3.patch b/target/linux/orion/patches-3.3/a01-dt2-fixes-for-3.3.patch
new file mode 100644 (file)
index 0000000..c101f14
--- /dev/null
@@ -0,0 +1,34 @@
+--- a/arch/arm/mach-orion5x/dt2-setup.c
++++ b/arch/arm/mach-orion5x/dt2-setup.c
+@@ -146,7 +146,7 @@ void __init dt2_pci_preinit(void)
+       }
+ }
+-static int __init dt2_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
++static int __init dt2_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
+ {
+       int irq;
+@@ -383,8 +383,7 @@ __tagtable(ATAG_MV_UBOOT, parse_tag_dt2_
+  *
+  * Vanilla kernel should use "tag_fixup_mem32" function.
+  */
+-void __init openwrt_fixup(struct machine_desc *mdesc, struct tag *t,
+-                          char **from, struct meminfo *meminfo)
++void __init openwrt_fixup(struct tag *t, char **from, struct meminfo *meminfo)
+ {
+       char *p = NULL;
+       static char openwrt_init_tag[] __initdata = " init=/etc/preinit";
+@@ -437,10 +436,11 @@ void __init openwrt_fixup(struct machine
+ /* Warning: Freecom uses their own custom bootloader with mach-type (=1500) */
+ MACHINE_START(DT2, "Freecom DataTank Gateway")
+       /* Maintainer: Zintis Petersons <Zintis.Petersons@abcsolutions.lv> */
+-      .boot_params    = 0x00000100,
++      .atag_offset    = 0x100,
+       .init_machine   = dt2_init,
+       .map_io         = orion5x_map_io,
+       .init_irq       = orion5x_init_irq,
+       .timer          = &orion5x_timer,
+       .fixup          = openwrt_fixup, //tag_fixup_mem32,
++      .restart        = orion5x_restart,
+ MACHINE_END