summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2011-04-13 09:57:21 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2011-04-13 09:57:21 +0200
commit6e5edc83271beb9ac4017bdf74b540da2ebe4594 (patch)
tree0a4a7ded2460ebedd40f88ff2414f90c44b275da /target
parentfec1fd5598765d02691cb4c2b3ea3f1938be7824 (diff)
parent851a4486f663ddb8acffd4dd870d4121290b35d5 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'target')
-rw-r--r--target/config/Config.in5
-rw-r--r--target/linux/Config.in1
-rw-r--r--target/linux/config/Config.in.block1
-rw-r--r--target/linux/config/Config.in.graphics19
-rw-r--r--target/linux/config/Config.in.input5
-rw-r--r--target/linux/config/Config.in.mips16
-rw-r--r--target/linux/config/Config.in.netdevice11
-rw-r--r--target/linux/config/Config.in.systems7
-rw-r--r--target/linux/config/Config.in.usb7
-rw-r--r--target/linux/patches/2.6.37/usb-defaults-off.patch32
-rw-r--r--target/linux/patches/2.6.37/vga-cons-default-off.patch12
-rw-r--r--target/mips64el/Makefile32
-rw-r--r--target/mips64el/kernel.config207
-rw-r--r--target/mips64el/sys-available/lemote-yeelong3
-rw-r--r--target/mips64el/sys-available/qemu-mips64el1
-rw-r--r--target/mips64el/sys-available/toolchain-mips64el1
-rw-r--r--target/mips64el/target.mk2
17 files changed, 284 insertions, 78 deletions
diff --git a/target/config/Config.in b/target/config/Config.in
index ff8668b35..265e339e8 100644
--- a/target/config/Config.in
+++ b/target/config/Config.in
@@ -176,10 +176,13 @@ config ADK_TARGET_CFLAGS
default "-mcpu=v8" if ADK_CPU_SPARC_V8
default "-m64 -mcpu=v9" if ADK_CPU_SPARC_V9
default "-march=loongson2f" if ADK_CPU_LOONGSON2F
+ default "-march=mips32" if ADK_CPU_MIPS32
+ default "-march=mips64" if ADK_CPU_MIPS64
default "-march=armv5te -mtune=arm926ej-s" if ADK_CPU_ARMV5
config ADK_TARGET_CMDLINE
string
+ default "console=tty no_auto_cmd" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_FON_FON2100
default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
@@ -286,6 +289,7 @@ default ADK_TARGET_ROOTFS_ARCHIVE
config ADK_TARGET_ROOTFS_INITRAMFS
bool "initramfs filesystem"
depends on \
+ ADK_LINUX_MIPS64EL || \
ADK_LINUX_PPC || \
ADK_LINUX_SPARC || \
ADK_LINUX_X86 || \
@@ -299,6 +303,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
bool "initramfs filesystem included into kernel image"
select ADK_LINUX_INITRAMFS_BUILTIN
depends on \
+ ADK_LINUX_MIPS64EL || \
ADK_LINUX_PPC || \
ADK_LINUX_SPARC || \
ADK_LINUX_X86 || \
diff --git a/target/linux/Config.in b/target/linux/Config.in
index 6d482b1ab..cf4890059 100644
--- a/target/linux/Config.in
+++ b/target/linux/Config.in
@@ -17,6 +17,7 @@ source target/linux/config/Config.in.bluetooth
source target/linux/config/Config.in.watchdog
source target/linux/config/Config.in.leds
source target/linux/config/Config.in.misc
+source target/linux/config/Config.in.mips
source target/linux/config/Config.in.lib
source target/linux/config/Config.in.pm
source target/linux/config/Config.in.kvm
diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block
index 1019477c1..a6f26dc71 100644
--- a/target/linux/config/Config.in.block
+++ b/target/linux/config/Config.in.block
@@ -97,6 +97,7 @@ config ADK_KERNEL_PATA_AMD
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default n
config ADK_KERNEL_PATA_SC1200
diff --git a/target/linux/config/Config.in.graphics b/target/linux/config/Config.in.graphics
index b6834005f..1aafdf85f 100644
--- a/target/linux/config/Config.in.graphics
+++ b/target/linux/config/Config.in.graphics
@@ -10,6 +10,13 @@ config ADK_KERNEL_VT_CONSOLE
default y if ADK_TARGET_WITH_VGA
default n
+config ADK_KERNEL_FONTS
+ boolean
+
+config ADK_KERNEL_FONT_8x16
+ boolean
+ select ADK_KERNEL_FONTS
+
config ADK_KERNEL_FB
boolean
@@ -48,6 +55,18 @@ config ADK_KERNEL_FB_GEODE_LX
help
Framebuffer support for ALIX boards with VGA.
+config ADK_KERNEL_FB_SM7XX
+ prompt "................................ Framebuffer support for Lemote Yeelong"
+ tristate
+ select ADK_KERNEL_FB
+ select ADK_KERNEL_FRAMEBUFFER_CONSOLE
+ select ADK_KERNEL_FONT_8x16
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+ default n
+ depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+ help
+ Framebuffer support for Lemote Yeelong.
+
config ADK_HARDWARE_GRAPHICS_INTEL_I915
prompt "................................ Support for Intel graphic cards (AGP/DRM/KMS)"
boolean
diff --git a/target/linux/config/Config.in.input b/target/linux/config/Config.in.input
index 754cf7340..429c2ad73 100644
--- a/target/linux/config/Config.in.input
+++ b/target/linux/config/Config.in.input
@@ -5,6 +5,7 @@ config ADK_KERNEL_INPUT
boolean
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
default n
@@ -12,6 +13,7 @@ config ADK_KERNEL_INPUT_KEYBOARD
boolean
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
default n
@@ -19,6 +21,7 @@ config ADK_KERNEL_KEYBOARD_ATKBD
boolean
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
default n
@@ -26,6 +29,7 @@ config ADK_KERNEL_INPUT_MOUSE
boolean
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
default n
@@ -33,6 +37,7 @@ config ADK_KERNEL_INPUT_MOUSEDEV
boolean
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76G2
default n
diff --git a/target/linux/config/Config.in.mips b/target/linux/config/Config.in.mips
new file mode 100644
index 000000000..0b0d1ea4f
--- /dev/null
+++ b/target/linux/config/Config.in.mips
@@ -0,0 +1,16 @@
+menu "MIPS devices support"
+
+config ADK_KERNEL_MIPS_PLATFORM_DEVICES
+ boolean
+
+config ADK_KERNEL_LEMOTE_YEELOONG2F
+ prompt ".................................. RTC support for PC CMOS"
+ boolean
+ select ADK_KERNEL_MIPS_PLATFORM_DEVICES
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+ default n
+ depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+ help
+ Embedded controller suppport.
+
+endmenu
diff --git a/target/linux/config/Config.in.netdevice b/target/linux/config/Config.in.netdevice
index a0ec08247..bbd2990e9 100644
--- a/target/linux/config/Config.in.netdevice
+++ b/target/linux/config/Config.in.netdevice
@@ -52,6 +52,17 @@ config ADK_KERNEL_NATSEMI
default n
help
+config ADK_KERNEL_8139TOO
+ boolean
+ select ADK_KERNEL_NETDEVICES
+ select ADK_KERNEL_NET_ETHERNET
+ select ADK_KERNEL_NET_PCI
+ select ADK_KERNEL_MII
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
+ default n
+ help
+
+
config ADK_KERNEL_VIA_RHINE
boolean
select ADK_KERNEL_NETDEVICES
diff --git a/target/linux/config/Config.in.systems b/target/linux/config/Config.in.systems
index 3d933c5ed..d744e45a1 100644
--- a/target/linux/config/Config.in.systems
+++ b/target/linux/config/Config.in.systems
@@ -20,6 +20,13 @@ config ADK_KERNEL_ATHEROS_AR71XX
config ADK_KERNEL_AR71XX_MACH_RB4XX
boolean
+# mips64 systems
+config ADK_KERNEL_MACH_LOONGSON
+ boolean
+
+config ADK_KERNEL_LEMOTE_MACH2F
+ boolean
+
# arm systems
config ADK_KERNEL_ARCH_AT91
boolean
diff --git a/target/linux/config/Config.in.usb b/target/linux/config/Config.in.usb
index 52eb92864..e7905b531 100644
--- a/target/linux/config/Config.in.usb
+++ b/target/linux/config/Config.in.usb
@@ -21,6 +21,10 @@ config ADK_KERNEL_USB_UHCI_HCD
boolean
select ADK_PACKAGE_KMOD_USB_CONTROLLER
+config ADK_KERNEL_USB_OHCI_HCD
+ boolean
+ select ADK_PACKAGE_KMOD_USB_CONTROLLER
+
config ADK_KPACKAGE_KMOD_USB
prompt "kmod-usb......................... USB support"
tristate
@@ -30,6 +34,7 @@ config ADK_KPACKAGE_KMOD_USB
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default y if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
default n
help
@@ -69,6 +74,7 @@ config ADK_KPACKAGE_KMOD_USB_UHCI_HCD
depends on !ADK_KERNEL_USB_UHCI_HCD
depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default n
help
The Universal Host Controller Interface is a standard by Intel for
@@ -138,6 +144,7 @@ config ADK_KPACKAGE_KMOD_USB_EHCI_HCD
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
default y if ADK_TARGET_SYSTEM_IBM_X40
+ default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
default n
help
The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
diff --git a/target/linux/patches/2.6.37/usb-defaults-off.patch b/target/linux/patches/2.6.37/usb-defaults-off.patch
new file mode 100644
index 000000000..31367108a
--- /dev/null
+++ b/target/linux/patches/2.6.37/usb-defaults-off.patch
@@ -0,0 +1,32 @@
+diff -Nur linux-2.6.37.orig//drivers/usb/core/Kconfig linux-2.6.37/drivers/usb/core/Kconfig
+--- linux-2.6.37.orig//drivers/usb/core/Kconfig 2011-01-05 01:50:19.000000000 +0100
++++ linux-2.6.37/drivers/usb/core/Kconfig 2011-04-12 19:04:23.000000000 +0200
+@@ -59,7 +59,7 @@
+ config USB_DEVICE_CLASS
+ bool "USB device class-devices (DEPRECATED)"
+ depends on USB
+- default y
++ default n
+ ---help---
+ Userspace access to USB devices is granted by device-nodes exported
+ directly from the usbdev in sysfs. Old versions of the driver
+diff -Nur linux-2.6.37.orig//drivers/usb/host/Kconfig linux-2.6.37/drivers/usb/host/Kconfig
+--- linux-2.6.37.orig//drivers/usb/host/Kconfig 2011-01-05 01:50:19.000000000 +0100
++++ linux-2.6.37/drivers/usb/host/Kconfig 2011-04-12 19:04:48.000000000 +0200
+@@ -62,6 +62,7 @@
+ config USB_EHCI_ROOT_HUB_TT
+ bool "Root Hub Transaction Translators"
+ depends on USB_EHCI_HCD
++ default n
+ ---help---
+ Some EHCI chips have vendor-specific extensions to integrate
+ transaction translators, so that no OHCI or UHCI companion
+@@ -74,7 +75,7 @@
+ config USB_EHCI_TT_NEWSCHED
+ bool "Improved Transaction Translator scheduling"
+ depends on USB_EHCI_HCD
+- default y
++ default n
+ ---help---
+ This changes the periodic scheduling code to fill more of the low
+ and full speed bandwidth available from the Transaction Translator
diff --git a/target/linux/patches/2.6.37/vga-cons-default-off.patch b/target/linux/patches/2.6.37/vga-cons-default-off.patch
new file mode 100644
index 000000000..178aeeeb9
--- /dev/null
+++ b/target/linux/patches/2.6.37/vga-cons-default-off.patch
@@ -0,0 +1,12 @@
+diff -Nur linux-2.6.37.orig//drivers/video/console/Kconfig linux-2.6.37/drivers/video/console/Kconfig
+--- linux-2.6.37.orig//drivers/video/console/Kconfig 2011-01-05 01:50:19.000000000 +0100
++++ linux-2.6.37/drivers/video/console/Kconfig 2011-04-12 16:29:34.000000000 +0200
+@@ -7,7 +7,7 @@
+ config VGA_CONSOLE
+ bool "VGA text console" if EMBEDDED || !X86
+ depends on !4xx && !8xx && !SPARC && !M68K && !PARISC && !FRV && !SUPERH && !BLACKFIN && !AVR32 && !MN10300 && (!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER)
+- default y
++ default n
+ help
+ Saying Y here will allow you to use Linux in text mode through a
+ display that complies with the generic VGA standard. Virtually
diff --git a/target/mips64el/Makefile b/target/mips64el/Makefile
index 3c4a08f64..fa160b1ff 100644
--- a/target/mips64el/Makefile
+++ b/target/mips64el/Makefile
@@ -7,7 +7,11 @@ include $(TOPDIR)/mk/modules.mk
include $(TOPDIR)/mk/kernel-build.mk
include $(TOPDIR)/mk/image.mk
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+KERNEL:=$(LINUX_DIR)/vmlinuz
+else
KERNEL:=$(LINUX_DIR)/vmlinux
+endif
ifeq ($(ADK_TARGET_FS),nfsroot)
imageinstall: $(BIN_DIR)/$(ROOTFSUSERTARBALL)
@@ -31,3 +35,31 @@ imageinstall: $(BIN_DIR)/$(INITRAMFS)
@echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}'
@echo 'qemu-system-mips64el -nographic -M malta -kernel $(BIN_DIR)/${TARGET_KERNEL} -initrd ${BIN_DIR}/${INITRAMFS}'
endif
+ifeq ($(ADK_TARGET_FS),usb)
+imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
+ @echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)"
+ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
+ @echo "Startup the netbook and type del to enter PMON:"
+ @echo "PMON> load /dev/fs/ext2@usb0/boot/kernel"
+ @echo "PMON> g console=tty no_auto_cmd"
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+imageinstall: $(BIN_DIR)/$(INITRAMFS)
+ @cp $(KERNEL) $(BIN_DIR)/$(TARGET_KERNEL)
+ @echo 'The kernel file is: $(BIN_DIR)/${TARGET_KERNEL}'
+ @echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}'
+ifeq ($(ADK_TARGET_SYSTEM_QEMU_MIPS64EL),y)
+ @echo "Start qemu with following command line:"
+ @echo 'qemu-system-mips64el -nographic -net user,hostfwd=tcp::2222-:22 -net nic,model=e1000 -kernel $(BIN_DIR)/$(TARGET_KERNEL) -initrd ${BIN_DIR}/${INITRAMFS}'
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfs-piggyback)
+imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs
+ @cp $(KERNEL) $(BIN_DIR)/${TARGET_KERNEL}
+ @echo 'The kernel+initramfs file is: $(BIN_DIR)/${TARGET_KERNEL}'
+ifeq ($(ADK_TARGET_SYSTEM_QEMU_MIPS64EL),y)
+ @echo "Start qemu with following command line:"
+ @echo 'qemu-system-mips64el -nographic -net user,hostfwd=tcp::2222-:22 -net nic,model=e1000 -kernel $(BIN_DIR)/$(TARGET_KERNEL)'
+endif
+endif
diff --git a/target/mips64el/kernel.config b/target/mips64el/kernel.config
index 40a48f745..9803b4212 100644
--- a/target/mips64el/kernel.config
+++ b/target/mips64el/kernel.config
@@ -1,14 +1,13 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.36
-# Tue Jan 4 13:47:01 2011
+# Linux/mips 2.6.37 Kernel Configuration
+# Tue Apr 12 15:11:16 2011
#
CONFIG_MIPS=y
#
# Machine selection
#
-CONFIG_ZONE_DMA=y
# CONFIG_MIPS_ALCHEMY is not set
# CONFIG_AR7 is not set
# CONFIG_ATHEROS_AR71XX is not set
@@ -19,8 +18,8 @@ CONFIG_ZONE_DMA=y
# CONFIG_MACH_JAZZ is not set
# CONFIG_MACH_JZ4740 is not set
# CONFIG_LASAT is not set
-# CONFIG_MACH_LOONGSON is not set
-CONFIG_MIPS_MALTA=y
+CONFIG_MACH_LOONGSON=y
+# CONFIG_MIPS_MALTA is not set
# CONFIG_MIPS_SIM is not set
# CONFIG_NEC_MARKEINS is not set
# CONFIG_MACH_VR41XX is not set
@@ -51,9 +50,14 @@ CONFIG_MIPS_MALTA=y
# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
# CONFIG_ALCHEMY_GPIO_INDIRECT is not set
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_CAVIUM_OCTEON_HELPER=y
+# CONFIG_LEMOTE_FULOONG2E is not set
+CONFIG_LEMOTE_MACH2F=y
+CONFIG_CS5536=y
+# CONFIG_CS5536_MFGPT is not set
CONFIG_LOONGSON_UART_BASE=y
-# CONFIG_LOONGSON_MC146818 is not set
+CONFIG_LOONGSON_MC146818=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
@@ -65,8 +69,6 @@ CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y
-CONFIG_BOOT_RAW=y
CONFIG_CEVT_R4K_LIB=y
CONFIG_CEVT_R4K=y
CONFIG_CSRC_R4K_LIB=y
@@ -75,89 +77,68 @@ CONFIG_DMA_NONCOHERENT=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_I8259=y
-CONFIG_MIPS_BONITO64=y
-CONFIG_MIPS_MSC=y
# CONFIG_MIPS_MACHINE is not set
# CONFIG_NO_IOPORT is not set
CONFIG_GENERIC_ISA_DMA=y
+CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y
CONFIG_ISA_DMA_API=y
-# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_GENERIC_GPIO=y
CONFIG_CPU_LITTLE_ENDIAN=y
-CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
-CONFIG_SYS_SUPPORTS_HUGETLBFS=y
CONFIG_IRQ_CPU=y
-CONFIG_IRQ_GIC=y
-CONFIG_MIPS_BOARDS_GEN=y
-CONFIG_PCI_GT64XXX_PCI0=y
-CONFIG_SWAP_IO_SPACE=y
CONFIG_BOOT_ELF32=y
-CONFIG_MIPS_L1_CACHE_SHIFT=6
+CONFIG_MIPS_L1_CACHE_SHIFT=5
#
# CPU selection
#
-# CONFIG_CPU_MIPS32_R1 is not set
-# CONFIG_CPU_MIPS32_R2 is not set
-CONFIG_CPU_MIPS64_R1=y
-# CONFIG_CPU_NEVADA is not set
-# CONFIG_CPU_RM7000 is not set
+CONFIG_CPU_LOONGSON2F=y
+CONFIG_CPU_NOP_WORKAROUNDS=y
+CONFIG_CPU_JUMP_WORKAROUNDS=y
+CONFIG_CPU_LOONGSON2F_WORKAROUNDS=y
CONFIG_SYS_SUPPORTS_ZBOOT=y
-CONFIG_SYS_HAS_CPU_MIPS32_R1=y
-CONFIG_SYS_HAS_CPU_MIPS32_R2=y
-CONFIG_SYS_HAS_CPU_MIPS64_R1=y
-CONFIG_SYS_HAS_CPU_NEVADA=y
-CONFIG_SYS_HAS_CPU_RM7000=y
-CONFIG_CPU_MIPS64=y
-CONFIG_CPU_MIPSR1=y
+CONFIG_CPU_LOONGSON2=y
+CONFIG_SYS_HAS_CPU_LOONGSON2F=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y
-CONFIG_CPU_SUPPORTS_HUGEPAGES=y
-CONFIG_HARDWARE_WATCHPOINTS=y
+CONFIG_CPU_SUPPORTS_CPUFREQ=y
+CONFIG_CPU_SUPPORTS_ADDRWINCFG=y
+CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED=y
#
# Kernel type
#
# CONFIG_32BIT is not set
CONFIG_64BIT=y
-CONFIG_PAGE_SIZE_4KB=y
-# CONFIG_PAGE_SIZE_16KB is not set
+CONFIG_PAGE_SIZE_16KB=y
# CONFIG_PAGE_SIZE_64KB is not set
+CONFIG_FORCE_MAX_ZONEORDER=11
CONFIG_BOARD_SCACHE=y
-CONFIG_MIPS_CPU_SCACHE=y
-CONFIG_CPU_HAS_PREFETCH=y
CONFIG_MIPS_MT_DISABLED=y
-# CONFIG_MIPS_MT_SMP is not set
-CONFIG_SYS_SUPPORTS_MULTITHREADING=y
-# CONFIG_MIPS_VPE_LOADER is not set
-# CONFIG_MIPS_CMP is not set
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
-# CONFIG_CPU_HAS_SMARTMIPS is not set
+CONFIG_CPU_HAS_WB=y
CONFIG_CPU_HAS_SYNC=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_CPU_SUPPORTS_HIGHMEM=y
-CONFIG_SYS_SUPPORTS_SMARTMIPS=y
-CONFIG_ARCH_FLATMEM_ENABLE=y
+CONFIG_SYS_SUPPORTS_HIGHMEM=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
+CONFIG_SPARSEMEM_MANUAL=y
+CONFIG_SPARSEMEM=y
+CONFIG_HAVE_MEMORY_PRESENT=y
+CONFIG_SPARSEMEM_STATIC=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_PHYS_ADDR_T_64BIT=y
-CONFIG_ZONE_DMA_FLAG=1
+CONFIG_ZONE_DMA_FLAG=0
CONFIG_VIRT_TO_BUS=y
# CONFIG_KSM is not set
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_SYS_SUPPORTS_MIPS_CMP=y
+CONFIG_NEED_PER_CPU_KM=y
# CONFIG_NO_HZ is not set
# CONFIG_HIGH_RES_TIMERS is not set
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-CONFIG_CPU_SUPPORTS_HR_SCHED_CLOCK=y
# CONFIG_HZ_48 is not set
CONFIG_HZ_100=y
# CONFIG_HZ_128 is not set
@@ -172,6 +153,7 @@ CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT is not set
# CONFIG_KEXEC is not set
# CONFIG_SECCOMP is not set
+# CONFIG_USE_OF is not set
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
@@ -201,22 +183,32 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
+CONFIG_HAVE_GENERIC_HARDIRQS=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_HARDIRQS=y
+# CONFIG_GENERIC_HARDIRQS_NO_DEPRECATED is not set
+# CONFIG_HAVE_SPARSE_IRQ is not set
+CONFIG_GENERIC_IRQ_PROBE=y
+# CONFIG_GENERIC_PENDING_IRQ is not set
+# CONFIG_AUTO_IRQ_AFFINITY is not set
+# CONFIG_IRQ_PER_CPU is not set
+# CONFIG_HARDIRQS_SW_RESEND is not set
#
# RCU Subsystem
#
-CONFIG_TREE_RCU=y
-# CONFIG_TINY_RCU is not set
-# CONFIG_RCU_TRACE is not set
-CONFIG_RCU_FANOUT=32
-# CONFIG_RCU_FANOUT_EXACT is not set
+CONFIG_TINY_RCU=y
+# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_CGROUPS is not set
-# CONFIG_SYSFS_DEPRECATED_V2 is not set
-# CONFIG_RELAY is not set
# CONFIG_NAMESPACES is not set
+# CONFIG_SYSFS_DEPRECATED is not set
+# CONFIG_RELAY is not set
# CONFIG_BLK_DEV_INITRD is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
@@ -238,10 +230,14 @@ CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_PERF_USE_VMALLOC=y
#
# Kernel Performance Events And Counters
#
+# CONFIG_PERF_EVENTS is not set
+# CONFIG_PERF_COUNTERS is not set
# CONFIG_VM_EVENT_COUNTERS is not set
CONFIG_PCI_QUIRKS=y
# CONFIG_COMPAT_BRK is not set
@@ -254,6 +250,8 @@ CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_SYSCALL_WRAPPERS=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_API_DEBUG=y
#
# GCOV-based kernel profiling
@@ -269,7 +267,6 @@ CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_BLOCK is not set
-# CONFIG_DEFAULT_NOOP is not set
# CONFIG_INLINE_SPIN_TRYLOCK is not set
# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
# CONFIG_INLINE_SPIN_LOCK is not set
@@ -310,8 +307,8 @@ CONFIG_PCI_DOMAINS=y
# CONFIG_ARCH_SUPPORTS_MSI is not set
# CONFIG_PCI_STUB is not set
# CONFIG_PCI_IOV is not set
+CONFIG_ISA=y
CONFIG_MMU=y
-CONFIG_I8253=y
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set
@@ -329,7 +326,6 @@ CONFIG_BINFMT_ELF=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
# CONFIG_PM is not set
-CONFIG_MIPS_EXTERNAL_TIMER=y
CONFIG_NET=y
#
@@ -344,7 +340,7 @@ CONFIG_INET=y
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
+# CONFIG_NET_IPGRE_DEMUX is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
@@ -400,6 +396,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
# CONFIG_CAIF is not set
+# CONFIG_CEPH_LIB is not set
#
# Device Drivers
@@ -418,6 +415,7 @@ CONFIG_DEVTMPFS_MOUNT=y
# CONFIG_CONNECTOR is not set
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
+# CONFIG_PNP is not set
# CONFIG_MISC_DEVICES is not set
CONFIG_HAVE_IDE=y
@@ -432,16 +430,7 @@ CONFIG_SCSI_MOD=y
#
# IEEE 1394 (FireWire) support
#
-
-#
-# You can enable one or both FireWire driver stacks.
-#
-
-#
-# The newer stack is recommended.
-#
# CONFIG_FIREWIRE is not set
-# CONFIG_IEEE1394 is not set
# CONFIG_FIREWIRE_NOSY is not set
# CONFIG_I2O is not set
# CONFIG_NETDEVICES is not set
@@ -491,10 +480,14 @@ CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
# CONFIG_LEGACY_PTYS is not set
+# CONFIG_TTY_PRINTK is not set
# CONFIG_IPMI_HANDLER is not set
# CONFIG_HW_RANDOM is not set
+# CONFIG_RTC is not set
+# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
+# CONFIG_GPIO_DEVICE is not set
# CONFIG_TCG_TPM is not set
CONFIG_DEVPORT=y
# CONFIG_RAMOOPS is not set
@@ -505,6 +498,42 @@ CONFIG_DEVPORT=y
# PPS support
#
# CONFIG_PPS is not set
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+CONFIG_GPIOLIB=y
+# CONFIG_GPIO_SYSFS is not set
+
+#
+# Memory mapped GPIO expanders:
+#
+# CONFIG_GPIO_BASIC_MMIO is not set
+# CONFIG_GPIO_IT8761E is not set
+# CONFIG_GPIO_SCH is not set
+# CONFIG_GPIO_VX855 is not set
+
+#
+# I2C GPIO expanders:
+#
+
+#
+# PCI GPIO expanders:
+#
+# CONFIG_GPIO_CS5535 is not set
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_LANGWELL is not set
+# CONFIG_GPIO_PCH is not set
+# CONFIG_GPIO_RDC321X is not set
+
+#
+# SPI GPIO expanders:
+#
+
+#
+# AC97 GPIO expanders:
+#
+
+#
+# MODULbus GPIO expanders:
+#
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
# CONFIG_HWMON is not set
@@ -525,6 +554,7 @@ CONFIG_SSB_POSSIBLE=y
#
# CONFIG_VGA_ARB is not set
# CONFIG_DRM is not set
+# CONFIG_STUB_POULSBO is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
# CONFIG_FB is not set
@@ -542,13 +572,31 @@ CONFIG_SSB_POSSIBLE=y
# CONFIG_NEW_LEDS is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_INFINIBAND is not set
-CONFIG_RTC_LIB=y
# CONFIG_RTC_CLASS is not set
# CONFIG_DMADEVICES is not set
# CONFIG_AUXDISPLAY is not set
# CONFIG_UIO is not set
-# CONFIG_STAGING is not set
-# CONFIG_MIPS_PLATFORM_DEVICES is not set
+CONFIG_STAGING=y
+# CONFIG_STAGING_EXCLUDE_BUILD is not set
+# CONFIG_ECHO is not set
+# CONFIG_COMEDI is not set
+# CONFIG_POHMELFS is not set
+# CONFIG_AUTOFS_FS is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_IIO is not set
+# CONFIG_BATMAN_ADV is not set
+# CONFIG_CRYSTALHD is not set
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_SMB_FS is not set
+CONFIG_MACH_NO_WESTBRIDGE=y
+# CONFIG_FT1000 is not set
+
+#
+# Speakup console speech
+#
#
# File systems
@@ -557,8 +605,9 @@ CONFIG_FILE_LOCKING=y
# CONFIG_FSNOTIFY is not set
# CONFIG_DNOTIFY is not set
# CONFIG_INOTIFY_USER is not set
+# CONFIG_FANOTIFY is not set
# CONFIG_QUOTA is not set
-# CONFIG_AUTOFS_FS is not set
+# CONFIG_QUOTACTL is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set
@@ -577,7 +626,6 @@ CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_CONFIGFS_FS is not set
# CONFIG_MISC_FILESYSTEMS is not set
@@ -600,16 +648,19 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_KERNEL is not set
# CONFIG_HARDLOCKUP_DETECTOR is not set
+CONFIG_BKL=y
+# CONFIG_SPARSE_RCU_POINTER is not set
# CONFIG_DEBUG_MEMORY_INIT is not set
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACING_SUPPORT=y
# CONFIG_FTRACE is not set
+# CONFIG_DMA_API_DEBUG is not set
# CONFIG_ATOMIC64_SELFTEST is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
@@ -622,6 +673,7 @@ CONFIG_CMDLINE="init=/init"
# Security options
#
# CONFIG_KEYS is not set
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
# CONFIG_SECURITY is not set
# CONFIG_SECURITYFS is not set
CONFIG_DEFAULT_SECURITY_DAC=y
@@ -646,6 +698,7 @@ CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_CRC32=y
# CONFIG_CRC7 is not set
# CONFIG_LIBCRC32C is not set
+CONFIG_DECOMPRESS_LZMA=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
diff --git a/target/mips64el/sys-available/lemote-yeelong b/target/mips64el/sys-available/lemote-yeelong
index b1a91491e..f868d3913 100644
--- a/target/mips64el/sys-available/lemote-yeelong
+++ b/target/mips64el/sys-available/lemote-yeelong
@@ -3,6 +3,9 @@ config ADK_TARGET_SYSTEM_LEMOTE_YEELONG
select ADK_mips64el
select ADK_lemote_yeelong
select ADK_LINUX_64
+ select ADK_CPU_LOONGSON2F
+ select ADK_KERNEL_MACH_LOONGSON
+ select ADK_KERNEL_LEMOTE_MACH2F
select ADK_TARGET_WITH_USB_BOOT
select ADK_TARGET_WITH_USB
select ADK_TARGET_WITH_PCI
diff --git a/target/mips64el/sys-available/qemu-mips64el b/target/mips64el/sys-available/qemu-mips64el
index 47818f392..bdc8ba76d 100644
--- a/target/mips64el/sys-available/qemu-mips64el
+++ b/target/mips64el/sys-available/qemu-mips64el
@@ -2,6 +2,7 @@ config ADK_TARGET_SYSTEM_QEMU_MIPS64EL
bool "Qemu Emulator"
select ADK_mips64el
select ADK_qemu_mips64el
+ select ADK_CPU_MIPS64
select ADK_LINUX_64
select ADK_KERNEL_MIPS_MALTA
select ADK_HARDWARE_QEMU
diff --git a/target/mips64el/sys-available/toolchain-mips64el b/target/mips64el/sys-available/toolchain-mips64el
index a403df0cd..c64972736 100644
--- a/target/mips64el/sys-available/toolchain-mips64el
+++ b/target/mips64el/sys-available/toolchain-mips64el
@@ -2,6 +2,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL
bool "Toolchain only"
select ADK_mips64el
select ADK_toolchain_mips64el
+ select ADK_CPU_MIPS64
select ADK_TOOLCHAIN_ONLY
select ADK_LINUX_64
help
diff --git a/target/mips64el/target.mk b/target/mips64el/target.mk
index 2057c77fb..b45a49460 100644
--- a/target/mips64el/target.mk
+++ b/target/mips64el/target.mk
@@ -2,4 +2,4 @@ include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= mips
CPU_ARCH:= mips64el
TARGET_OPTIMIZATION:= -Os -pipe
-TARGET_CFLAGS_ARCH:= -march=mips64 -mabi=64
+TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) -mabi=64