summaryrefslogtreecommitdiff
path: root/target/linux
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2014-07-06 18:20:59 +0000
committerHauke Mehrtens <hauke@hauke-m.de>2014-07-06 18:20:59 +0000
commit157cf7e582ccb91c8b72bd6bdc9993a2f0c850a1 (patch)
treea2d5a25f06e2d8a6d69f1dcde25f9c90841a28a9 /target/linux
parent354a1042cca1794f38d70e9884a293e563a8b42a (diff)
downloadmtk-20170518-157cf7e582ccb91c8b72bd6bdc9993a2f0c850a1.zip
mtk-20170518-157cf7e582ccb91c8b72bd6bdc9993a2f0c850a1.tar.gz
mtk-20170518-157cf7e582ccb91c8b72bd6bdc9993a2f0c850a1.tar.bz2
au1000: add support for kernel 3.10
This is compile tested only, please run test and report back. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 41534
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/au1000/au1500/config-3.105
-rw-r--r--target/linux/au1000/au1550/config-3.104
-rw-r--r--target/linux/au1000/config-3.10148
-rw-r--r--target/linux/au1000/patches-3.10/002-openwrt_rootfs.patch11
-rw-r--r--target/linux/au1000/patches-3.10/003-au1000_eth_ioctl.patch17
-rw-r--r--target/linux/au1000/patches-3.10/004-watchdog_low_init.patch12
6 files changed, 197 insertions, 0 deletions
diff --git a/target/linux/au1000/au1500/config-3.10 b/target/linux/au1000/au1500/config-3.10
new file mode 100644
index 0000000..f26be66
--- /dev/null
+++ b/target/linux/au1000/au1500/config-3.10
@@ -0,0 +1,5 @@
+CONFIG_DMA_NONCOHERENT=y
+# CONFIG_MIPS_DB1235 is not set
+CONFIG_MIPS_MTX1=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_WDT_MTX1=y
diff --git a/target/linux/au1000/au1550/config-3.10 b/target/linux/au1000/au1550/config-3.10
new file mode 100644
index 0000000..7d25d60
--- /dev/null
+++ b/target/linux/au1000/au1550/config-3.10
@@ -0,0 +1,4 @@
+CONFIG_DMA_COHERENT=y
+CONFIG_MIPS_DB1235=y
+CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y
+# CONFIG_MIPS_MTX1 is not set
diff --git a/target/linux/au1000/config-3.10 b/target/linux/au1000/config-3.10
new file mode 100644
index 0000000..c5c79f2
--- /dev/null
+++ b/target/linux/au1000/config-3.10
@@ -0,0 +1,148 @@
+CONFIG_64BIT_PHYS_ADDR=y
+CONFIG_ALCHEMY_GPIOINT_AU1000=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+CONFIG_ARCH_DISCARD_MEMBLOCK=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_CEVT_R4K=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/mtdblock0 rootfstype=squashfs,jffs2"
+CONFIG_CMDLINE_BOOL=y
+# CONFIG_CMDLINE_OVERRIDE is not set
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_GENERIC_DUMP_TLB=y
+CONFIG_CPU_HAS_PREFETCH=y
+CONFIG_CPU_HAS_SYNC=y
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPU_MIPS32=y
+CONFIG_CPU_MIPS32_R1=y
+CONFIG_CPU_MIPSR1=y
+CONFIG_CPU_R4K_CACHE_TLB=y
+CONFIG_CPU_R4K_FPU=y
+CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
+CONFIG_CPU_SUPPORTS_HIGHMEM=y
+CONFIG_CRAMFS=m
+CONFIG_CRC16=y
+CONFIG_CSRC_R4K=y
+CONFIG_DMA_NONCOHERENT=y
+CONFIG_DUMMY=m
+CONFIG_EARLY_PRINTK=y
+CONFIG_GENERIC_ATOMIC64=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+CONFIG_GENERIC_IO=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_DEVRES=y
+# CONFIG_HAMRADIO is not set
+CONFIG_HARDWARE_WATCHPOINTS=y
+CONFIG_HAS_DMA=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_DMA_ATTRS=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_FUNCTION_TRACE_MCOUNT_TEST=y
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_HAVE_GENERIC_HARDIRQS=y
+CONFIG_HAVE_IDE=y
+CONFIG_HAVE_KERNEL_BZIP2=y
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_HAVE_MEMBLOCK=y
+CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_HAVE_NET_DSA=y
+CONFIG_HAVE_OPROFILE=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_HW_HAS_PCI=y
+CONFIG_HW_RANDOM=y
+CONFIG_HZ=250
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+CONFIG_HZ_PERIODIC=y
+CONFIG_I2C=m
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCA=m
+CONFIG_I2C_ALGOPCF=m
+# CONFIG_I2C_AU1550 is not set
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_CHARDEV=m
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_IRQ_CPU=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_IRQ_WORK=y
+CONFIG_KERNEL_GZIP=y
+CONFIG_KEXEC=y
+CONFIG_LEDS_GPIO=y
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_MDIO_BOARDINFO=y
+CONFIG_MIPS=y
+CONFIG_MIPS_ALCHEMY=y
+CONFIG_MIPS_AU1X00_ENET=y
+CONFIG_MIPS_DB1000=y
+# CONFIG_MIPS_DB1235 is not set
+# CONFIG_MIPS_GPR is not set
+# CONFIG_MIPS_HUGE_TLB_SUPPORT is not set
+CONFIG_MIPS_L1_CACHE_SHIFT=5
+# CONFIG_MIPS_MACHINE is not set
+# CONFIG_MIPS_MTX1 is not set
+CONFIG_MIPS_MT_DISABLED=y
+# CONFIG_MIPS_XXS1500 is not set
+CONFIG_MODULES_USE_ELF_REL=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+# CONFIG_MTD_CFI_INTELEXT is not set
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+CONFIG_MTD_PHYSMAP=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_PER_CPU_KM=y
+CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PERF_USE_VMALLOC=y
+CONFIG_PHYLIB=y
+CONFIG_PHYS_ADDR_T_64BIT=y
+# CONFIG_PREEMPT_RCU is not set
+# CONFIG_PREVENT_FIRMWARE_BUILD is not set
+# CONFIG_RCU_STALL_COMMON is not set
+# CONFIG_SCSI_DMA is not set
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_PCI=m
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SOFT_WATCHDOG=m
+# CONFIG_STANDALONE is not set
+CONFIG_SYS_HAS_CPU_MIPS32_R1=y
+CONFIG_SYS_HAS_EARLY_PRINTK=y
+CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
+CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
+CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
+CONFIG_SYS_SUPPORTS_ZBOOT=y
+CONFIG_TICK_CPU_ACCOUNTING=y
+CONFIG_UIDGID_CONVERTED=y
+CONFIG_USB_ARCH_HAS_XHCI=y
+CONFIG_USB_SUPPORT=y
+CONFIG_WATCHDOG_CORE=y
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/au1000/patches-3.10/002-openwrt_rootfs.patch b/target/linux/au1000/patches-3.10/002-openwrt_rootfs.patch
new file mode 100644
index 0000000..4fd7654
--- /dev/null
+++ b/target/linux/au1000/patches-3.10/002-openwrt_rootfs.patch
@@ -0,0 +1,11 @@
+--- a/arch/mips/alchemy/board-mtx1.c
++++ b/arch/mips/alchemy/board-mtx1.c
+@@ -171,7 +171,7 @@ static struct platform_device mtx1_gpio_
+
+ static struct mtd_partition mtx1_mtd_partitions[] = {
+ {
+- .name = "filesystem",
++ .name = "rootfs",
+ .size = 0x01C00000,
+ .offset = 0,
+ },
diff --git a/target/linux/au1000/patches-3.10/003-au1000_eth_ioctl.patch b/target/linux/au1000/patches-3.10/003-au1000_eth_ioctl.patch
new file mode 100644
index 0000000..062157b
--- /dev/null
+++ b/target/linux/au1000/patches-3.10/003-au1000_eth_ioctl.patch
@@ -0,0 +1,17 @@
+--- a/drivers/net/ethernet/amd/au1000_eth.c
++++ b/drivers/net/ethernet/amd/au1000_eth.c
+@@ -990,10 +990,14 @@ static void au1000_multicast_list(struct
+ writel(reg, &aup->mac->control);
+ }
+
++#define AU1000_KNOWN_PHY_IOCTLS (SIOCGMIIPHY & 0xfff0)
+ static int au1000_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
+ {
+ struct au1000_private *aup = netdev_priv(dev);
+
++ if((cmd & AU1000_KNOWN_PHY_IOCTLS) != AU1000_KNOWN_PHY_IOCTLS)
++ return -EINVAL;
++
+ if (!netif_running(dev))
+ return -EINVAL;
+
diff --git a/target/linux/au1000/patches-3.10/004-watchdog_low_init.patch b/target/linux/au1000/patches-3.10/004-watchdog_low_init.patch
new file mode 100644
index 0000000..d42470e
--- /dev/null
+++ b/target/linux/au1000/patches-3.10/004-watchdog_low_init.patch
@@ -0,0 +1,12 @@
+--- a/arch/mips/alchemy/board-mtx1.c
++++ b/arch/mips/alchemy/board-mtx1.c
+@@ -100,6 +100,9 @@ void __init board_setup(void)
+ alchemy_gpio_direction_output(211, 1); /* green on */
+ alchemy_gpio_direction_output(212, 0); /* red off */
+
++ /* Set watchdog pin low */
++ alchemy_gpio_direction_output(215, 0);
++
+ pm_power_off = mtx1_power_off;
+ _machine_halt = mtx1_power_off;
+ _machine_restart = mtx1_reset;