![Christoph Hellwig](/assets/img/avatar_default.png)
This way we have one central definition of it, and user can select it as needed. The new option is not user visible, which is the behavior it had in most architectures, with a few notable exceptions: - On x86_64 and mips/loongson3 it used to be user selectable, but defaulted to y. It now is unconditional, which seems like the right thing for 64-bit architectures without guaranteed availablity of IOMMUs. - on powerpc the symbol is user selectable and defaults to n, but many boards select it. This change assumes no working setup required a manual selection, but if that turned out to be wrong we'll have to add another select statement or two for the respective boards. Signed-off-by: Christoph Hellwig <hch@lst.de>
251 lines
4.4 KiB
Plaintext
251 lines
4.4 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
config UNICORE32
|
|
def_bool y
|
|
select ARCH_HAS_DEVMEM_IS_ALLOWED
|
|
select ARCH_MIGHT_HAVE_PC_PARPORT
|
|
select ARCH_MIGHT_HAVE_PC_SERIO
|
|
select HAVE_MEMBLOCK
|
|
select HAVE_GENERIC_DMA_COHERENT
|
|
select HAVE_KERNEL_GZIP
|
|
select HAVE_KERNEL_BZIP2
|
|
select GENERIC_ATOMIC64
|
|
select HAVE_KERNEL_LZO
|
|
select HAVE_KERNEL_LZMA
|
|
select VIRT_TO_BUS
|
|
select ARCH_HAVE_CUSTOM_GPIO_H
|
|
select GENERIC_FIND_FIRST_BIT
|
|
select GENERIC_IRQ_PROBE
|
|
select GENERIC_IRQ_SHOW
|
|
select ARCH_WANT_FRAME_POINTERS
|
|
select GENERIC_IOMAP
|
|
select MODULES_USE_ELF_REL
|
|
select NEED_DMA_MAP_STATE
|
|
select SWIOTLB
|
|
help
|
|
UniCore-32 is 32-bit Instruction Set Architecture,
|
|
including a series of low-power-consumption RISC chip
|
|
designs licensed by PKUnity Ltd.
|
|
Please see web page at <http://www.pkunity.com/>.
|
|
|
|
config GENERIC_CSUM
|
|
def_bool y
|
|
|
|
config NO_IOPORT_MAP
|
|
bool
|
|
|
|
config STACKTRACE_SUPPORT
|
|
def_bool y
|
|
|
|
config LOCKDEP_SUPPORT
|
|
def_bool y
|
|
|
|
config RWSEM_GENERIC_SPINLOCK
|
|
def_bool y
|
|
|
|
config RWSEM_XCHGADD_ALGORITHM
|
|
bool
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
bool
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
bool
|
|
|
|
config GENERIC_HWEIGHT
|
|
def_bool y
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
def_bool y
|
|
|
|
config ARCH_MAY_HAVE_PC_FDC
|
|
bool
|
|
|
|
config ZONE_DMA
|
|
def_bool y
|
|
|
|
source "init/Kconfig"
|
|
|
|
source "kernel/Kconfig.freezer"
|
|
|
|
menu "System Type"
|
|
|
|
config MMU
|
|
def_bool y
|
|
|
|
config ARCH_FPGA
|
|
bool
|
|
|
|
config ARCH_PUV3
|
|
def_bool y
|
|
select CPU_UCV2
|
|
select GENERIC_CLOCKEVENTS
|
|
select HAVE_CLK
|
|
select GPIOLIB
|
|
|
|
# CONFIGs for ARCH_PUV3
|
|
|
|
if ARCH_PUV3
|
|
|
|
choice
|
|
prompt "Board Selection"
|
|
default PUV3_DB0913
|
|
|
|
config PUV3_FPGA_DLX200
|
|
select ARCH_FPGA
|
|
bool "FPGA board"
|
|
|
|
config PUV3_DB0913
|
|
bool "DEBUG board (0913)"
|
|
|
|
config PUV3_NB0916
|
|
bool "NetBook board (0916)"
|
|
select PWM
|
|
select PWM_PUV3
|
|
|
|
config PUV3_SMW0919
|
|
bool "Security Mini-Workstation board (0919)"
|
|
|
|
endchoice
|
|
|
|
config PUV3_PM
|
|
def_bool y if !ARCH_FPGA
|
|
|
|
endif
|
|
|
|
source "arch/unicore32/mm/Kconfig"
|
|
|
|
comment "Floating point support"
|
|
|
|
config UNICORE_FPU_F64
|
|
def_bool y if !ARCH_FPGA
|
|
|
|
endmenu
|
|
|
|
menu "Bus support"
|
|
|
|
config PCI
|
|
bool "PCI Support"
|
|
help
|
|
Find out whether you have a PCI motherboard. PCI is the name of a
|
|
bus system, i.e. the way the CPU talks to the other stuff inside
|
|
your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
|
|
VESA. If you have PCI, say Y, otherwise N.
|
|
|
|
source "drivers/pci/Kconfig"
|
|
|
|
source "drivers/pcmcia/Kconfig"
|
|
|
|
endmenu
|
|
|
|
menu "Kernel Features"
|
|
|
|
source "kernel/Kconfig.preempt"
|
|
|
|
source "kernel/Kconfig.hz"
|
|
|
|
source "mm/Kconfig"
|
|
|
|
config LEDS
|
|
def_bool y
|
|
depends on GPIOLIB
|
|
|
|
config ALIGNMENT_TRAP
|
|
def_bool y
|
|
help
|
|
Unicore processors can not fetch/store information which is not
|
|
naturally aligned on the bus, i.e., a 4 byte fetch must start at an
|
|
address divisible by 4. On 32-bit Unicore processors, these non-aligned
|
|
fetch/store instructions will be emulated in software if you say
|
|
here, which has a severe performance impact. This is necessary for
|
|
correct operation of some network protocols. With an IP-only
|
|
configuration it is safe to say N, otherwise say Y.
|
|
|
|
endmenu
|
|
|
|
menu "Boot options"
|
|
|
|
config CMDLINE
|
|
string "Default kernel command string"
|
|
default ""
|
|
|
|
config CMDLINE_FORCE
|
|
bool "Always use the default kernel command string"
|
|
depends on CMDLINE != ""
|
|
help
|
|
Always use the default kernel command string, even if the boot
|
|
loader passes other arguments to the kernel.
|
|
This is useful if you cannot or don't want to change the
|
|
command-line options your boot loader passes to the kernel.
|
|
|
|
If unsure, say N.
|
|
|
|
endmenu
|
|
|
|
menu "Userspace binary formats"
|
|
|
|
source "fs/Kconfig.binfmt"
|
|
|
|
endmenu
|
|
|
|
menu "Power management options"
|
|
|
|
source "kernel/power/Kconfig"
|
|
|
|
source "drivers/cpufreq/Kconfig"
|
|
|
|
config ARCH_SUSPEND_POSSIBLE
|
|
def_bool y if !ARCH_FPGA
|
|
|
|
config ARCH_HIBERNATION_POSSIBLE
|
|
def_bool y if !ARCH_FPGA
|
|
|
|
endmenu
|
|
|
|
source "net/Kconfig"
|
|
|
|
if ARCH_PUV3
|
|
|
|
config PUV3_GPIO
|
|
bool
|
|
depends on !ARCH_FPGA
|
|
select GPIO_SYSFS
|
|
default y
|
|
|
|
if PUV3_NB0916
|
|
|
|
menu "PKUnity NetBook-0916 Features"
|
|
|
|
config I2C_BATTERY_BQ27200
|
|
tristate "I2C Battery BQ27200 Support"
|
|
select I2C_PUV3
|
|
select POWER_SUPPLY
|
|
select BATTERY_BQ27XXX
|
|
|
|
config I2C_EEPROM_AT24
|
|
tristate "I2C EEPROMs AT24 support"
|
|
select I2C_PUV3
|
|
select EEPROM_AT24
|
|
|
|
config LCD_BACKLIGHT
|
|
tristate "LCD Backlight support"
|
|
select BACKLIGHT_LCD_SUPPORT
|
|
select BACKLIGHT_PWM
|
|
|
|
endmenu
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
source "drivers/Kconfig"
|
|
|
|
source "fs/Kconfig"
|
|
|
|
source "arch/unicore32/Kconfig.debug"
|
|
|
|
source "security/Kconfig"
|
|
|
|
source "crypto/Kconfig"
|
|
|
|
source "lib/Kconfig"
|