mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
orion: add 3.3 support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31528 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -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,
|
||||
},
|
||||
};
|
||||
|
||||
@@ -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,
|
||||
},
|
||||
};
|
||||
|
||||
26
target/linux/orion/patches-3.3/200-dt2_board_support.patch
Normal file
26
target/linux/orion/patches-3.3/200-dt2_board_support.patch
Normal file
@@ -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
|
||||
@@ -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,
|
||||
}, {
|
||||
@@ -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,
|
||||
34
target/linux/orion/patches-3.3/a01-dt2-fixes-for-3.3.patch
Normal file
34
target/linux/orion/patches-3.3/a01-dt2-fixes-for-3.3.patch
Normal file
@@ -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
|
||||
Reference in New Issue
Block a user