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: Kees Cook <keescook@chromium.org>
Reviewed-by: Paul Burton <paul.burton@mips.com>
Tested-by: Paul Burton <paul.burton@mips.com> # for img-ascii-lcd
This commit is contained in:
Kees Cook
2017-10-19 14:08:22 -07:00
parent db275f2a02
commit 607a630107
2 changed files with 6 additions and 8 deletions

View File

@@ -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,
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)
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);

View File

@@ -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)
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);
} }