From a558afbed56f4143cd4e97dac068aad88e2886f1 Mon Sep 17 00:00:00 2001 From: Martin Stein Date: Thu, 2 Mar 2017 13:37:00 +0100 Subject: [PATCH] rpi sd_card: move to new Mmio::wait_for Ref #2196 --- repos/os/src/drivers/sd_card/spec/rpi/driver.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/repos/os/src/drivers/sd_card/spec/rpi/driver.h b/repos/os/src/drivers/sd_card/spec/rpi/driver.h index 7a26bdd739..8ea315da07 100644 --- a/repos/os/src/drivers/sd_card/spec/rpi/driver.h +++ b/repos/os/src/drivers/sd_card/spec/rpi/driver.h @@ -162,11 +162,13 @@ class Sd_card::Driver : public Driver_base, bool _poll_and_wait_for(unsigned value) { /* poll for a while */ - if (!wait_for(value, _delayer, 5000, 0)) { + try { wait_for(Attempts(5000), Microseconds(0), _delayer, + typename REG::Equal(value)); } + catch (Polling_timeout) { /* if the value was not reached while polling, start sleeping */ - if (!wait_for(value, _delayer)) { - return false; } + try { wait_for(_delayer, typename REG::Equal(value)); } + catch (Polling_timeout) { return false; } } return true; }