Hi Stefan,

On Tue, Apr 09 2019, Stefan Roese wrote:
> On 07.04.19 11:30, Baruch Siach wrote:
>> The mvebu specific debug register is not accessible when the bind code
>> runs in SPL. Skip it.
>
> The other I2C registers can be accessed but only the debug register
> not? Do you know, why this is the case?

Access to other registers might hang as well, I have not tested. The
debug register is the only one that the .bind callback touches. .bind
callbacks are called before board_early_init_f() that configures the
MPP.

baruch

>> Signed-off-by: Baruch Siach <[email protected]>
>> ---
>>   drivers/i2c/mvtwsi.c | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/i2c/mvtwsi.c b/drivers/i2c/mvtwsi.c
>> index 74ac0a4aa789..05560e112729 100644
>> --- a/drivers/i2c/mvtwsi.c
>> +++ b/drivers/i2c/mvtwsi.c
>> @@ -801,6 +801,10 @@ static int mvtwsi_i2c_ofdata_to_platdata(struct udevice 
>> *bus)
>>     static void twsi_disable_i2c_slave(struct mvtwsi_registers *twsi)
>>   {
>> +    /* The debug register is not accessible in early boot */
>> +    if (IS_ENABLED(CONFIG_SPL_BUILD))
>> +            return;
>> +
>>      clrbits_le32(&twsi->debug, BIT(18));
>>   }

--
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - [email protected] - tel: +972.52.368.4656, http://www.tkos.co.il -
_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to