[U-Boot] [PATCH v4 0/15] samsung: Use common config files with Samsung boards

Simon Glass sjg at chromium.org
Mon Sep 29 03:18:39 CEST 2014


This series tries to unify the Samsung board configs into a few header
files for exynos5 and exynos4.

The purpose is to make it easier to move to driver model. In that case
I would like things like the GPIO drivers and serial drivers to work in
a standard way, and not need to support device tree and platform data at
the same time. That would be quite painful.

Another reason is that the Chrome OS EC drivers are currently included in
boards that don't have a Chrome OS EC. This concern was raised by the
Samsung maintainer (Minkyu) a while back.

There are still a few boards that don't use CONFIG_OF_CONTROL so I have
updated these rudimentary of device tree files based on feedback.

This series has the side-effect of getting the EC interface working
properly on Pit, so the keyboard works. It also provides access to the
TPS65090 PMIC, which means that the backlight is enabled.

Changes in v4:
- Address review nits from Minkyu
- Make this driver more like the one it came from
- Rebase on top of master (CONFIG_OF settings moved to Kconfig)
- Remove special FET_ERR_NOT_READY etc. and use standard errors

Changes in v3:
- Adjust device tree file based on Robert Baldyga's example

Changes in v2:
- Add new patch to enable keyboard on pit
- Add new patch to split out cros_ec drivers
- Add new patch to use 900MHz ARM frequeny in SPL for peach_pit
- Avoid using a common file, and just add a device tree
- Don't enable the cros_ec on smdk5420
- Fix 'cashe' typo in commit subject
- Fix device tree base addresses
- Leave CONFIG_SERIAL3 in the individual board files
- Leave in a few configs which are not in fact common to all boards
- Reduce the number of common elements to avoid needing #undefs later
- Slightly reword the commit message

Simon Glass (15):
  Exynos: Use 900MHz ARM frequency in SPL for peach_pit
  exynos5: Enable data cache
  cros_ec: power: Add a tunnelled version of the tps65090 driver
  cros_ec: exynos: Use the correct tps65090 driver in each case
  dm: exynos: Split out the cros_ec drivers
  exynos: dts: Add device tree node for cros_ec keyboard
  exynos: Rename -dt config files to -common
  exynos: Move common exynos settings into a common file
  exynos: Move common smdk5420 things to common file
  exynos: config: Move cros_ec and tps65090 out of smdk boards
  config: Move arndale to use common exynos5250 file
  config: Move smdkv310 to use common exynos4 file
  samsung: Enable device tree for s5p_goni
  samsung: Enable device tree for smdkc100
  exynos: Enable pre-relocation malloc()

 arch/arm/Kconfig                                   |  13 +-
 arch/arm/cpu/armv7/exynos/Kconfig                  |   1 +
 arch/arm/cpu/armv7/s5pc1xx/Kconfig                 |  25 +++
 arch/arm/dts/Makefile                              |   3 +
 arch/arm/dts/exynos4210-smdkv310.dts               |  21 ++
 arch/arm/dts/exynos5420-peach-pit.dts              |  57 +++++-
 arch/arm/dts/s5pc1xx-goni.dts                      |  28 +++
 arch/arm/dts/s5pc1xx-smdkc100.dts                  |  29 +++
 arch/arm/include/asm/arch-s5pc1xx/periph.h         |  61 ++++++
 arch/arm/include/asm/arch-s5pc1xx/pinmux.h         |  50 +++++
 configs/s5p_goni_defconfig                         |   2 +
 configs/smdkc100_defconfig                         |   2 +
 configs/smdkv310_defconfig                         |   1 +
 drivers/mmc/s5p_sdhci.c                            |   2 -
 drivers/power/pmic/Makefile                        |   3 +-
 drivers/power/pmic/pmic_tps65090_ec.c              | 218 +++++++++++++++++++++
 include/configs/arndale.h                          | 195 +-----------------
 include/configs/{exynos4-dt.h => exynos-common.h}  | 110 +++--------
 include/configs/exynos4-common.h                   |  68 +++++++
 include/configs/{exynos5-dt.h => exynos5-common.h} | 126 ++----------
 include/configs/exynos5-dt-common.h                |  35 ++++
 .../{exynos5250-dt.h => exynos5250-common.h}       |   7 +-
 .../configs/{exynos5420.h => exynos5420-common.h}  |  22 ++-
 include/configs/odroid.h                           |   4 +-
 include/configs/origen.h                           |   5 +-
 include/configs/peach-pit.h                        |  16 +-
 include/configs/s5p_goni.h                         |   9 +-
 include/configs/s5pc210_universal.h                |   5 +-
 include/configs/smdk5250.h                         |  23 ++-
 include/configs/smdk5420.h                         |   5 +-
 include/configs/smdkc100.h                         |   6 +
 include/configs/smdkv310.h                         |  61 +-----
 include/configs/snow.h                             |  25 ++-
 include/configs/trats.h                            |   6 +-
 include/configs/trats2.h                           |   6 +-
 35 files changed, 760 insertions(+), 490 deletions(-)
 create mode 100644 arch/arm/cpu/armv7/s5pc1xx/Kconfig
 create mode 100644 arch/arm/dts/exynos4210-smdkv310.dts
 create mode 100644 arch/arm/dts/s5pc1xx-goni.dts
 create mode 100644 arch/arm/dts/s5pc1xx-smdkc100.dts
 create mode 100644 arch/arm/include/asm/arch-s5pc1xx/periph.h
 create mode 100644 arch/arm/include/asm/arch-s5pc1xx/pinmux.h
 create mode 100644 drivers/power/pmic/pmic_tps65090_ec.c
 rename include/configs/{exynos4-dt.h => exynos-common.h} (51%)
 create mode 100644 include/configs/exynos4-common.h
 rename include/configs/{exynos5-dt.h => exynos5-common.h} (64%)
 create mode 100644 include/configs/exynos5-dt-common.h
 rename include/configs/{exynos5250-dt.h => exynos5250-common.h} (88%)
 rename include/configs/{exynos5420.h => exynos5420-common.h} (71%)

-- 
2.1.0.rc2.206.gedb03e5



More information about the U-Boot mailing list