i2c: designware: fix poll-after-enable regression
Not all revisions of DW I2C controller implement the enable status register. On platforms where that's the case (e.g. BG2CD and SPEAr ARM SoCs), waiting for enable will time out as reading the unimplemented register yields zero. It was observed that reading the IC_ENABLE_STATUS register once suffices to avoid getting it stuck on Bay Trail hardware, so replace polling with one dummy read of the register. Fixes: fba4adbb ("i2c: designware: must wait for enable") Signed-off-by: NAlexander Monakov <amonakov@ispras.ru> Tested-by: NBen Gardner <gardner.ben@gmail.com> Acked-by: NJarkko Nikula <jarkko.nikula@linux.intel.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de> Cc: stable@kernel.org
Showing
想要评论请 注册 或 登录