Pull module signing support from Rusty Russell: "module signing is the highlight, but it's an all-over David Howells frenzy..." Hmm "Magrathea: Glacier signing key". Somebody has been reading too much HHGTTG. * 'modules-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (37 commits) X.509: Fix indefinite length element skip error handling X.509: Convert some printk calls to pr_devel asymmetric keys: fix printk format warning MODSIGN: Fix 32-bit overflow in X.509 certificate validity date checking MODSIGN: Make mrproper should remove generated files. MODSIGN: Use utf8 strings in signer's name in autogenerated X.509 certs MODSIGN: Use the same digest for the autogen key sig as for the module sig MODSIGN: Sign modules during the build process MODSIGN: Provide a script for generating a key ID from an X.509 cert MODSIGN: Implement module signature checking MODSIGN: Provide module signing public keys to the kernel MODSIGN: Automatically generate module signing keys if missing MODSIGN: Provide Kconfig options MODSIGN: Provide gitignore and make clean rules for extra files MODSIGN: Add FIPS policy module: signature checking hook X.509: Add a crypto key parser for binary (DER) X.509 certificates MPILIB: Provide a function to read raw data into an MPI X.509: Add an ASN.1 decoder X.509: Add simple ASN.1 grammar compiler ...
		
			
				
	
	
		
			411 lines
		
	
	
	
		
			9 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			411 lines
		
	
	
	
		
			9 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
config M32R
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
	select HAVE_IDE
 | 
						|
	select HAVE_OPROFILE
 | 
						|
	select INIT_ALL_POSSIBLE
 | 
						|
	select HAVE_KERNEL_GZIP
 | 
						|
	select HAVE_KERNEL_BZIP2
 | 
						|
	select HAVE_KERNEL_LZMA
 | 
						|
	select ARCH_WANT_IPC_PARSE_VERSION
 | 
						|
	select HAVE_DEBUG_BUGVERBOSE
 | 
						|
	select HAVE_GENERIC_HARDIRQS
 | 
						|
	select GENERIC_IRQ_PROBE
 | 
						|
	select GENERIC_IRQ_SHOW
 | 
						|
	select GENERIC_ATOMIC64
 | 
						|
	select ARCH_USES_GETTIMEOFFSET
 | 
						|
	select MODULES_USE_ELF_RELA
 | 
						|
 | 
						|
config SBUS
 | 
						|
	bool
 | 
						|
 | 
						|
config GENERIC_ISA_DMA
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
 | 
						|
config ZONE_DMA
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
 | 
						|
config NO_IOPORT
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config NO_DMA
 | 
						|
	def_bool y
 | 
						|
 | 
						|
config HZ
 | 
						|
	int
 | 
						|
	default 100
 | 
						|
 | 
						|
source "init/Kconfig"
 | 
						|
 | 
						|
source "kernel/Kconfig.freezer"
 | 
						|
 | 
						|
 | 
						|
menu "Processor type and features"
 | 
						|
 | 
						|
choice
 | 
						|
	prompt "Platform Type"
 | 
						|
	default PLAT_MAPPI
 | 
						|
 | 
						|
config PLAT_MAPPI
 | 
						|
	bool "Mappi-I"
 | 
						|
	help
 | 
						|
	  The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
 | 
						|
	  You can operate a Linux system on this board by using an M32R
 | 
						|
	  softmacro core, which is a fully-synthesizable functional model
 | 
						|
	  described in Verilog-HDL.
 | 
						|
 | 
						|
	  The Mappi-I board was the first platform, which had been used
 | 
						|
	  to port and develop a Linux system for the M32R processor.
 | 
						|
	  Currently, the Mappi-II, an heir to the Mappi-I, is available.
 | 
						|
 | 
						|
config PLAT_USRV
 | 
						|
	bool "uServer"
 | 
						|
	select PLAT_HAS_INT1ICU
 | 
						|
 | 
						|
config PLAT_M32700UT
 | 
						|
	bool "M32700UT"
 | 
						|
	select PLAT_HAS_INT0ICU
 | 
						|
	select PLAT_HAS_INT1ICU
 | 
						|
	select PLAT_HAS_INT2ICU
 | 
						|
	help
 | 
						|
	  The M3T-M32700UT is an evaluation board based on uT-Engine
 | 
						|
	  specification.  This board has an M32700 (Chaos) evaluation chip.
 | 
						|
	  You can say Y for SMP, because the M32700 is a single chip
 | 
						|
	  multiprocessor.
 | 
						|
 | 
						|
config PLAT_OPSPUT
 | 
						|
	bool "OPSPUT"
 | 
						|
	select PLAT_HAS_INT0ICU
 | 
						|
	select PLAT_HAS_INT1ICU
 | 
						|
	select PLAT_HAS_INT2ICU
 | 
						|
	help
 | 
						|
	  The OPSPUT is an evaluation board based on uT-Engine
 | 
						|
	  specification.  This board has a OPSP-REP chip.
 | 
						|
 | 
						|
config PLAT_OAKS32R
 | 
						|
	bool "OAKS32R"
 | 
						|
	help
 | 
						|
	  The OAKS32R is a tiny, inexpensive evaluation board.
 | 
						|
	  Please note that if you say Y here and choose chip "M32102",
 | 
						|
	  say N for MMU and select a no-MMU version kernel, otherwise
 | 
						|
	  a kernel with MMU support will not work, because the M32102
 | 
						|
	  is a microcontroller for embedded systems and it has no MMU.
 | 
						|
 | 
						|
config PLAT_MAPPI2
 | 
						|
       bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
 | 
						|
 | 
						|
config PLAT_MAPPI3
 | 
						|
       bool "Mappi-III(M3A-2170)"
 | 
						|
 | 
						|
config PLAT_M32104UT
 | 
						|
	bool "M32104UT"
 | 
						|
	select PLAT_HAS_INT1ICU
 | 
						|
	help
 | 
						|
	  The M3T-M32104UT is an reference board based on uT-Engine
 | 
						|
	  specification.  This board has a M32104 chip.
 | 
						|
 | 
						|
endchoice
 | 
						|
 | 
						|
choice
 | 
						|
	prompt "Processor family"
 | 
						|
	default CHIP_M32700
 | 
						|
 | 
						|
config CHIP_M32700
 | 
						|
	bool "M32700 (Chaos)"
 | 
						|
 | 
						|
config CHIP_M32102
 | 
						|
	bool "M32102"
 | 
						|
 | 
						|
config CHIP_M32104
 | 
						|
	bool "M32104"
 | 
						|
	depends on PLAT_M32104UT
 | 
						|
 | 
						|
config CHIP_VDEC2
 | 
						|
       bool "VDEC2"
 | 
						|
 | 
						|
config CHIP_OPSP
 | 
						|
       bool "OPSP"
 | 
						|
 | 
						|
endchoice
 | 
						|
 | 
						|
config MMU
 | 
						|
	bool "Support for memory management hardware"
 | 
						|
	depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 | 
						|
	default y
 | 
						|
 | 
						|
config TLB_ENTRIES
 | 
						|
       int "TLB Entries"
 | 
						|
       depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 | 
						|
       default 32 if CHIP_M32700 || CHIP_OPSP
 | 
						|
       default 16 if CHIP_VDEC2
 | 
						|
 | 
						|
 | 
						|
config ISA_M32R
 | 
						|
        bool
 | 
						|
	depends on CHIP_M32102 || CHIP_M32104
 | 
						|
	default y
 | 
						|
 | 
						|
config ISA_M32R2
 | 
						|
	bool
 | 
						|
	depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
 | 
						|
	default y
 | 
						|
 | 
						|
config ISA_DSP_LEVEL2
 | 
						|
	bool
 | 
						|
	depends on CHIP_M32700 || CHIP_OPSP
 | 
						|
	default y
 | 
						|
 | 
						|
config ISA_DUAL_ISSUE
 | 
						|
	bool
 | 
						|
	depends on CHIP_M32700 || CHIP_OPSP
 | 
						|
	default y
 | 
						|
 | 
						|
config PLAT_HAS_INT0ICU
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config PLAT_HAS_INT1ICU
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config PLAT_HAS_INT2ICU
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config BUS_CLOCK
 | 
						|
	int "Bus Clock [Hz] (integer)"
 | 
						|
	default "70000000" if PLAT_MAPPI
 | 
						|
	default "25000000" if PLAT_USRV
 | 
						|
	default "50000000" if PLAT_MAPPI3
 | 
						|
	default "50000000" if PLAT_M32700UT
 | 
						|
	default "50000000" if PLAT_OPSPUT
 | 
						|
	default "54000000" if PLAT_M32104UT
 | 
						|
	default "33333333" if PLAT_OAKS32R
 | 
						|
	default "20000000" if PLAT_MAPPI2
 | 
						|
 | 
						|
config TIMER_DIVIDE
 | 
						|
	int "Timer divider (integer)"
 | 
						|
	default "128"
 | 
						|
 | 
						|
config CPU_LITTLE_ENDIAN
 | 
						|
        bool "Generate little endian code"
 | 
						|
	default n
 | 
						|
 | 
						|
config MEMORY_START
 | 
						|
	hex "Physical memory start address (hex)"
 | 
						|
	default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
 | 
						|
	default "08000000" if PLAT_USRV
 | 
						|
	default "08000000" if PLAT_M32700UT
 | 
						|
	default "08000000" if PLAT_OPSPUT
 | 
						|
	default "04000000" if PLAT_M32104UT
 | 
						|
	default "01000000" if PLAT_OAKS32R
 | 
						|
 | 
						|
config MEMORY_SIZE
 | 
						|
	hex "Physical memory size (hex)"
 | 
						|
	default "08000000" if PLAT_MAPPI3
 | 
						|
	default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
 | 
						|
	default "02000000" if PLAT_USRV
 | 
						|
	default "01000000" if PLAT_M32700UT
 | 
						|
	default "01000000" if PLAT_OPSPUT
 | 
						|
	default "01000000" if PLAT_M32104UT
 | 
						|
	default "00800000" if PLAT_OAKS32R
 | 
						|
 | 
						|
config ARCH_DISCONTIGMEM_ENABLE
 | 
						|
	bool "Internal RAM Support"
 | 
						|
	depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
 | 
						|
	default y
 | 
						|
 | 
						|
source "mm/Kconfig"
 | 
						|
 | 
						|
config IRAM_START
 | 
						|
	hex "Internal memory start address (hex)"
 | 
						|
	default "00f00000" if !CHIP_M32104
 | 
						|
	default "00700000" if CHIP_M32104
 | 
						|
	depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
 | 
						|
 | 
						|
config IRAM_SIZE
 | 
						|
	hex "Internal memory size (hex)"
 | 
						|
	depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
 | 
						|
	default "00080000" if CHIP_M32700
 | 
						|
	default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
 | 
						|
	default "00008000" if CHIP_VDEC2
 | 
						|
 | 
						|
#
 | 
						|
# Define implied options from the CPU selection here
 | 
						|
#
 | 
						|
 | 
						|
config GENERIC_LOCKBREAK
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
	depends on SMP && PREEMPT
 | 
						|
 | 
						|
config RWSEM_GENERIC_SPINLOCK
 | 
						|
	bool
 | 
						|
	depends on M32R
 | 
						|
	default y
 | 
						|
 | 
						|
config RWSEM_XCHGADD_ALGORITHM
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config ARCH_HAS_ILOG2_U32
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config ARCH_HAS_ILOG2_U64
 | 
						|
	bool
 | 
						|
	default n
 | 
						|
 | 
						|
config GENERIC_HWEIGHT
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
 | 
						|
config GENERIC_CALIBRATE_DELAY
 | 
						|
	bool
 | 
						|
	default y
 | 
						|
 | 
						|
config SCHED_OMIT_FRAME_POINTER
 | 
						|
        bool
 | 
						|
        default y
 | 
						|
 | 
						|
source "kernel/Kconfig.preempt"
 | 
						|
 | 
						|
config SMP
 | 
						|
	bool "Symmetric multi-processing support"
 | 
						|
	select USE_GENERIC_SMP_HELPERS
 | 
						|
	---help---
 | 
						|
	  This enables support for systems with more than one CPU. If you have
 | 
						|
	  a system with only one CPU, like most personal computers, say N. If
 | 
						|
	  you have a system with more than one CPU, say Y.
 | 
						|
 | 
						|
	  If you say N here, the kernel will run on single and multiprocessor
 | 
						|
	  machines, but will use only one CPU of a multiprocessor machine. If
 | 
						|
	  you say Y here, the kernel will run on many, but not all,
 | 
						|
	  singleprocessor machines. On a singleprocessor machine, the kernel
 | 
						|
	  will run faster if you say N here.
 | 
						|
 | 
						|
	  People using multiprocessor machines who say Y here should also say
 | 
						|
	  Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
 | 
						|
	  Management" code will be disabled if you say Y here.
 | 
						|
 | 
						|
	  See also the SMP-HOWTO available at
 | 
						|
	  <http://tldp.org/HOWTO/SMP-HOWTO.html>.
 | 
						|
 | 
						|
	  If you don't know what to do here, say N.
 | 
						|
 | 
						|
config CHIP_M32700_TS1
 | 
						|
	bool "Workaround code for the M32700 TS1 chip's bug"
 | 
						|
	depends on (CHIP_M32700 && SMP)
 | 
						|
	default n
 | 
						|
 | 
						|
config NR_CPUS
 | 
						|
	int "Maximum number of CPUs (2-32)"
 | 
						|
	range 2 32
 | 
						|
	depends on SMP
 | 
						|
	default "2"
 | 
						|
	help
 | 
						|
	  This allows you to specify the maximum number of CPUs which this
 | 
						|
	  kernel will support.  The maximum supported value is 32 and the
 | 
						|
	  minimum value which makes sense is 2.
 | 
						|
 | 
						|
	  This is purely to save memory - each supported CPU adds
 | 
						|
	  approximately eight kilobytes to the kernel image.
 | 
						|
 | 
						|
# Common NUMA Features
 | 
						|
config NUMA
 | 
						|
	bool "Numa Memory Allocation Support"
 | 
						|
	depends on SMP && BROKEN
 | 
						|
	default n
 | 
						|
 | 
						|
config NODES_SHIFT
 | 
						|
	int
 | 
						|
	default "1"
 | 
						|
	depends on NEED_MULTIPLE_NODES
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
 | 
						|
menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 | 
						|
 | 
						|
config PCI
 | 
						|
	bool "PCI support"
 | 
						|
	depends on BROKEN
 | 
						|
	default n
 | 
						|
	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.
 | 
						|
 | 
						|
choice
 | 
						|
	prompt "PCI access mode"
 | 
						|
	depends on PCI
 | 
						|
	default PCI_GOANY
 | 
						|
 | 
						|
config PCI_GOBIOS
 | 
						|
	bool "BIOS"
 | 
						|
	---help---
 | 
						|
	  On PCI systems, the BIOS can be used to detect the PCI devices and
 | 
						|
	  determine their configuration. However, some old PCI motherboards
 | 
						|
	  have BIOS bugs and may crash if this is done. Also, some embedded
 | 
						|
	  PCI-based systems don't have any BIOS at all. Linux can also try to
 | 
						|
	  detect the PCI hardware directly without using the BIOS.
 | 
						|
 | 
						|
	  With this option, you can specify how Linux should detect the PCI
 | 
						|
	  devices. If you choose "BIOS", the BIOS will be used, if you choose
 | 
						|
	  "Direct", the BIOS won't be used, and if you choose "Any", the
 | 
						|
	  kernel will try the direct access method and falls back to the BIOS
 | 
						|
	  if that doesn't work. If unsure, go with the default, which is
 | 
						|
	  "Any".
 | 
						|
 | 
						|
config PCI_GODIRECT
 | 
						|
	bool "Direct"
 | 
						|
 | 
						|
config PCI_GOANY
 | 
						|
	bool "Any"
 | 
						|
 | 
						|
endchoice
 | 
						|
 | 
						|
config PCI_BIOS
 | 
						|
	bool
 | 
						|
	depends on PCI && (PCI_GOBIOS || PCI_GOANY)
 | 
						|
	default y
 | 
						|
 | 
						|
config PCI_DIRECT
 | 
						|
	bool
 | 
						|
 	depends on PCI && (PCI_GODIRECT || PCI_GOANY)
 | 
						|
	default y
 | 
						|
 | 
						|
source "drivers/pci/Kconfig"
 | 
						|
 | 
						|
config ISA
 | 
						|
	bool
 | 
						|
 | 
						|
source "drivers/pcmcia/Kconfig"
 | 
						|
 | 
						|
source "drivers/pci/hotplug/Kconfig"
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
 | 
						|
menu "Executable file formats"
 | 
						|
 | 
						|
source "fs/Kconfig.binfmt"
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
source "net/Kconfig"
 | 
						|
 | 
						|
source "drivers/Kconfig"
 | 
						|
 | 
						|
source "fs/Kconfig"
 | 
						|
 | 
						|
source "arch/m32r/Kconfig.debug"
 | 
						|
 | 
						|
source "security/Kconfig"
 | 
						|
 | 
						|
source "crypto/Kconfig"
 | 
						|
 | 
						|
source "lib/Kconfig"
 |