diff options
author | Lars Poeschel <poeschel@lemonage.de> | 2020-11-03 12:58:25 +0300 |
---|---|---|
committer | Miguel Ojeda <ojeda@kernel.org> | 2020-11-04 13:04:04 +0300 |
commit | 40c2b72e4b11f0a80dff19b539fccf36472dc417 (patch) | |
tree | 50951cf08d1a3acf911a47e387aab795d406095d /drivers/auxdisplay/charlcd.c | |
parent | 6e49eea35886c7f7173796d6a646c8c2c0f6149d (diff) | |
download | linux-40c2b72e4b11f0a80dff19b539fccf36472dc417.tar.xz |
auxdisplay: Change gotoxy calling interface
Change the calling interface for gotoxy from supplying the x and y
coordinates in the charlcd struct to explicitly supplying x and y in
the function arguments. This is more intuitive and allows for moving
the cursor to positions independent from the position saved in the
charlcd struct.
Reviewed-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Lars Poeschel <poeschel@lemonage.de>
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Diffstat (limited to 'drivers/auxdisplay/charlcd.c')
-rw-r--r-- | drivers/auxdisplay/charlcd.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/auxdisplay/charlcd.c b/drivers/auxdisplay/charlcd.c index 59f21401d6a9..ef10b5ca0e16 100644 --- a/drivers/auxdisplay/charlcd.c +++ b/drivers/auxdisplay/charlcd.c @@ -119,7 +119,7 @@ static void charlcd_print(struct charlcd *lcd, char c) /* prevents the cursor from wrapping onto the next line */ if (lcd->addr.x == lcd->width) - lcd->ops->gotoxy(lcd); + lcd->ops->gotoxy(lcd, lcd->addr.x - 1, lcd->addr.y); } static void charlcd_clear_display(struct charlcd *lcd) @@ -325,7 +325,7 @@ static inline int handle_lcd_special_code(struct charlcd *lcd) /* restore cursor position */ lcd->addr.x = xs; lcd->addr.y = ys; - lcd->ops->gotoxy(lcd); + lcd->ops->gotoxy(lcd, lcd->addr.x, lcd->addr.y); processed = 1; break; } @@ -349,7 +349,7 @@ static inline int handle_lcd_special_code(struct charlcd *lcd) /* If the command is valid, move to the new address */ if (parse_xy(esc, &lcd->addr.x, &lcd->addr.y)) - lcd->ops->gotoxy(lcd); + lcd->ops->gotoxy(lcd, lcd->addr.x, lcd->addr.y); /* Regardless of its validity, mark as processed */ processed = 1; @@ -407,12 +407,12 @@ static void charlcd_write_char(struct charlcd *lcd, char c) lcd->addr.x = 0; lcd->addr.y = (lcd->addr.y + 1) % lcd->height; - lcd->ops->gotoxy(lcd); + lcd->ops->gotoxy(lcd, lcd->addr.x, lcd->addr.y); break; case '\r': /* go to the beginning of the same line */ lcd->addr.x = 0; - lcd->ops->gotoxy(lcd); + lcd->ops->gotoxy(lcd, lcd->addr.x, lcd->addr.y); break; case '\t': /* print a space instead of the tab */ |