[U-Boot] [PATCH v4 00/30] ARM: k2g: Add support for new K2G ICE EVM.

Franklin S Cooper Jr fcooper at ti.com
Fri Jun 16 22:31:04 UTC 2017


This patchset adds support for the new Keystone 2 Industrial Communication
Engine board.

This patchset includes the introduction of embedded FIT images in U-boot.
This creates a FIT image of dtb files that enables board specific code to
select which DTB to use at runtime. Initially during boot a generic DTB is
required that enables board detection to occur and once it has can later be
swapped out for the correct dtb.

Version 4 changes:
Rebased on top of master.
Tweaks done to patches 2 and 3 since functions have been added and tweaked
in spl_fit.c.
Left reviewed by as is since changes weren't drastic.

Version 3 changes:
Fixed minor comments that were missed in rev 2.

Version 2 changes:
Some patches were dropped since equivalent changes have already be
incorporated in upstream already.

The addition davinci i2c device model in upstream resulted in some
patches having to be added or tweaked.

The DT for K2G ICE is based on the version that has been accepted into
Linux mainline https://lkml.org/lkml/2017/5/22/28

Franklin S Cooper Jr (29):
  spl: fit: Break out some functions into a common file
  boot_fit: Create helper functions that can be used to select DTB out
    of FIT
  fdt: Enable selecting correct DTB from appended FIT Image
  ti: common: board_detect: Add function to determine if EEPROM was read
  dts: Allow OF_LIST to depend on FIT_EMBED
  ARM: dts: k2g: Introduce U-boot specific dtsi file
  arm: dts: Add new "generic" 66AK2Gx device tree file.
  board_f: Add new function to allow runtime DTB selection
  Makefile: Build additional binaries for dtb FIT blobs appended to
    U-boot
  ARM: keystone2: Allow to build with all image formats
  ARM: k2g: Define embedded_dtb_select for runtime DTB selection in
    U-boot
  ARM: keystone2: Define board_fit_config_name_match for Keystone 2
    boards
  ks2_evm: Add EEPROM based board detection
  defconfig: keystone2: Enable U-boot runtime DTB detection
  ARM: keystone2: Add additional fields used for DDR3 configuration
  ARM: k2g: Program DDR PHY MR2 register with the default value
  ARM: k2g: Program DDRPHY_DATX8 registers via mask and value variables
  ks2_evm: Add EEPROM based board detection helper functions
  ARM: k2g: Add pinmux support for K2G ICE evm
  ARM: k2g: Add DDR3 configuration for K2G ICE evm
  board: ks2: Use board detection to wrap code not specific to K2G ICE
    evm
  ARM: k2g: Use board detection to wrap K2G GP specific calls
  ARM: k2g: Update board_name u-boot env variable at runtime
  ARM: dts: keystone-k2g: Remove skeleton.dtsi
  ARM: dts: keystone-k2g-evm: Add unit address to memory node
  ARM: dts: k2g: Disable netcp by default
  ARM: dts: k2g: Add DT support for K2G Industrial Communication Engine
    evm
  ARM: k2g: Add K2G ICE DTB to the list of possible DTBs
  defconfig: k2g_evm_defconfig: Add K2G ICE to OF_LIST

Nishanth Menon (1):
  ti: common: board_detect: Allow settings board detection variables
    manually

 .gitignore                                     |  1 +
 Makefile                                       | 18 +++++-
 arch/arm/dts/Makefile                          |  4 +-
 arch/arm/dts/keystone-k2g-evm-u-boot.dtsi      | 19 ++++++
 arch/arm/dts/keystone-k2g-evm.dts              |  9 +++
 arch/arm/dts/keystone-k2g-generic-u-boot.dtsi  | 19 ++++++
 arch/arm/dts/keystone-k2g-generic.dts          | 28 +++++++++
 arch/arm/dts/keystone-k2g-ice-u-boot.dtsi      | 19 ++++++
 arch/arm/dts/keystone-k2g-ice.dts              | 36 +++++++++++
 arch/arm/dts/keystone-k2g-netcp.dtsi           |  1 +
 arch/arm/dts/keystone-k2g.dtsi                 |  8 +--
 arch/arm/mach-keystone/config.mk               |  4 +-
 arch/arm/mach-keystone/ddr3.c                  | 35 ++++++++---
 arch/arm/mach-keystone/include/mach/ddr3.h     | 14 +++++
 arch/arm/mach-keystone/include/mach/hardware.h |  3 +
 board/ti/common/board_detect.c                 | 34 ++++++++++
 board/ti/common/board_detect.h                 | 26 ++++++++
 board/ti/ks2_evm/board.c                       | 21 +++++--
 board/ti/ks2_evm/board.h                       | 21 +++++++
 board/ti/ks2_evm/board_k2e.c                   | 10 +++
 board/ti/ks2_evm/board_k2g.c                   | 86 +++++++++++++++++++++++---
 board/ti/ks2_evm/board_k2hk.c                  | 10 +++
 board/ti/ks2_evm/board_k2l.c                   | 10 +++
 board/ti/ks2_evm/ddr3_k2g.c                    | 78 ++++++++++++++++++++++-
 board/ti/ks2_evm/mux-k2g.h                     | 45 +++++++++++++-
 common/Kconfig                                 | 16 +++++
 common/Makefile                                |  2 +
 common/board_f.c                               |  3 +
 common/boot_fit.c                              | 80 ++++++++++++++++++++++++
 common/common_fit.c                            | 62 +++++++++++++++++++
 common/spl/spl_fit.c                           | 54 +---------------
 configs/k2e_evm_defconfig                      |  3 +
 configs/k2g_evm_defconfig                      |  3 +
 configs/k2hk_evm_defconfig                     |  3 +
 configs/k2l_evm_defconfig                      |  3 +
 dts/Kconfig                                    | 11 ++--
 include/boot_fit.h                             |  9 +++
 include/common.h                               |  4 ++
 include/configs/k2g_evm.h                      | 13 +++-
 include/image.h                                | 10 +++
 lib/fdtdec.c                                   | 10 +++
 41 files changed, 749 insertions(+), 96 deletions(-)
 create mode 100644 arch/arm/dts/keystone-k2g-evm-u-boot.dtsi
 create mode 100644 arch/arm/dts/keystone-k2g-generic-u-boot.dtsi
 create mode 100644 arch/arm/dts/keystone-k2g-generic.dts
 create mode 100644 arch/arm/dts/keystone-k2g-ice-u-boot.dtsi
 create mode 100644 arch/arm/dts/keystone-k2g-ice.dts
 create mode 100644 common/boot_fit.c
 create mode 100644 common/common_fit.c
 create mode 100644 include/boot_fit.h

-- 
2.10.0



More information about the U-Boot mailing list