[POWERPC] Re-organize Kconfig code for 4xx in arch/powerpc
Now that we always take a device tree in arch/powerpc, there's no good reason not to allow a single kernel to support multiple embedded 4xx boards - the correct platform code can be selected based on the device tree information. Therefore, this patch re-arranges the 4xx Kconfig code to allow this. In addition we: - use "select" instead of depends to configure the correct config options for specific 4xx CPUs and workarounds, which makes the information about specific boards and CPUs less scattered. - Some old, unused (in arch/powerpc) config options are removed: WANT_EARLY_SERIAL, IBM_OCP, etc. Signed-off-by: David Gibson <dwg@au1.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
e6349a958b
commit
f65573314e
@ -3,278 +3,206 @@ config 4xx
|
|||||||
depends on 40x || 44x
|
depends on 40x || 44x
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config WANT_EARLY_SERIAL
|
|
||||||
bool
|
|
||||||
select SERIAL_8250
|
|
||||||
default n
|
|
||||||
|
|
||||||
menu "AMCC 4xx options"
|
|
||||||
depends on 4xx
|
|
||||||
|
|
||||||
choice
|
|
||||||
prompt "Machine Type"
|
|
||||||
depends on 40x
|
|
||||||
default WALNUT
|
|
||||||
|
|
||||||
config BUBINGA
|
|
||||||
bool "Bubinga"
|
|
||||||
select WANT_EARLY_SERIAL
|
|
||||||
help
|
|
||||||
This option enables support for the IBM 405EP evaluation board.
|
|
||||||
|
|
||||||
config CPCI405
|
|
||||||
bool "CPCI405"
|
|
||||||
help
|
|
||||||
This option enables support for the CPCI405 board.
|
|
||||||
|
|
||||||
config EP405
|
|
||||||
bool "EP405/EP405PC"
|
|
||||||
help
|
|
||||||
This option enables support for the EP405/EP405PC boards.
|
|
||||||
|
|
||||||
config REDWOOD_5
|
|
||||||
bool "Redwood-5"
|
|
||||||
help
|
|
||||||
This option enables support for the IBM STB04 evaluation board.
|
|
||||||
|
|
||||||
config REDWOOD_6
|
|
||||||
bool "Redwood-6"
|
|
||||||
help
|
|
||||||
This option enables support for the IBM STBx25xx evaluation board.
|
|
||||||
|
|
||||||
config SYCAMORE
|
|
||||||
bool "Sycamore"
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC405GPr evaluation board.
|
|
||||||
|
|
||||||
config WALNUT
|
|
||||||
bool "Walnut"
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC405GP evaluation board.
|
|
||||||
|
|
||||||
config XILINX_ML300
|
|
||||||
bool "Xilinx-ML300"
|
|
||||||
help
|
|
||||||
This option enables support for the Xilinx ML300 evaluation board.
|
|
||||||
|
|
||||||
endchoice
|
|
||||||
|
|
||||||
choice
|
|
||||||
prompt "Machine Type"
|
|
||||||
depends on 44x
|
|
||||||
default EBONY
|
|
||||||
|
|
||||||
config BAMBOO
|
|
||||||
bool "Bamboo"
|
|
||||||
select WANT_EARLY_SERIAL
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC440EP evaluation board.
|
|
||||||
|
|
||||||
config EBONY
|
|
||||||
bool "Ebony"
|
|
||||||
select WANT_EARLY_SERIAL
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC440GP evaluation board.
|
|
||||||
|
|
||||||
config LUAN
|
|
||||||
bool "Luan"
|
|
||||||
select WANT_EARLY_SERIAL
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC440SP evaluation board.
|
|
||||||
|
|
||||||
config OCOTEA
|
|
||||||
bool "Ocotea"
|
|
||||||
select WANT_EARLY_SERIAL
|
|
||||||
help
|
|
||||||
This option enables support for the IBM PPC440GX evaluation board.
|
|
||||||
|
|
||||||
endchoice
|
|
||||||
|
|
||||||
config EP405PC
|
|
||||||
bool "EP405PC Support"
|
|
||||||
depends on EP405
|
|
||||||
|
|
||||||
|
|
||||||
# It's often necessary to know the specific 4xx processor type.
|
|
||||||
# Fortunately, it is impled (so far) from the board type, so we
|
|
||||||
# don't need to ask more redundant questions.
|
|
||||||
config NP405H
|
|
||||||
bool
|
|
||||||
depends on ASH
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440EP
|
|
||||||
bool
|
|
||||||
depends on BAMBOO
|
|
||||||
select PPC_FPU
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440GP
|
|
||||||
bool
|
|
||||||
depends on EBONY
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440GX
|
|
||||||
bool
|
|
||||||
depends on OCOTEA
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440SP
|
|
||||||
bool
|
|
||||||
depends on LUAN
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440
|
|
||||||
bool
|
|
||||||
depends on 440GP || 440SP || 440EP
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 440A
|
|
||||||
bool
|
|
||||||
depends on 440GX
|
|
||||||
default y
|
|
||||||
|
|
||||||
config IBM440EP_ERR42
|
|
||||||
bool
|
|
||||||
depends on 440EP
|
|
||||||
default y
|
|
||||||
|
|
||||||
# All 405-based cores up until the 405GPR and 405EP have this errata.
|
|
||||||
config IBM405_ERR77
|
|
||||||
bool
|
|
||||||
depends on 40x && !403GCX && !405GPR && !405EP
|
|
||||||
default y
|
|
||||||
|
|
||||||
# All 40x-based cores, up until the 405GPR and 405EP have this errata.
|
|
||||||
config IBM405_ERR51
|
|
||||||
bool
|
|
||||||
depends on 40x && !405GPR && !405EP
|
|
||||||
default y
|
|
||||||
|
|
||||||
config BOOKE
|
config BOOKE
|
||||||
bool
|
bool
|
||||||
depends on 44x
|
depends on 44x
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config IBM_OCP
|
menu "AMCC 40x options"
|
||||||
bool
|
depends on 40x
|
||||||
depends on ASH || BAMBOO || BUBINGA || CPCI405 || EBONY || EP405 || LUAN || OCOTEA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || WALNUT
|
|
||||||
default y
|
|
||||||
|
|
||||||
config XILINX_OCP
|
#config BUBINGA
|
||||||
bool
|
# bool "Bubinga"
|
||||||
depends on XILINX_ML300
|
# depends on 40x
|
||||||
default y
|
# default n
|
||||||
|
# select 405EP
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM 405EP evaluation board.
|
||||||
|
|
||||||
config IBM_EMAC4
|
#config CPCI405
|
||||||
bool
|
# bool "CPCI405"
|
||||||
depends on 440GX || 440SP
|
# depends on 40x
|
||||||
default y
|
# default n
|
||||||
|
# select 405GP
|
||||||
|
# help
|
||||||
|
# This option enables support for the CPCI405 board.
|
||||||
|
|
||||||
config BIOS_FIXUP
|
#config EP405
|
||||||
|
# bool "EP405/EP405PC"
|
||||||
|
# depends on 40x
|
||||||
|
# default n
|
||||||
|
# select 405GP
|
||||||
|
# help
|
||||||
|
# This option enables support for the EP405/EP405PC boards.
|
||||||
|
|
||||||
|
#config EP405PC
|
||||||
|
# bool "EP405PC Support"
|
||||||
|
# depends on EP405
|
||||||
|
# default y
|
||||||
|
# help
|
||||||
|
# This option enables support for the extra features of the EP405PC board.
|
||||||
|
|
||||||
|
#config REDWOOD_5
|
||||||
|
# bool "Redwood-5"
|
||||||
|
# depends on 40x
|
||||||
|
# default n
|
||||||
|
# select STB03xxx
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM STB04 evaluation board.
|
||||||
|
|
||||||
|
#config REDWOOD_6
|
||||||
|
# bool "Redwood-6"
|
||||||
|
# depends on 40x
|
||||||
|
# default n
|
||||||
|
# select STB03xxx
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM STBx25xx evaluation board.
|
||||||
|
|
||||||
|
#config SYCAMORE
|
||||||
|
# bool "Sycamore"
|
||||||
|
# depends on 40x
|
||||||
|
# default n
|
||||||
|
# select 405GPR
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM PPC405GPr evaluation board.
|
||||||
|
|
||||||
|
#config WALNUT
|
||||||
|
# bool "Walnut"
|
||||||
|
# depends on 40x
|
||||||
|
# default y
|
||||||
|
# select 405GP
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM PPC405GP evaluation board.
|
||||||
|
|
||||||
|
#config XILINX_ML300
|
||||||
|
# bool "Xilinx-ML300"
|
||||||
|
# depends on 40x
|
||||||
|
# default y
|
||||||
|
# select VIRTEX_II_PRO
|
||||||
|
# help
|
||||||
|
# This option enables support for the Xilinx ML300 evaluation board.
|
||||||
|
|
||||||
|
endmenu
|
||||||
|
|
||||||
|
# 40x specific CPU modules, selected based on the board above.
|
||||||
|
config NP405H
|
||||||
bool
|
bool
|
||||||
depends on BUBINGA || EP405 || SYCAMORE || WALNUT
|
#depends on ASH
|
||||||
default y
|
|
||||||
|
|
||||||
# OAK doesn't exist but wanted to keep this around for any future 403GCX boards
|
# OAK doesn't exist but wanted to keep this around for any future 403GCX boards
|
||||||
config 403GCX
|
config 403GCX
|
||||||
bool
|
bool
|
||||||
depends on OAK
|
#depends on OAK
|
||||||
default y
|
select IBM405_ERR51
|
||||||
|
|
||||||
config 405EP
|
|
||||||
bool
|
|
||||||
depends on BUBINGA
|
|
||||||
default y
|
|
||||||
|
|
||||||
config 405GP
|
config 405GP
|
||||||
bool
|
bool
|
||||||
depends on CPCI405 || EP405 || WALNUT
|
select IBM405_ERR77
|
||||||
default y
|
select IBM405_ERR51
|
||||||
|
|
||||||
|
config 405EP
|
||||||
|
bool
|
||||||
|
|
||||||
config 405GPR
|
config 405GPR
|
||||||
bool
|
bool
|
||||||
depends on SYCAMORE
|
|
||||||
default y
|
|
||||||
|
|
||||||
config VIRTEX_II_PRO
|
config VIRTEX_II_PRO
|
||||||
bool
|
bool
|
||||||
depends on XILINX_ML300
|
select IBM405_ERR77
|
||||||
default y
|
select IBM405_ERR51
|
||||||
|
|
||||||
config STB03xxx
|
config STB03xxx
|
||||||
bool
|
bool
|
||||||
depends on REDWOOD_5 || REDWOOD_6
|
select IBM405_ERR77
|
||||||
default y
|
select IBM405_ERR51
|
||||||
|
|
||||||
config EMBEDDEDBOOT
|
# 40x errata/workaround config symbols, selected by the CPU models above
|
||||||
|
|
||||||
|
# All 405-based cores up until the 405GPR and 405EP have this errata.
|
||||||
|
config IBM405_ERR77
|
||||||
bool
|
bool
|
||||||
depends on EP405 || XILINX_ML300
|
|
||||||
default y
|
|
||||||
|
|
||||||
config IBM_OPENBIOS
|
# All 40x-based cores, up until the 405GPR and 405EP have this errata.
|
||||||
|
config IBM405_ERR51
|
||||||
bool
|
bool
|
||||||
depends on ASH || BUBINGA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || WALNUT
|
|
||||||
|
menu "AMCC 44x options"
|
||||||
|
depends on 44x
|
||||||
|
|
||||||
|
#config BAMBOO
|
||||||
|
# bool "Bamboo"
|
||||||
|
# depends on 44x
|
||||||
|
# default n
|
||||||
|
# select 440EP
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM PPC440EP evaluation board.
|
||||||
|
|
||||||
|
config EBONY
|
||||||
|
bool "Ebony"
|
||||||
|
depends on 44x
|
||||||
default y
|
default y
|
||||||
|
select 440GP
|
||||||
|
help
|
||||||
|
This option enables support for the IBM PPC440GP evaluation board.
|
||||||
|
|
||||||
config PPC4xx_DMA
|
#config LUAN
|
||||||
bool "PPC4xx DMA controller support"
|
# bool "Luan"
|
||||||
depends on 4xx
|
# depends on 44x
|
||||||
|
# default n
|
||||||
|
# select 440SP
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM PPC440SP evaluation board.
|
||||||
|
|
||||||
config PPC4xx_EDMA
|
#config OCOTEA
|
||||||
bool
|
# bool "Ocotea"
|
||||||
depends on !STB03xxx && PPC4xx_DMA
|
# depends on 44x
|
||||||
default y
|
# default n
|
||||||
|
# select 440GX
|
||||||
|
# help
|
||||||
|
# This option enables support for the IBM PPC440GX evaluation board.
|
||||||
|
|
||||||
config PPC_GEN550
|
|
||||||
bool
|
|
||||||
depends on 4xx
|
|
||||||
default y
|
|
||||||
|
|
||||||
choice
|
|
||||||
prompt "TTYS0 device and default console"
|
|
||||||
depends on 40x
|
|
||||||
default UART0_TTYS0
|
|
||||||
|
|
||||||
config UART0_TTYS0
|
|
||||||
bool "UART0"
|
|
||||||
|
|
||||||
config UART0_TTYS1
|
|
||||||
bool "UART1"
|
|
||||||
|
|
||||||
endchoice
|
|
||||||
|
|
||||||
config SERIAL_SICC
|
|
||||||
bool "SICC Serial port support"
|
|
||||||
depends on STB03xxx
|
|
||||||
|
|
||||||
config UART1_DFLT_CONSOLE
|
|
||||||
bool
|
|
||||||
depends on SERIAL_SICC && UART0_TTYS1
|
|
||||||
default y
|
|
||||||
|
|
||||||
config SERIAL_SICC_CONSOLE
|
|
||||||
bool
|
|
||||||
depends on SERIAL_SICC && UART0_TTYS1
|
|
||||||
default y
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
|
# 44x specific CPU modules, selected based on the board above.
|
||||||
menu "IBM 40x options"
|
config 440EP
|
||||||
depends on 40x
|
|
||||||
|
|
||||||
config SERIAL_SICC
|
|
||||||
bool "SICC Serial port"
|
|
||||||
depends on STB03xxx
|
|
||||||
|
|
||||||
config UART1_DFLT_CONSOLE
|
|
||||||
bool
|
bool
|
||||||
depends on SERIAL_SICC && UART0_TTYS1
|
select PPC_FPU
|
||||||
|
select IBM440EP_ERR42
|
||||||
|
|
||||||
|
config 440GP
|
||||||
|
bool
|
||||||
|
select IBM_NEW_EMAC_ZMII
|
||||||
|
|
||||||
|
config 440GX
|
||||||
|
bool
|
||||||
|
|
||||||
|
config 440SP
|
||||||
|
bool
|
||||||
|
|
||||||
|
config 440A
|
||||||
|
bool
|
||||||
|
depends on 440GX
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config SERIAL_SICC_CONSOLE
|
# 44x errata/workaround config symbols, selected by the CPU models above
|
||||||
|
config IBM440EP_ERR42
|
||||||
bool
|
bool
|
||||||
depends on SERIAL_SICC && UART0_TTYS1
|
|
||||||
default y
|
|
||||||
|
|
||||||
endmenu
|
#config XILINX_OCP
|
||||||
|
# bool
|
||||||
|
# depends on XILINX_ML300
|
||||||
|
# default y
|
||||||
|
|
||||||
|
#config BIOS_FIXUP
|
||||||
|
# bool
|
||||||
|
# depends on BUBINGA || EP405 || SYCAMORE || WALNUT
|
||||||
|
# default y
|
||||||
|
|
||||||
|
#config PPC4xx_DMA
|
||||||
|
# bool "PPC4xx DMA controller support"
|
||||||
|
# depends on 4xx
|
||||||
|
|
||||||
|
#config PPC4xx_EDMA
|
||||||
|
# bool
|
||||||
|
# depends on !STB03xxx && PPC4xx_DMA
|
||||||
|
# default y
|
||||||
|
Loading…
Reference in New Issue
Block a user