Commit 607a6301 authored by Kees Cook's avatar Kees Cook

auxdisplay: 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: Paul Burton <paul.burton@imgtec.com>
Cc: Miguel Ojeda Sandonis <miguel.ojeda.sandonis@gmail.com>
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Reviewed-by: default avatarPaul Burton <paul.burton@mips.com>
Tested-by: Paul Burton <paul.burton@mips.com> # for img-ascii-lcd
parent db275f2a
...@@ -229,9 +229,9 @@ MODULE_DEVICE_TABLE(of, img_ascii_lcd_matches); ...@@ -229,9 +229,9 @@ MODULE_DEVICE_TABLE(of, img_ascii_lcd_matches);
* Scroll the current message along the LCD by one character, rearming the * Scroll the current message along the LCD by one character, rearming the
* timer if required. * timer if required.
*/ */
static void img_ascii_lcd_scroll(unsigned long arg) static void img_ascii_lcd_scroll(struct timer_list *t)
{ {
struct img_ascii_lcd_ctx *ctx = (struct img_ascii_lcd_ctx *)arg; struct img_ascii_lcd_ctx *ctx = from_timer(ctx, t, timer);
unsigned int i, ch = ctx->scroll_pos; unsigned int i, ch = ctx->scroll_pos;
unsigned int num_chars = ctx->cfg->num_chars; unsigned int num_chars = ctx->cfg->num_chars;
...@@ -299,7 +299,7 @@ static int img_ascii_lcd_display(struct img_ascii_lcd_ctx *ctx, ...@@ -299,7 +299,7 @@ static int img_ascii_lcd_display(struct img_ascii_lcd_ctx *ctx,
ctx->scroll_pos = 0; ctx->scroll_pos = 0;
/* update the LCD */ /* update the LCD */
img_ascii_lcd_scroll((unsigned long)ctx); img_ascii_lcd_scroll(&ctx->timer);
return 0; return 0;
} }
...@@ -395,9 +395,7 @@ static int img_ascii_lcd_probe(struct platform_device *pdev) ...@@ -395,9 +395,7 @@ static int img_ascii_lcd_probe(struct platform_device *pdev)
ctx->scroll_rate = HZ / 2; ctx->scroll_rate = HZ / 2;
/* initialise a timer for scrolling the message */ /* initialise a timer for scrolling the message */
init_timer(&ctx->timer); timer_setup(&ctx->timer, img_ascii_lcd_scroll, 0);
ctx->timer.function = img_ascii_lcd_scroll;
ctx->timer.data = (unsigned long)ctx;
platform_set_drvdata(pdev, ctx); platform_set_drvdata(pdev, ctx);
......
...@@ -1396,7 +1396,7 @@ static void panel_process_inputs(void) ...@@ -1396,7 +1396,7 @@ static void panel_process_inputs(void)
} }
} }
static void panel_scan_timer(void) static void panel_scan_timer(struct timer_list *unused)
{ {
if (keypad.enabled && keypad_initialized) { if (keypad.enabled && keypad_initialized) {
if (spin_trylock_irq(&pprt_lock)) { if (spin_trylock_irq(&pprt_lock)) {
...@@ -1421,7 +1421,7 @@ static void init_scan_timer(void) ...@@ -1421,7 +1421,7 @@ static void init_scan_timer(void)
if (scan_timer.function) if (scan_timer.function)
return; /* already started */ return; /* already started */
setup_timer(&scan_timer, (void *)&panel_scan_timer, 0); timer_setup(&scan_timer, panel_scan_timer, 0);
scan_timer.expires = jiffies + INPUT_POLL_TIME; scan_timer.expires = jiffies + INPUT_POLL_TIME;
add_timer(&scan_timer); add_timer(&scan_timer);
} }
......
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