Hi Ranjan!
Since this patch is a candidate for stable it should be as simple as possible. I don't understand all the complexity introduced to accommodate the new retry_count argument.
static inline u32 -_base_readl_aero(const volatile void __iomem *addr) +_base_readl_aero(const volatile void __iomem *addr, u8 retry_count) { u32 i = 0, ret_val; do { ret_val = readl(addr); i++;
- } while (ret_val == 0 && i < 3);
- } while (ret_val == 0 && i < retry_count);
_base_readl_aero() is going to return as soon as the register is non-zero. Why is it important that some register reads are only retried 3 times instead of 30? Why can't you just bump the "3" above to "30" and make it a one line change?