Pull MIPS updates from James Hogan:
"These are the main MIPS changes for 4.16.
Rough overview:
(1) Basic support for the Ingenic JZ4770 based GCW Zero open-source
handheld video game console
(2) Support for the Ranchu board (used by Android emulator)
(3) Various cleanups and misc improvements
More detailed summary:
Fixes:
- Fix generic platform's USB_*HCI_BIG_ENDIAN selects (4.9)
- Fix vmlinuz default build when ZBOOT selected
- Fix clean up of vmlinuz targets
- Fix command line duplication (in preparation for Ingenic JZ4770)
Miscellaneous:
- Allow Processor ID reads to be to be optimised away by the compiler
(improves performance when running in guest)
- Push ARCH_MIGHT_HAVE_PC_SERIO/PARPORT down to platform level to
disable on generic platform with Ranchu board support
- Add helpers for assembler macro instructions for older assemblers
- Use assembler macro instructions to support VZ, XPA & MSA
operations on older assemblers, removing C wrapper duplication
- Various improvements to VZ & XPA assembly wrappers
- Add drivers/platform/mips/ to MIPS MAINTAINERS entry
Minor cleanups:
- Misc FPU emulation cleanups (removal of unnecessary include, moving
macros to common header, checkpatch and sparse fixes)
- Remove duplicate assignment of core in play_dead()
- Remove duplication in watchpoint handling
- Remove mips_dma_mapping_error() stub
- Use NULL instead of 0 in prepare_ftrace_return()
- Use proper kernel-doc Return keyword for
__compute_return_epc_for_insn()
- Remove duplicate semicolon in csum_fold()
Platform support:
Broadcom:
- Enable ZBOOT on BCM47xx
Generic platform:
- Add Ranchu board support, used by Android emulator
- Fix machine compatible string matching for Ranchu
- Support GIC in EIC mode
Ingenic platforms:
- Add DT, defconfig and other support for JZ4770 SoC and GCW Zero
- Support dynamnic machine types (i.e. JZ4740 / JZ4770 / JZ4780)
- Add Ingenic JZ4770 CGU clocks
- General Ingenic clk changes to prepare for JZ4770 SoC support
- Use common command line handling code
- Add DT vendor prefix to GCW (Game Consoles Worldwide)
Loongson:
- Add MAINTAINERS entry for Loongson2 and Loongson3 platforms
- Drop 32-bit support for Loongson 2E/2F devices
- Fix build failures due to multiple use of 'MEM_RESERVED'"
* tag 'mips_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/mips: (53 commits)
MIPS: Malta: Sanitize mouse and keyboard configuration.
MIPS: Update defconfigs after previous patch.
MIPS: Push ARCH_MIGHT_HAVE_PC_SERIO down to platform level
MIPS: Push ARCH_MIGHT_HAVE_PC_PARPORT down to platform level
MIPS: SMP-CPS: Remove duplicate assignment of core in play_dead
MIPS: Generic: Support GIC in EIC mode
MIPS: generic: Fix Makefile alignment
MIPS: generic: Fix ranchu_of_match[] termination
MIPS: generic: Fix machine compatible matching
MIPS: Loongson fix name confict - MEM_RESERVED
MIPS: bcm47xx: enable ZBOOT support
MIPS: Fix trailing semicolon
MIPS: Watch: Avoid duplication of bits in mips_read_watch_registers
MIPS: Watch: Avoid duplication of bits in mips_install_watch_registers.
MIPS: MSA: Update helpers to use new asm macros
MIPS: XPA: Standardise readx/writex accessors
MIPS: XPA: Allow use of $0 (zero) to MTHC0
MIPS: XPA: Use XPA instructions in assembly
MIPS: VZ: Pass GC0 register names in $n format
MIPS: VZ: Update helpers to use new asm macros
...
154 lines
3.6 KiB
Plaintext
154 lines
3.6 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
if MACH_LOONGSON64
|
|
|
|
choice
|
|
prompt "Machine Type"
|
|
|
|
config LEMOTE_FULOONG2E
|
|
bool "Lemote Fuloong(2e) mini-PC"
|
|
select ARCH_SPARSEMEM_ENABLE
|
|
select CEVT_R4K
|
|
select CSRC_R4K
|
|
select SYS_HAS_CPU_LOONGSON2E
|
|
select DMA_NONCOHERENT
|
|
select BOOT_ELF32
|
|
select BOARD_SCACHE
|
|
select HW_HAS_PCI
|
|
select I8259
|
|
select ISA
|
|
select IRQ_MIPS_CPU
|
|
select SYS_SUPPORTS_64BIT_KERNEL
|
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
|
select SYS_SUPPORTS_HIGHMEM
|
|
select SYS_HAS_EARLY_PRINTK
|
|
select GENERIC_ISA_DMA_SUPPORT_BROKEN
|
|
select CPU_HAS_WB
|
|
select LOONGSON_MC146818
|
|
help
|
|
Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and
|
|
an FPGA northbridge
|
|
|
|
Lemote Fuloong(2e) mini PC have a VIA686B south bridge.
|
|
|
|
config LEMOTE_MACH2F
|
|
bool "Lemote Loongson 2F family machines"
|
|
select ARCH_SPARSEMEM_ENABLE
|
|
select BOARD_SCACHE
|
|
select BOOT_ELF32
|
|
select CEVT_R4K if ! MIPS_EXTERNAL_TIMER
|
|
select CPU_HAS_WB
|
|
select CS5536
|
|
select CSRC_R4K if ! MIPS_EXTERNAL_TIMER
|
|
select DMA_NONCOHERENT
|
|
select GENERIC_ISA_DMA_SUPPORT_BROKEN
|
|
select HAVE_CLK
|
|
select HW_HAS_PCI
|
|
select I8259
|
|
select IRQ_MIPS_CPU
|
|
select ISA
|
|
select SYS_HAS_CPU_LOONGSON2F
|
|
select SYS_HAS_EARLY_PRINTK
|
|
select SYS_SUPPORTS_64BIT_KERNEL
|
|
select SYS_SUPPORTS_HIGHMEM
|
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
|
select LOONGSON_MC146818
|
|
help
|
|
Lemote Loongson 2F family machines utilize the 2F revision of
|
|
Loongson processor and the AMD CS5536 south bridge.
|
|
|
|
These family machines include fuloong2f mini PC, yeeloong2f notebook,
|
|
LingLoong allinone PC and so forth.
|
|
|
|
config LOONGSON_MACH3X
|
|
bool "Generic Loongson 3 family machines"
|
|
select ARCH_SPARSEMEM_ENABLE
|
|
select GENERIC_ISA_DMA_SUPPORT_BROKEN
|
|
select BOOT_ELF32
|
|
select BOARD_SCACHE
|
|
select CSRC_R4K
|
|
select CEVT_R4K
|
|
select CPU_HAS_WB
|
|
select HW_HAS_PCI
|
|
select ISA
|
|
select HT_PCI
|
|
select I8259
|
|
select IRQ_MIPS_CPU
|
|
select NR_CPUS_DEFAULT_4
|
|
select SYS_HAS_CPU_LOONGSON3
|
|
select SYS_HAS_EARLY_PRINTK
|
|
select SYS_SUPPORTS_SMP
|
|
select SYS_SUPPORTS_HOTPLUG_CPU
|
|
select SYS_SUPPORTS_NUMA
|
|
select SYS_SUPPORTS_64BIT_KERNEL
|
|
select SYS_SUPPORTS_HIGHMEM
|
|
select SYS_SUPPORTS_LITTLE_ENDIAN
|
|
select LOONGSON_MC146818
|
|
select ZONE_DMA32
|
|
select LEFI_FIRMWARE_INTERFACE
|
|
select PHYS48_TO_HT40
|
|
help
|
|
Generic Loongson 3 family machines utilize the 3A/3B revision
|
|
of Loongson processor and RS780/SBX00 chipset.
|
|
endchoice
|
|
|
|
config CS5536
|
|
bool
|
|
|
|
config CS5536_MFGPT
|
|
bool "CS5536 MFGPT Timer"
|
|
depends on CS5536 && !HIGH_RES_TIMERS
|
|
select MIPS_EXTERNAL_TIMER
|
|
help
|
|
This option enables the mfgpt0 timer of AMD CS5536. With this timer
|
|
switched on you can not use high resolution timers.
|
|
|
|
If you want to enable the Loongson2 CPUFreq Driver, Please enable
|
|
this option at first, otherwise, You will get wrong system time.
|
|
|
|
If unsure, say Yes.
|
|
|
|
config RS780_HPET
|
|
bool "RS780/SBX00 HPET Timer"
|
|
depends on LOONGSON_MACH3X
|
|
select MIPS_EXTERNAL_TIMER
|
|
help
|
|
This option enables the hpet timer of AMD RS780/SBX00.
|
|
|
|
If you want to enable the Loongson3 CPUFreq Driver, Please enable
|
|
this option at first, otherwise, You will get wrong system time.
|
|
|
|
If unsure, say Yes.
|
|
|
|
config LOONGSON_UART_BASE
|
|
bool
|
|
default y
|
|
depends on EARLY_PRINTK || SERIAL_8250
|
|
|
|
config IOMMU_HELPER
|
|
bool
|
|
|
|
config NEED_SG_DMA_LENGTH
|
|
bool
|
|
|
|
config SWIOTLB
|
|
bool "Soft IOMMU Support for All-Memory DMA"
|
|
default y
|
|
depends on CPU_LOONGSON3
|
|
select DMA_DIRECT_OPS
|
|
select IOMMU_HELPER
|
|
select NEED_SG_DMA_LENGTH
|
|
select NEED_DMA_MAP_STATE
|
|
|
|
config PHYS48_TO_HT40
|
|
bool
|
|
default y if CPU_LOONGSON3
|
|
|
|
config LOONGSON_MC146818
|
|
bool
|
|
default n
|
|
|
|
config LEFI_FIRMWARE_INTERFACE
|
|
bool
|
|
|
|
endif # MACH_LOONGSON64
|