u-boot/drivers
Michal Simek c4bd12a7da i2c: mux: Generate longer i2c mux name
For !DM case busses are listed as
ZynqMP> i2c bus
Bus 0:	zynq_0
Bus 1:	zynq_0->PCA9544A@0x75:0
Bus 2:	zynq_0->PCA9544A@0x75:1
Bus 3:	zynq_0->PCA9544A@0x75:2
Bus 4:	zynq_1
Bus 5:	zynq_1->PCA9548@0x74:0
Bus 6:	zynq_1->PCA9548@0x74:1
Bus 7:	zynq_1->PCA9548@0x74:2
Bus 8:	zynq_1->PCA9548@0x74:3
Bus 9:	zynq_1->PCA9548@0x74:4
Bus 10:	zynq_1->PCA9548@0x75:0
Bus 11:	zynq_1->PCA9548@0x75:1
Bus 12:	zynq_1->PCA9548@0x75:2
Bus 13:	zynq_1->PCA9548@0x75:3
Bus 14:	zynq_1->PCA9548@0x75:4
Bus 15:	zynq_1->PCA9548@0x75:5
Bus 16:	zynq_1->PCA9548@0x75:6
Bus 17:	zynq_1->PCA9548@0x75:7

where is exactly describing i2c bus topology.
By moving to DM case i2c mux buses are using names from DT and because
i2c-muxes describing sub busses with the same names like i2c@0, etc it
is hard to identify which bus is where.
Linux is adding topology information to i2c-mux busses to identify them
better.
This patch is doing the same and composing bus name with topology
information.

When patch is applied with topology information on zcu102-revA.
ZynqMP> i2c bus
Bus 0:	i2c@ff020000
   20: gpio@20, offset len 1, flags 0
   21: gpio@21, offset len 1, flags 0
   75: i2c-mux@75, offset len 1, flags 0
Bus 2:	i2c@ff020000->i2c-mux@75->i2c@0
Bus 3:	i2c@ff020000->i2c-mux@75->i2c@1
Bus 4:	i2c@ff020000->i2c-mux@75->i2c@2
Bus 1:	i2c@ff030000  (active 1)
   74: i2c-mux@74, offset len 1, flags 0
   75: i2c-mux@75, offset len 1, flags 0
Bus 5:	i2c@ff030000->i2c-mux@74->i2c@0  (active 5)
   54: eeprom@54, offset len 1, flags 0
Bus 6:	i2c@ff030000->i2c-mux@74->i2c@1
Bus 7:	i2c@ff030000->i2c-mux@74->i2c@2
Bus 8:	i2c@ff030000->i2c-mux@74->i2c@3
Bus 9:	i2c@ff030000->i2c-mux@74->i2c@4
Bus 10:	i2c@ff030000->i2c-mux@75->i2c@0
Bus 11:	i2c@ff030000->i2c-mux@75->i2c@1
Bus 12:	i2c@ff030000->i2c-mux@75->i2c@2
Bus 13:	i2c@ff030000->i2c-mux@75->i2c@3
Bus 14:	i2c@ff030000->i2c-mux@75->i2c@4
Bus 15:	i2c@ff030000->i2c-mux@75->i2c@5
Bus 16:	i2c@ff030000->i2c-mux@75->i2c@6
Bus 17:	i2c@ff030000->i2c-mux@75->i2c@7

Behavior before the patch is applied.
ZynqMP> i2c bus
Bus 0:	i2c@ff020000
   20: gpio@20, offset len 1, flags 0
   21: gpio@21, offset len 1, flags 0
   75: i2c-mux@75, offset len 1, flags 0
Bus 2:	i2c@0
Bus 3:	i2c@1
Bus 4:	i2c@2
Bus 1:	i2c@ff030000  (active 1)
   74: i2c-mux@74, offset len 1, flags 0
   75: i2c-mux@75, offset len 1, flags 0
Bus 5:	i2c@0  (active 5)
   54: eeprom@54, offset len 1, flags 0
Bus 6:	i2c@1
Bus 7:	i2c@2
Bus 8:	i2c@3
Bus 9:	i2c@4
Bus 10:	i2c@0
Bus 11:	i2c@1
Bus 12:	i2c@2
Bus 13:	i2c@3
Bus 14:	i2c@4
Bus 15:	i2c@5
Bus 16:	i2c@6
Bus 17:	i2c@7

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-11 09:38:23 +01:00
..
adc dm: adc: add uclass's mask and conversion helpers 2018-11-20 12:35:25 -05:00
ata scsi: ceva: add ls2080a soc support 2018-12-06 14:38:03 -08:00
axi drivers: cosmetic: Convert SPDX license tags to Linux Kernel style 2018-10-28 09:26:39 -04:00
bios_emulator bios_emulator: remove assignment without effect 2018-07-23 14:33:21 -04:00
block blk: Increase cache element size 2019-01-15 15:28:53 -05:00
board drivers: cosmetic: Convert SPDX license tags to Linux Kernel style 2018-10-28 09:26:39 -04:00
bootcount bootcount: add a DM RTC backing store for bootcount 2018-12-10 10:04:45 +01:00
clk rockchip: clk: Add mention of four new clocks 2019-02-01 16:59:13 +01:00
core dm: core: Introduce dev_read_alias_highest_id() 2019-02-08 06:25:32 +01:00
cpu cpu: Add a RISC-V CPU driver 2018-12-18 09:56:26 +08:00
crypto SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ddr drivers: ddr: introduce DDR driver for i.MX8M 2019-01-01 14:12:18 +01:00
demo SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfu dfu: mmc: call fs functions instead of run_command 2019-01-30 21:22:53 -05:00
dma dma: add bcm6348-iudma support 2018-12-19 15:23:00 +01:00
fastboot drivers: cosmetic: Convert SPDX license tags to Linux Kernel style 2018-10-28 09:26:39 -04:00
firmware firmware: psci: introduce SPL_ARM_PSCI_FW 2018-12-12 12:14:25 -05:00
fpga fpga: zynqmp: show an error message when FPGA programming fails 2019-01-24 10:03:43 +01:00
gpio rockchip: Implement spl_gpio in the GPIO driver 2019-02-01 16:59:13 +01:00
hwspinlock hwspinlock: add stm32 hardware spinlock support 2018-12-06 23:26:33 -05:00
i2c i2c: mux: Generate longer i2c mux name 2019-02-11 09:38:23 +01:00
input input: i8042: Use remove() instead of exported functions 2018-12-05 06:01:35 -07:00
led dm: led: move default state support in led uclass 2018-08-10 10:27:32 -04:00
mailbox drivers: cosmetic: Convert SPDX license tags to Linux Kernel style 2018-10-28 09:26:39 -04:00
memory SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
misc For 2019.04 2019-01-30 07:22:12 -05:00
mmc Merge branch 'master' of git://git.denx.de/u-boot-sunxi 2019-01-30 12:24:32 -05:00
mtd mtd: spi: Add lightweight SPI flash stack for SPL 2019-02-07 15:33:21 +05:30
net net: Add MSCC Luton networkd driver. 2019-02-01 14:13:36 +01:00
nvme blk: Call part_init() in the post_probe() method 2018-11-14 09:16:27 -08:00
pch SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pci Merge git://git.denx.de/u-boot-marvell 2019-02-05 12:29:59 -05:00
pcmcia SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
phy phy: sun4i-usb: Use CLK and RESET support 2019-01-18 22:19:09 +05:30
pinctrl pinctrl: Kconfig: fix missing include of rockchip/Kconfig 2019-02-01 16:59:14 +01:00
power regulator: pbias: Handle extended drain IO when changing omap36 PBIAS 2019-02-01 14:13:45 -05:00
pwm pwm: sunxi: choose best prescaler to improve PWM resolution 2018-10-24 21:57:16 +05:30
qe drivers: qe: add TFABOOT support 2018-12-06 14:37:51 -08:00
ram rockchip: ram: update license for sdram driver 2019-01-02 22:37:10 +01:00
remoteproc spl: Allow remoteproc drivers to be used within SPL 2018-09-11 08:32:55 -04:00
reset reset: Add Allwinner RESET driver 2019-01-18 22:19:08 +05:30
rtc rtc: m41t62: Convert the RTC driver to support the driver model (DM) 2018-12-03 10:44:10 -05:00
scsi blk: Call part_init() in the post_probe() method 2018-11-14 09:16:27 -08:00
serial serial_arc: Allocate buffer for private data 2019-01-25 08:40:26 +03:00
smem drivers: smem: sandbox 2018-07-19 16:31:38 -04:00
soc SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sound rockchip: Add a sound driver 2019-02-01 16:59:10 +01:00
spi configs: Don't use SPI_FLASH_BAR as default 2019-02-07 15:33:22 +05:30
spmi SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sysreset sandbox: sysreset: Update to support power-on reset 2018-12-05 06:01:34 -07:00
tee tee: change return code for REE FS supplicant cmd 2018-12-15 11:49:19 -05:00
thermal SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
timer timer: Add generic driver for RISC-V privileged architecture defined timer 2018-12-18 09:56:26 +08:00
tpm tpm: Export the open/close functions 2018-11-29 09:30:06 -07:00
usb usb: ether: call _usb_eth_halt() if initialization fails 2019-02-01 09:09:40 -05:00
video video: Armada XP: Move driver to DM_VIDEO 2019-02-05 14:23:21 +01:00
virtio virtio: Add a Sandbox transport driver 2018-11-14 09:16:28 -08:00
w1 w1: Add driver for i.MX bus master controller 2019-01-01 14:12:18 +01:00
w1-eeprom w1-eeprom: Add support for Maxim DS2502 add only memory 2018-11-16 16:51:55 -05:00
watchdog watchdog: armada_37xx: Fix compliance with kernel's driver 2019-01-21 11:39:49 +01:00
Kconfig dm: Add Hardware Spinlock class 2018-12-06 23:26:32 -05:00
Makefile dfu: Make DFU support more SPL friendly 2019-01-26 08:13:55 -05:00