Commit 9718756f authored by Kees Cook's avatar Kees Cook Committed by Greg Kroah-Hartman

usb: phy: Convert timers to use timer_setup()

In preparation for unconditionally passing the struct timer_list pointer to
all timer callbacks, switch to using the new timer_setup() and from_timer()
to pass the timer pointer explicitly.

Cc: Felipe Balbi <balbi@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-usb@vger.kernel.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 29bce577
...@@ -87,9 +87,10 @@ static void mv_otg_run_state_machine(struct mv_otg *mvotg, ...@@ -87,9 +87,10 @@ static void mv_otg_run_state_machine(struct mv_otg *mvotg,
queue_delayed_work(mvotg->qwork, &mvotg->work, delay); queue_delayed_work(mvotg->qwork, &mvotg->work, delay);
} }
static void mv_otg_timer_await_bcon(unsigned long data) static void mv_otg_timer_await_bcon(struct timer_list *t)
{ {
struct mv_otg *mvotg = (struct mv_otg *) data; struct mv_otg *mvotg = from_timer(mvotg, t,
otg_ctrl.timer[A_WAIT_BCON_TIMER]);
mvotg->otg_ctrl.a_wait_bcon_timeout = 1; mvotg->otg_ctrl.a_wait_bcon_timeout = 1;
...@@ -117,8 +118,7 @@ static int mv_otg_cancel_timer(struct mv_otg *mvotg, unsigned int id) ...@@ -117,8 +118,7 @@ static int mv_otg_cancel_timer(struct mv_otg *mvotg, unsigned int id)
} }
static int mv_otg_set_timer(struct mv_otg *mvotg, unsigned int id, static int mv_otg_set_timer(struct mv_otg *mvotg, unsigned int id,
unsigned long interval, unsigned long interval)
void (*callback) (unsigned long))
{ {
struct timer_list *timer; struct timer_list *timer;
...@@ -131,9 +131,6 @@ static int mv_otg_set_timer(struct mv_otg *mvotg, unsigned int id, ...@@ -131,9 +131,6 @@ static int mv_otg_set_timer(struct mv_otg *mvotg, unsigned int id,
return -EBUSY; return -EBUSY;
} }
init_timer(timer);
timer->data = (unsigned long) mvotg;
timer->function = callback;
timer->expires = jiffies + interval; timer->expires = jiffies + interval;
add_timer(timer); add_timer(timer);
...@@ -459,8 +456,7 @@ static void mv_otg_work(struct work_struct *work) ...@@ -459,8 +456,7 @@ static void mv_otg_work(struct work_struct *work)
if (old_state != OTG_STATE_A_HOST) if (old_state != OTG_STATE_A_HOST)
mv_otg_start_host(mvotg, 1); mv_otg_start_host(mvotg, 1);
mv_otg_set_timer(mvotg, A_WAIT_BCON_TIMER, mv_otg_set_timer(mvotg, A_WAIT_BCON_TIMER,
T_A_WAIT_BCON, T_A_WAIT_BCON);
mv_otg_timer_await_bcon);
/* /*
* Now, we directly enter A_HOST. So set b_conn = 1 * Now, we directly enter A_HOST. So set b_conn = 1
* here. In fact, it need host driver to notify us. * here. In fact, it need host driver to notify us.
...@@ -722,7 +718,8 @@ static int mv_otg_probe(struct platform_device *pdev) ...@@ -722,7 +718,8 @@ static int mv_otg_probe(struct platform_device *pdev)
otg->set_vbus = mv_otg_set_vbus; otg->set_vbus = mv_otg_set_vbus;
for (i = 0; i < OTG_TIMER_NUM; i++) for (i = 0; i < OTG_TIMER_NUM; i++)
init_timer(&mvotg->otg_ctrl.timer[i]); timer_setup(&mvotg->otg_ctrl.timer[i],
mv_otg_timer_await_bcon, 0);
r = platform_get_resource_byname(mvotg->pdev, r = platform_get_resource_byname(mvotg->pdev,
IORESOURCE_MEM, "phyregs"); IORESOURCE_MEM, "phyregs");
......
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