imx:mx6sxsabresd fix pfuz probe failed
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
The PFUZ probe failed with the following msg:
" wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip 0x8 retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip 0x8 retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip 0x8 retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_f is too early to call i2c related setting, because init_func_i2c is called after board_early_init_f being invoked. Thus move setup_i2c into board_init.
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"
--- board/freescale/mx6sxsabresd/mx6sxsabresd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
board/freescale/mx6sxsabresd/mx6sxsabresd.c +4 -1
@@ -243,7 +243,6 @@ int board_phy_config(struct phy_device *phydev)int board_early_init_f (void ) {setup_iomux_uart (); -setup_i2c (1 ,CONFIG_SYS_I2C_SPEED ,0x7f , &i2c_pad_info1);/* Enable PERI_3V3, which is used by SD2, ENET, LVDS, BT */ imx_iomux_v3_setup_multiple_pads(peri_3v3_pads,
@@ -277,6 +276,10 @@ int board_init(void)/* Address of boot parameters */ gd->bd->bi_boot_params =PHYS_SDRAM +0x100 ; +#ifdef CONFIG_SYS_I2C_MXC +setup_i2c (0 ,CONFIG_SYS_I2C_SPEED ,0x7f , &i2c_pad_info1); +#endif +return 0 ; }
Signature · 1 line
1.8.4
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
Quoted 14 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.
Quoted 6 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>
Maybe this is a difference between RevA versus RevB board?
I have a RevA and PMIC works fine here:
U-Boot 2014.10-rc2-17115-g718b923 (Sep 30 2014 - 14:03:24)
CPU: Freescale i.MX6SX rev1.0 at 792 MHz Reset cause: WDOG Board: MX6SX SABRE SDB I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0 In: serial Out: serial Err: serial PMIC: PFUZE100 ID=0x10 Net: FEC [PRIME] Hit any key to stop autoboot: 0
=>
=> pmic PFUZE100 dump
PMIC: PFUZE100
0x00: 00000010 00000000 00000000 00000021 00000000 00000001 0000003f 00000001 0x08: 00000000 0000007f 00000000 00000000 00000000 00000000 00000000 00000081 0x10: 00000000 00000000 0000003f 00000000 00000000 00000000 00000000 00000000 0x18: 00000000 00000000 00000000 00000010 00000000 00000000 00000000 00000000 0x20: 0000002b 0000001b 0000002b 00000008 00000044 00000000 00000000 00000000 0x28: 00000000 00000000 00000000 00000000 00000000 00000000 0000002b 0000001b 0x30: 0000002b 00000008 00000044 00000000 00000000 00000072 00000072 00000072 0x38: 00000008 00000054 00000000 00000000 00000026 00000026 00000026 00000008 0x40: 00000064 00000000 00000000 00000026 00000026 00000026 00000008 00000064 0x48: 00000000 00000000 00000038 00000038 00000038 00000008 00000074 00000000 0x50: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0x58: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0x60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0x68: 00000000 00000000 00000010 00000006 00000018 0000000e 0000001a 00000010 0x70: 0000001f 0000001c 00000000 00000000 00000000 00000000 00000000 00000000 0x78: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 =>
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
Quoted 15 lines · Fabio Estevam
Quoted 14 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.
Quoted 8 lines
Quoted 6 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>Maybe this is a difference between RevA versus RevB board?
I checked SCH-27962 REV A and SCH-27962 REV B. There is no different to I2C part. PMIC is connected to the first I2C bus. You can check page 22.
Quoted 2 lines
I have a RevA and PMIC works fine here:
I tried on RevA and RevB. Both can not work. The following is the msg on RevA:
U-Boot 2014.10-00435-g571bdf1 (Nov 01 2014 - 07:39:47)
CPU: Freescale i.MX6SX rev1.0 at 792 MHz Reset cause: POR Board: MX6SX SABRE SDB I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0
*** Warning - bad CRC, using default environment
In: serial Out: serial Err: serial wait_for_sr_state: failed sr=81 cr=a0 state=2020 i2c_init_transfer: failed for chip 0x8 retry=0 wait_for_sr_state: failed sr=81 cr=a0 state=2020 i2c_init_transfer: failed for chip 0x8 retry=1 wait_for_sr_state: failed sr=81 cr=a0 state=2020 i2c_init_transfer: failed for chip 0x8 retry=2 i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 Net: FEC [PRIME] Hit any key to stop autoboot: 0
After applying this patch, all is fine. I am not sure whether your board has been reworked. But PMIC is connected to the first I2C bus, thus I think setup_i2c(0,xxxx) is correct, but not setup_i2c(1,xxx). And I think it is too early to call setup_i2c in board_early_init_f.
Quoted 38 lines
U-Boot 2014.10-rc2-17115-g718b923 (Sep 30 2014 - 14:03:24)
CPU: Freescale i.MX6SX rev1.0 at 792 MHz Reset cause: WDOG Board: MX6SX SABRE SDB I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0 In: serial Out: serial Err: serial PMIC: PFUZE100 ID=0x10 Net: FEC [PRIME] Hit any key to stop autoboot: 0=>
=> pmic PFUZE100 dump
PMIC: PFUZE100
0x00: 00000010 00000000 00000000 00000021 00000000 000000010000003f000000010x08: 000000000000007f00000000 00000000 00000000 00000000 00000000 000000810x10: 00000000 000000000000003f00000000 00000000 00000000 00000000 000000000x18: 00000000 00000000 00000000 00000010 00000000 00000000 00000000 000000000x20:0000002b0000001b0000002b00000008 00000044 00000000 00000000 000000000x28: 00000000 00000000 00000000 00000000 00000000 000000000000002b0000001b0x30:0000002b00000008 00000044 00000000 00000000 00000072 00000072 000000720x38: 00000008 00000054 00000000 00000000 00000026 00000026 00000026 000000080x40: 00000064 00000000 00000000 00000026 00000026 00000026 00000008 000000640x48: 00000000 00000000 00000038 00000038 00000038 00000008 00000074 000000000x50: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000000000x58: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000000000x60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000000000x68: 00000000 00000000 00000010 00000006 000000180000000e0000001a000000100x70:0000001f0000001c00000000 00000000 00000000 00000000 00000000 000000000x78: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 =>
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
Quoted 20 lines · Peng Fan
Quoted 17 lines · Fabio Estevam
Quoted 16 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>Maybe this is a difference between RevA versus RevB board?
I checked SCH-27962 REV A and SCH-27962 REV B. There is no different to I2C part. PMIC is connected to the first I2C bus. You can check page 22.
You are right. I was surprised that PMIC was working originally. I tested your change and it also works fine here.
Thanks!
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
In reply to Peng FanQuoted 14 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.
Quoted 6 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
Hi Stefano,
Would you please help reviewing this patch?
Quoted 15 lines · Fabio Estevam
Quoted 14 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.
Quoted 9 lines
Quoted 6 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>Acked-by Fabio Estevam <[email protected]>
Regards,
Peng.
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
Hi Peng,
Quoted 8 lines · Peng Fan
Quoted 8 lines
Quoted 6 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>Acked-by Fabio Estevam <[email protected]>
Patch is ok for me, too.
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH 1/1 imx:mx6sxsabresd fix pfuz probe failed
In reply to Peng FanQuoted 14 lines · Peng Fan
The PFUZ probe failed with the following msg:
"wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=0
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=1
wait_for_sr_state: failed sr=81 cr=a0 state=2020
i2c_init_transfer: failed for chip0x8retry=2
i2c_init_transfer: give up i2c_regs=021a0000 Can't find PMIC:PFUZE100 "
board_early_init_fis too early to call i2c related setting, becauseinit_func_i2cis called afterboard_early_init_fbeing invoked. Thus movesetup_i2cintoboard_init.
Quoted 7 lines
Also PFUZ is connected to I2C bus 0, so change "1" -> "0".
Using this patch PFUZ can be correctly probed:
"PMIC: PFUZE100 ID=0x11"Signed-off-by Peng Fan <[email protected]>---
Applied to u-boot-imx, thanks !
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================