zephyr/soc/arm
Ulf Magnusson c5839f834b kconfig: Remove assignments to CONFIG_<arch> syms and hide them
All board defconfig files currently set the architecture in addition to
the board and the SoC, by setting e.g. CONFIG_ARM=y. This spams up
defconfig files.

CONFIG_<arch> symbols currently being set in configuration files also
means that they are configurable (can be changed in menuconfig and in
configuration files), even though changing the architecture won't work,
since other things get set from -DBOARD=<board>. Many boards also allow
changing the architecture symbols independently from the SoC symbols,
which doesn't make sense.

Get rid of all assignments to CONFIG_<arch> symbols and clean up the
relationships between symbols and the configuration interface, like
this:

1. Remove the choice with the CONFIG_<arch> symbols in arch/Kconfig and
   turn the CONFIG_<arch> symbols into invisible
   (promptless/nonconfigurable) symbols instead.

   Getting rid of the choice allows the symbols to be 'select'ed (choice
   symbols don't support 'select').

2. Select the right CONFIG_<arch> symbol from the SOC_SERIES_* symbols.
   This makes sense since you know the architecture if you know the SoC.

   Put the select on the SOC_* symbol instead for boards that don't have
   a SOC_SERIES_*.

3. Remove all assignments to CONFIG_<arch> symbols. The assignments
   would generate errors now, since the symbols are promptless.

The change was done by grepping for assignments to CONFIG_<arch>
symbols, finding the SOC_SERIES_* (or SOC_*) symbol being set in the
same defconfig file, and putting a 'select' on it instead.

See
https://github.com/ulfalizer/zephyr/commits/hide-arch-syms-unsquashed
for a split-up version of this commit, which will make it easier to see
how stuff was done. This needs to go in as one commit though.

This change is safer than it might seem re. outstanding PRs, because any
assignment to CONFIG_<arch> symbols generates an error now, making
outdated stuff easy to catch.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 00:50:08 -06:00
..
arm kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
atmel_sam kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
atmel_sam0 kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
bcm_vk kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
common/cortex_m arch: arm: Move ARM code to AArch32 sub-directory 2019-12-20 11:40:59 -05:00
cypress kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
microchip_mec kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
nordic_nrf kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
nxp_imx kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
nxp_kinetis kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
nxp_lpc kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
qemu_cortex_a53 kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
silabs_exx32 kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
st_stm32 kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
ti_lm3s6965 kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
ti_simplelink kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
xilinx_zynqmp kconfig: Remove assignments to CONFIG_<arch> syms and hide them 2020-02-08 00:50:08 -06:00
CMakeLists.txt soc: arm: framework for common fixed MPU region configuration 2019-12-09 11:51:14 -05:00
Kconfig soc: arm: framework for common fixed MPU region configuration 2019-12-09 11:51:14 -05:00