mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-29 08:01:08 +00:00
i2c: designware_i2c: Do more in the probe() method
Move some of the code currently in the ofdata_to_platdata() method to probe() so that it is not executed when generating ACPI tables. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
23ad52ebb1
commit
2034f6c27f
1 changed files with 8 additions and 8 deletions
|
@ -704,6 +704,7 @@ static int designware_i2c_probe_chip(struct udevice *bus, uint chip_addr,
|
|||
int designware_i2c_ofdata_to_platdata(struct udevice *bus)
|
||||
{
|
||||
struct dw_i2c *priv = dev_get_priv(bus);
|
||||
int ret;
|
||||
|
||||
if (!priv->regs)
|
||||
priv->regs = (struct i2c_regs *)devfdt_get_addr_ptr(bus);
|
||||
|
@ -711,14 +712,6 @@ int designware_i2c_ofdata_to_platdata(struct udevice *bus)
|
|||
dev_read_u32(bus, "i2c-scl-falling-time-ns", &priv->scl_fall_time_ns);
|
||||
dev_read_u32(bus, "i2c-sda-hold-time-ns", &priv->sda_hold_time_ns);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int designware_i2c_probe(struct udevice *bus)
|
||||
{
|
||||
struct dw_i2c *priv = dev_get_priv(bus);
|
||||
int ret;
|
||||
|
||||
ret = reset_get_bulk(bus, &priv->resets);
|
||||
if (ret)
|
||||
dev_warn(bus, "Can't get reset: %d\n", ret);
|
||||
|
@ -738,6 +731,13 @@ int designware_i2c_probe(struct udevice *bus)
|
|||
}
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int designware_i2c_probe(struct udevice *bus)
|
||||
{
|
||||
struct dw_i2c *priv = dev_get_priv(bus);
|
||||
|
||||
return __dw_i2c_init(priv->regs, 0, 0);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue