Commit 6e053d6c authored by Inaky Perez-Gonzalez's avatar Inaky Perez-Gonzalez

wimax/i2400m: don't reset device when bootrom init retries are exceeded

When i2400m_bootrom_init() fails to put the device into a state of
being ready to accept firmware, the driver was currently trying to
reset it if it failed to do so. This is not too useful; as part of
trying to put the device in the right state a few resets have already
been tried.

At this point, things are probably fried out and an extra reset might
do more harm than good (for example causing reseting of other
functions in the same composite device).

So it is left up to the callers to determine the error path to take
(at the end this is always i2400m_setup(), who depending on how many
retries are left, might give up on the device).

From a fix by Cindy H. Kao.
Signed-off-by: default avatarInaky Perez-Gonzalez <inaky@linux.intel.com>
parent 1c0b2dd7
...@@ -696,8 +696,7 @@ int i2400m_bootrom_init(struct i2400m *i2400m, enum i2400m_bri flags) ...@@ -696,8 +696,7 @@ int i2400m_bootrom_init(struct i2400m *i2400m, enum i2400m_bri flags)
return result; return result;
error_timeout: error_timeout:
dev_err(dev, "Timed out waiting for reboot ack, resetting\n"); dev_err(dev, "Timed out waiting for reboot ack\n");
i2400m->bus_reset(i2400m, I2400M_RT_BUS);
result = -ETIMEDOUT; result = -ETIMEDOUT;
goto exit_timeout; goto exit_timeout;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment