.. | .. |
---|
1728 | 1728 | return; |
---|
1729 | 1729 | |
---|
1730 | 1730 | if (host->variant->busy_timeout && mmc->actual_clock) |
---|
1731 | | - max_busy_timeout = ~0UL / (mmc->actual_clock / MSEC_PER_SEC); |
---|
| 1731 | + max_busy_timeout = U32_MAX / DIV_ROUND_UP(mmc->actual_clock, |
---|
| 1732 | + MSEC_PER_SEC); |
---|
1732 | 1733 | |
---|
1733 | 1734 | mmc->max_busy_timeout = max_busy_timeout; |
---|
1734 | 1735 | } |
---|
.. | .. |
---|
2191 | 2192 | pm_runtime_set_autosuspend_delay(&dev->dev, 50); |
---|
2192 | 2193 | pm_runtime_use_autosuspend(&dev->dev); |
---|
2193 | 2194 | |
---|
2194 | | - mmc_add_host(mmc); |
---|
| 2195 | + ret = mmc_add_host(mmc); |
---|
| 2196 | + if (ret) |
---|
| 2197 | + goto clk_disable; |
---|
2195 | 2198 | |
---|
2196 | 2199 | pm_runtime_put(&dev->dev); |
---|
2197 | 2200 | return 0; |
---|
.. | .. |
---|
2383 | 2386 | .drv = { |
---|
2384 | 2387 | .name = DRIVER_NAME, |
---|
2385 | 2388 | .pm = &mmci_dev_pm_ops, |
---|
| 2389 | + .probe_type = PROBE_PREFER_ASYNCHRONOUS, |
---|
2386 | 2390 | }, |
---|
2387 | 2391 | .probe = mmci_probe, |
---|
2388 | 2392 | .remove = mmci_remove, |
---|