[U-Boot] [PATCH v3 00/19] DM_I2C_COMPAT removal for all ti platforms

Adam Ford aford173 at gmail.com
Sat Oct 27 21:46:51 UTC 2018


On Mon, Oct 22, 2018 at 9:13 AM Jean-Jacques Hiblot <jjhiblot at ti.com> wrote:
>
> This series remove the usage of the DM_I2C_COMPAT option for all the ti
> platforms. It also takes this opportunity to not disable DM_I2C in the SPL.
>
> There are a couples of issues to fix:
> - CMD_EEPROM does not support the DM API. Fixed by removing this option
>   when DM_I2C is used without DM_I2C_COMPAT
> - i2c_get_chip_for_busnum() does not work when OF_CONTROL is not used
>   (as is the case with am33xx SPL).
> - The I2C driver do not support DM_I2C without OF_CONTROL.
> - Most of the PMIC drivers do not support the I2C DM API.
> - Board detection is done prior DM initialization. Fixed by moving it after
>   DM is initialized. That move breaks the DRA7 platforms (The fixes for
>   that are at the last 5 patches this series)
>
> When all this is taken care of DM_I2C_COMPAT can be removed and DM_I2C
> enabled in the SPL.
>
> This has been tested with the following boards:
> - am437x SK
> - am335x SK
> - am335x beaglebone (both DM and non-DM config)
> - dra76 evm
> - am572 evm
> - k2g evm
>
> The following targets may be impacted by the changes related to
> SPL_OF_CONTROL and SPL_OF_PLATDATA:
> - am3517_evm_defconfig
> - omap3_logic_defconfig
> - chromebit_mickey_defconfig
> - chromebook_jerry_defconfig
> - chromebook_minnie_defconfig
> - evb-rk3399_defconfig
> - rock_defconfig
>
> It would be nice it some of you could try to boot them.
>
>
I applied the entire 19-patch series and it worked for me.  Thanks!

Tested-by Adam Ford <aford173 at gmail.com> #omap3_logic & am3517_evm


adam
> Changes in v3:
> - removed commit introducing dm_i2c_probe_device(). Instead probe the
>   presence of the chip on the I2C bus in i2c_get_chip_for_busnum().
> - fdtdec_resetup() need not call fdtdec_setup() when only a single DTB is
>   used.
> - Add documentation in README-fdt-control explaining why and how to use
>   fdtdec_resetup()
>
> Changes in v2:
> - Add missing commit log to the commit disabling CMD_EEPROM when non-DM API
>   is not available
> - don't use the DT to find the req_seq number if SPL_OF_PLATDATA is used.
>   Instead do it as if SPL_OF_CONTROL is not defined.
> - Also add DM_I2C support to the twl6030 driver
> - remove the remaining non-DM I2C API call for pdu001 board.
> - Fixed warning in power_init_board() for the am43xx ti boards.
>
> Andreas Dannenberg (1):
>   ti: common: board_detect: Allow DM I2C without CONFIG_DM_I2C_COMPAT
>
> Jean-Jacques Hiblot (17):
>   cmd: Kconfig: Do not include EEPROM if DM_I2C is used without
>     DM_I2C_COMPAT
>   dm: i2c: Make i2c_get_chip_for_busnum() fail if the chip is not
>     detected
>   dm: device: Allow using uclass_find_device_by_seq() without OF_CONTROL
>   configs: am335x: am57x: dra7x: Enable CONFIG_SPL_DM_SEQ_ALIAS
>   i2c: omap24xx_i2c: Use platdata to probe the device
>   am335x: Register the I2C controllers if DM_I2C is used.
>   dts: am43x: omap5: Add node for I2C in SPL
>   omap: detect the board after DM is available
>   power: make most tps drivers and the twl4030 driver compatible with
>     DM_I2C
>   configs: am335x_pdu001: remove CONFIG_DM_I2C_COMPAT
>   ti: remove usage of DM_I2C_COMPAT and don't disable DM_I2C in SPL
>   am57xx: remove non-DM I2C code
>   configs: dra7xx-evm: increase the size of the malloc's pool before
>     relocation
>   lib: fdtdec: Add function re-setup the fdt more effeciently
>   drivers: core: Add the option SPL_DM_DEVICE_REMOVE to the Kconfig
>   drivers: core: nullify gd->dm_root after dm_uninit()
>   dra7: Allow selecting a new dtb after board detection.
>
> Vignesh R (1):
>   i2c: omap24xx_i2c: Move away from SoC specific headers for reg offset
>
>  arch/arm/dts/am437x-gp-evm-u-boot.dtsi       |   4 +
>  arch/arm/dts/omap5-u-boot.dtsi               |   4 +
>  arch/arm/include/asm/arch-am33xx/i2c.h       |  47 +--
>  arch/arm/include/asm/arch-omap3/i2c.h        |  47 ---
>  arch/arm/include/asm/arch-omap4/i2c.h        |  45 ---
>  arch/arm/include/asm/arch-omap5/i2c.h        |  45 ---
>  arch/arm/include/asm/omap_i2c.h              |  24 ++
>  arch/arm/mach-keystone/ddr3_spd.c            |   7 +
>  arch/arm/mach-omap2/am33xx/board.c           |  24 +-
>  arch/arm/mach-omap2/am33xx/clk_synthesizer.c |  56 +++-
>  arch/arm/mach-omap2/clocks-common.c          |   2 +
>  arch/arm/mach-omap2/hwinit-common.c          |  23 +-
>  board/eets/pdu001/board.c                    |   1 -
>  board/ti/am335x/board.c                      |  17 +-
>  board/ti/am335x/mux.c                        |  11 +
>  board/ti/am43xx/board.c                      |  46 ++-
>  board/ti/am57xx/board.c                      |  25 +-
>  board/ti/common/board_detect.c               | 110 +++----
>  board/ti/ks2_evm/board_k2g.c                 |  11 +
>  cmd/Kconfig                                  |   1 +
>  configs/am335x_pdu001_defconfig              |   1 +
>  configs/am57xx_evm_defconfig                 |   1 +
>  configs/am57xx_hs_evm_defconfig              |   1 +
>  configs/dra7xx_evm_defconfig                 |   4 +-
>  configs/dra7xx_hs_evm_defconfig              |   1 +
>  configs/omap3_logic_defconfig                |   1 +
>  doc/README.fdt-control                       |  18 ++
>  drivers/core/Kconfig                         |  12 +-
>  drivers/core/device.c                        |  10 +-
>  drivers/core/root.c                          |   1 +
>  drivers/core/uclass.c                        |  24 ++
>  drivers/i2c/i2c-uclass.c                     |  11 +
>  drivers/i2c/omap24xx_i2c.c                   | 467 ++++++++++++++++++---------
>  drivers/power/palmas.c                       |  39 +++
>  drivers/power/pmic/pmic_tps62362.c           |  24 ++
>  drivers/power/pmic/pmic_tps65217.c           |  44 ++-
>  drivers/power/pmic/pmic_tps65218.c           |  85 +++++
>  drivers/power/pmic/pmic_tps65910.c           |  57 +++-
>  drivers/power/twl4030.c                      |  39 +++
>  drivers/power/twl6030.c                      |  39 +++
>  include/asm-generic/global_data.h            |   4 +
>  include/configs/am43xx_evm.h                 |   2 +
>  include/configs/pdu001.h                     |   6 -
>  include/configs/ti_armv7_common.h            |  18 +-
>  include/dm/uclass-internal.h                 |  13 +
>  include/fdtdec.h                             |  21 ++
>  include/palmas.h                             |   5 +
>  include/power/tps65217.h                     |   2 +
>  include/power/tps65910.h                     |   1 +
>  include/twl4030.h                            |   6 +-
>  include/twl6030.h                            |   5 +
>  lib/fdtdec.c                                 |  43 ++-
>  52 files changed, 1083 insertions(+), 472 deletions(-)
>  create mode 100644 arch/arm/include/asm/omap_i2c.h
>
> --
> 2.7.4
>


More information about the U-Boot mailing list