
Hello,
While adding support for new platforms, I found out that many, many platforms define pretty much the same values for:
CONFIG_SYS_CBSIZE CONFIG_SYS_PBSIZE CONFIG_SYS_MAXARGS CONFIG_SYS_BARGSIZE
with just a few platforms deviating from the values that have clearly been copy/pasted over and over again all over the place.
In this patch series, I propose to have U-Boot define some sane defaults for those 4 configuration options, and cleanup all the board configuration files that were using the default values. This leads to the removal of 1300+ lines.
Of course, this is all open for discussion, and at this point, I have only done minimal build testing, as my goal is to get the discussion started.
Open questions:
- Do we really need to have all those remaining boards with custom/arbitrary values for those configuration options?
- Does it really makes sense for those configuration options to be customized in board configuration files? For example, the size of the kernel command line is not at all tied to the underlying hardware, but rather how much arguments the user wants to pass to the kernel. Ditto for the maximum number of arguments passed to U-Boot commands. Perhaps we want to remove those options entirely from the .h files, and simply have a Kconfig option instead?
Also, let me know if I have missed some existing work in this area.
Thanks for your feedback!
Thomas Petazzoni
Thomas Petazzoni (8): include/config_fallbacks.h: add default for CONFIG_SYS_CBSIZE include/configs: remove CONFIG_SYS_CBSIZE when the default value is used include/config_fallbacks.h: change fallback for CONFIG_SYS_PBSIZE include/configs: drop default definitions of CONFIG_SYS_PBSIZE include/config_fallbacks.h: add default for CONFIG_SYS_MAXARGS include/configs: drop default definitions of CONFIG_SYS_MAXARGS include/configs: remove default values of CONFIG_SYS_BARGSIZE include/configs: remove numerous CONFIG_SYS_BARGSIZE definitions
include/config_fallbacks.h | 15 ++++++++++++++- include/configs/10m50_devboard.h | 6 ------ include/configs/3c120_devboard.h | 6 ------ include/configs/B4860QDS.h | 8 -------- include/configs/BSC9131RDB.h | 3 --- include/configs/BSC9132QDS.h | 10 ---------- include/configs/C29XPCIE.h | 6 ------ include/configs/M5208EVBE.h | 9 --------- include/configs/M52277EVB.h | 9 --------- include/configs/M5235EVB.h | 9 --------- include/configs/M5249EVB.h | 9 --------- include/configs/M5253DEMO.h | 9 --------- include/configs/M5253EVBE.h | 9 --------- include/configs/M5272C3.h | 9 --------- include/configs/M5275EVB.h | 9 --------- include/configs/M5282EVB.h | 9 --------- include/configs/M53017EVB.h | 9 --------- include/configs/M5329EVB.h | 9 --------- include/configs/M5373EVB.h | 9 --------- include/configs/M54418TWR.h | 12 ------------ include/configs/M54451EVB.h | 7 ------- include/configs/M54455EVB.h | 9 --------- include/configs/M5475EVB.h | 9 --------- include/configs/M5485EVB.h | 9 --------- include/configs/MCR3000.h | 4 ---- include/configs/MPC8308RDB.h | 3 --- include/configs/MPC8313ERDB.h | 4 ---- include/configs/MPC8315ERDB.h | 12 ------------ include/configs/MPC8323ERDB.h | 12 ------------ include/configs/MPC832XEMDS.h | 12 ------------ include/configs/MPC8349EMDS.h | 12 ------------ include/configs/MPC8349ITX.h | 12 ------------ include/configs/MPC837XEMDS.h | 12 ------------ include/configs/MPC837XERDB.h | 12 ------------ include/configs/MPC8536DS.h | 9 --------- include/configs/MPC8540ADS.h | 10 ---------- include/configs/MPC8541CDS.h | 8 -------- include/configs/MPC8544DS.h | 8 -------- include/configs/MPC8548CDS.h | 8 -------- include/configs/MPC8555CDS.h | 8 -------- include/configs/MPC8560ADS.h | 8 -------- include/configs/MPC8568MDS.h | 8 -------- include/configs/MPC8569MDS.h | 2 -- include/configs/MPC8572DS.h | 8 -------- include/configs/MPC8610HPCD.h | 10 ---------- include/configs/MPC8641HPCN.h | 10 ---------- include/configs/MigoR.h | 3 --- include/configs/P1010RDB.h | 10 ---------- include/configs/P1022DS.h | 9 --------- include/configs/P1023RDB.h | 10 ---------- include/configs/P2041RDB.h | 11 ----------- include/configs/T102xQDS.h | 8 -------- include/configs/T102xRDB.h | 8 -------- include/configs/T1040QDS.h | 8 -------- include/configs/T104xRDB.h | 8 -------- include/configs/T208xQDS.h | 8 -------- include/configs/T208xRDB.h | 8 -------- include/configs/T4240RDB.h | 8 -------- include/configs/TQM834x.h | 12 ------------ include/configs/UCP1020.h | 9 --------- include/configs/adp-ae3xx.h | 11 ----------- include/configs/adp-ag101p.h | 11 ----------- include/configs/advantech_dms-ba16.h | 4 ---- include/configs/am3517_crane.h | 5 ----- include/configs/am3517_evm.h | 5 ----- include/configs/amcore.h | 14 -------------- include/configs/ap121.h | 4 ---- include/configs/ap143.h | 4 ---- include/configs/ap325rxa.h | 6 ------ include/configs/ap_sh4a_4a.h | 6 ------ include/configs/apalis-tk1.h | 3 --- include/configs/apalis_t30.h | 3 --- include/configs/apf27.h | 4 ---- include/configs/aristainetos-common.h | 3 --- include/configs/armadillo-800eva.h | 3 --- include/configs/aspeed-common.h | 7 ------- include/configs/astro_mcf5373l.h | 9 --------- include/configs/at91-sama5_common.h | 2 -- include/configs/at91rm9200ek.h | 5 ----- include/configs/at91sam9260ek.h | 2 -- include/configs/at91sam9261ek.h | 2 -- include/configs/at91sam9263ek.h | 2 -- include/configs/at91sam9m10g45ek.h | 2 -- include/configs/at91sam9n12ek.h | 2 -- include/configs/at91sam9rlek.h | 2 -- include/configs/at91sam9x5ek.h | 2 -- include/configs/axs10x.h | 5 ----- include/configs/bcm23550_w1d.h | 2 -- include/configs/bcm28155_ap.h | 2 -- include/configs/bcm_ep_board.h | 2 -- include/configs/bcm_northstar2.h | 2 -- include/configs/boston.h | 4 ---- include/configs/bur_cfg_common.h | 5 ----- include/configs/calimain.h | 2 -- include/configs/cm_fx6.h | 4 ---- include/configs/cm_t35.h | 7 ------- include/configs/cm_t3517.h | 5 ----- include/configs/cobra5272.h | 9 --------- include/configs/colibri_pxa270.h | 5 ----- include/configs/colibri_t20.h | 3 --- include/configs/colibri_t30.h | 3 --- include/configs/colibri_vf.h | 3 --- include/configs/controlcenterd.h | 9 --------- include/configs/corenet_ds.h | 8 -------- include/configs/corvus.h | 4 ---- include/configs/cyrus.h | 8 -------- include/configs/da850evm.h | 2 -- include/configs/dbau1x00.h | 4 ---- include/configs/devkit3250.h | 3 --- include/configs/dragonboard410c.h | 3 --- include/configs/ea20.h | 2 -- include/configs/eb_cpu5282.h | 2 -- include/configs/ecovec.h | 6 ------ include/configs/edb93xx.h | 5 ----- include/configs/edison.h | 1 - include/configs/edminiv2.h | 3 --- include/configs/embestmx6boards.h | 3 --- include/configs/espt.h | 4 ---- include/configs/ethernut5.h | 4 ---- include/configs/exynos-common.h | 1 - include/configs/exynos7420-common.h | 1 - include/configs/flea3.h | 1 - include/configs/ge_bx50v3.h | 4 ---- include/configs/gw_ventana.h | 3 --- include/configs/h2200.h | 8 -------- include/configs/highbank.h | 4 ---- include/configs/hikey.h | 3 --- include/configs/hrcon.h | 3 --- include/configs/hsdk.h | 5 ----- include/configs/ids8313.h | 3 --- include/configs/imgtec_xilfpga.h | 1 - include/configs/imx27lite-common.h | 4 ---- include/configs/imx31_phycore.h | 9 --------- include/configs/integrator-common.h | 4 ---- include/configs/ipam390.h | 2 -- include/configs/kc1.h | 3 --- include/configs/km/keymile-common.h | 1 - include/configs/kzm9g.h | 3 --- include/configs/legoev3.h | 2 -- include/configs/ls1012a_common.h | 3 --- include/configs/ls1021aiot.h | 5 ----- include/configs/ls1021aqds.h | 5 ----- include/configs/ls1021atwr.h | 5 ----- include/configs/ls1043a_common.h | 3 --- include/configs/ls1043aqds.h | 3 --- include/configs/ls1046a_common.h | 3 --- include/configs/ls1046aqds.h | 3 --- include/configs/ls2080a_common.h | 3 --- include/configs/m53evk.h | 3 --- include/configs/malta.h | 5 ----- include/configs/mcx.h | 5 ----- include/configs/meesc.h | 3 --- include/configs/meson-gxbb-common.h | 5 ----- include/configs/microblaze-generic.h | 3 --- include/configs/mpc8308_p1m.h | 3 --- include/configs/mpr2.h | 4 ---- include/configs/ms7720se.h | 4 ---- include/configs/ms7722se.h | 3 --- include/configs/ms7750se.h | 3 --- include/configs/mv-common.h | 2 -- include/configs/mvebu_armada-37xx.h | 2 -- include/configs/mvebu_armada-8k.h | 2 -- include/configs/mx25pdk.h | 7 ------- include/configs/mx31ads.h | 5 ----- include/configs/mx31pdk.h | 5 ----- include/configs/mx35pdk.h | 3 --- include/configs/mx51evk.h | 3 --- include/configs/mx53ard.h | 6 ------ include/configs/mx53cx9020.h | 3 --- include/configs/mx53evk.h | 6 ------ include/configs/mx53loco.h | 3 --- include/configs/mx53smd.h | 6 ------ include/configs/mx6_common.h | 1 - include/configs/mx7_common.h | 1 - include/configs/mx7ulp_evk.h | 3 --- include/configs/nokia_rx51.h | 7 ------- include/configs/nsim.h | 5 ----- include/configs/omapl138_lcdk.h | 2 -- include/configs/ot1200.h | 3 --- include/configs/p1_p2_rdb_pc.h | 9 --------- include/configs/p1_twr.h | 9 --------- include/configs/pb1x00.h | 3 --- include/configs/pcm052.h | 5 ----- include/configs/pic32mzdask.h | 3 --- include/configs/picosam9g45.h | 4 ---- include/configs/platinum.h | 4 ---- include/configs/pm9261.h | 4 ---- include/configs/pm9263.h | 4 ---- include/configs/pm9g45.h | 4 ---- include/configs/poplar.h | 3 --- include/configs/qemu-mips.h | 7 ------- include/configs/qemu-mips64.h | 7 ------- include/configs/qemu-ppce500.h | 4 ---- include/configs/r0p7734.h | 9 --------- include/configs/r2dplus.h | 3 --- include/configs/r7780mp.h | 3 --- include/configs/rcar-gen2-common.h | 3 --- include/configs/rcar-gen3-common.h | 2 -- include/configs/rk3036_common.h | 1 - include/configs/rk3188_common.h | 1 - include/configs/rk322x_common.h | 1 - include/configs/rk3288_common.h | 1 - include/configs/rk3328_common.h | 1 - include/configs/rk3368_common.h | 1 - include/configs/rk3399_common.h | 1 - include/configs/rpi.h | 3 --- include/configs/rsk7203.h | 5 ----- include/configs/rsk7264.h | 2 -- include/configs/rsk7269.h | 2 -- include/configs/rv1108_common.h | 1 - include/configs/s32v234evb.h | 5 ----- include/configs/s5p_goni.h | 4 ---- include/configs/sandbox.h | 4 ---- include/configs/sbc8349.h | 12 ------------ include/configs/sbc8548.h | 8 -------- include/configs/sbc8641d.h | 10 ---------- include/configs/secomx6quq7.h | 4 ---- include/configs/sh7752evb.h | 3 --- include/configs/sh7753evb.h | 3 --- include/configs/sh7757lcr.h | 3 --- include/configs/sh7763rdp.h | 4 ---- include/configs/sh7785lcr.h | 3 --- include/configs/shmin.h | 4 ---- include/configs/siemens-am33x-common.h | 4 ---- include/configs/smartweb.h | 2 -- include/configs/smdkc100.h | 4 ---- include/configs/snapper9260.h | 4 ---- include/configs/snapper9g45.h | 4 ---- include/configs/sniper.h | 3 --- include/configs/socfpga_common.h | 2 -- include/configs/socrates.h | 10 ---------- include/configs/spear-common.h | 5 ----- include/configs/stih410-b2260.h | 1 - include/configs/stm32f429-discovery.h | 4 ---- include/configs/stm32f746-disco.h | 3 --- include/configs/strider.h | 3 --- include/configs/stv0991.h | 3 --- include/configs/sunxi-common.h | 4 ---- include/configs/t4qds.h | 8 -------- include/configs/tam3517-common.h | 5 ----- include/configs/tao3530.h | 8 -------- include/configs/taurus.h | 4 ---- include/configs/tb100.h | 5 ----- include/configs/tegra-common.h | 2 -- include/configs/thunderx_88xx.h | 3 --- include/configs/ti814x_evm.h | 9 --------- include/configs/ti_armv7_common.h | 3 --- include/configs/titanium.h | 4 ---- include/configs/tricorder.h | 7 ------- include/configs/ts4800.h | 5 ----- include/configs/udoo.h | 3 --- include/configs/uniphier.h | 3 --- include/configs/usb_a9263.h | 4 ---- include/configs/usbarmory.h | 3 --- include/configs/vct.h | 3 --- include/configs/ve8313.h | 2 -- include/configs/vexpress_aemv8a.h | 3 --- include/configs/vexpress_common.h | 5 ----- include/configs/vf610twr.h | 5 ----- include/configs/vme8349.h | 10 ---------- include/configs/woodburn_common.h | 5 ----- include/configs/work_92105.h | 3 --- include/configs/x600.h | 5 ----- include/configs/x86-common.h | 5 ----- include/configs/xilinx_zynqmp.h | 2 -- include/configs/xpedite517x.h | 4 ---- include/configs/xpedite520x.h | 4 ---- include/configs/xpedite537x.h | 4 ---- include/configs/xpedite550x.h | 4 ---- include/configs/xtfpga.h | 5 ----- include/configs/zipitz2.h | 5 +---- include/configs/zmx25.h | 4 ---- include/configs/zynq-common.h | 3 --- 273 files changed, 15 insertions(+), 1366 deletions(-)