From: Jiri Slaby <jslaby@suse.cz>
To: gregkh@linuxfoundation.org
Cc: linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
Jiri Slaby <jslaby@suse.cz>
Subject: [PATCH 05/70] mxser: cleanup Gpci_uart_info struct
Date: Fri, 18 Jun 2021 08:14:11 +0200 [thread overview]
Message-ID: <20210618061516.662-6-jslaby@suse.cz> (raw)
In-Reply-To: <20210618061516.662-1-jslaby@suse.cz>
The Gpci_uart_info structure contains up to tripled information and
chose weird types for the members. Deduplicate the members and choose
proper types for the data -- everything can be u8 except baud rate.
There, we use speed_t, which is used in this context.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
drivers/tty/mxser.c | 42 ++++++++++++++++++------------------------
1 file changed, 18 insertions(+), 24 deletions(-)
diff --git a/drivers/tty/mxser.c b/drivers/tty/mxser.c
index 0c779559f978..3b3f0da9ea64 100644
--- a/drivers/tty/mxser.c
+++ b/drivers/tty/mxser.c
@@ -200,18 +200,15 @@
#define MXSER_HIGHBAUD 1
static const struct {
- int type;
- int tx_fifo;
- int rx_fifo;
- int xmit_fifo_size;
- int rx_high_water;
- int rx_trigger;
- int rx_low_water;
- long max_baud;
+ u8 type;
+ u8 fifo_size;
+ u8 rx_high_water;
+ u8 rx_low_water;
+ speed_t max_baud;
} Gpci_uart_info[] = {
- {MOXA_OTHER_UART, 16, 16, 16, 14, 14, 1, 921600L},
- {MOXA_MUST_MU150_HWID, 64, 64, 64, 48, 48, 16, 230400L},
- {MOXA_MUST_MU860_HWID, 128, 128, 128, 96, 96, 32, 921600L}
+ { MOXA_OTHER_UART, 16, 14, 1, 921600 },
+ { MOXA_MUST_MU150_HWID, 64, 48, 16, 230400 },
+ { MOXA_MUST_MU860_HWID, 128, 96, 32, 921600 }
};
#define UART_INFO_NUM ARRAY_SIZE(Gpci_uart_info)
@@ -331,11 +328,10 @@ struct mxser_port {
unsigned long ioaddr;
unsigned long opmode_ioaddr;
- int max_baud;
+ speed_t max_baud;
- int rx_high_water;
- int rx_trigger; /* Rx fifo trigger level */
- int rx_low_water;
+ u8 rx_high_water;
+ u8 rx_low_water;
int baud_base; /* max. speed */
int type; /* UART type */
@@ -354,7 +350,7 @@ struct mxser_port {
int read_status_mask;
int ignore_status_mask;
- unsigned int xmit_fifo_size;
+ u8 xmit_fifo_size;
int xmit_head;
int xmit_tail;
int xmit_cnt;
@@ -470,9 +466,9 @@ static void mxser_set_must_fifo_value(struct mxser_port *info)
efr |= MOXA_MUST_EFR_BANK1;
outb(efr, info->ioaddr + MOXA_MUST_EFR_REGISTER);
- outb((u8)info->rx_high_water, info->ioaddr + MOXA_MUST_RBRTH_REGISTER);
- outb((u8)info->rx_trigger, info->ioaddr + MOXA_MUST_RBRTI_REGISTER);
- outb((u8)info->rx_low_water, info->ioaddr + MOXA_MUST_RBRTL_REGISTER);
+ outb(info->rx_high_water, info->ioaddr + MOXA_MUST_RBRTH_REGISTER);
+ outb(info->rx_high_water, info->ioaddr + MOXA_MUST_RBRTI_REGISTER);
+ outb(info->rx_low_water, info->ioaddr + MOXA_MUST_RBRTL_REGISTER);
outb(oldlcr, info->ioaddr + UART_LCR);
}
@@ -615,17 +611,15 @@ static void process_txrx_fifo(struct mxser_port *info)
int i;
if ((info->type == PORT_16450) || (info->type == PORT_8250)) {
- info->rx_trigger = 1;
info->rx_high_water = 1;
info->rx_low_water = 1;
info->xmit_fifo_size = 1;
} else
for (i = 0; i < UART_INFO_NUM; i++)
if (info->board->chip_flag == Gpci_uart_info[i].type) {
- info->rx_trigger = Gpci_uart_info[i].rx_trigger;
info->rx_low_water = Gpci_uart_info[i].rx_low_water;
info->rx_high_water = Gpci_uart_info[i].rx_high_water;
- info->xmit_fifo_size = Gpci_uart_info[i].xmit_fifo_size;
+ info->xmit_fifo_size = Gpci_uart_info[i].fifo_size;
break;
}
}
@@ -667,7 +661,7 @@ static void mxser_dtr_rts(struct tty_port *port, int on)
spin_unlock_irqrestore(&mp->slock, flags);
}
-static int mxser_set_baud(struct tty_struct *tty, long newspd)
+static int mxser_set_baud(struct tty_struct *tty, speed_t newspd)
{
struct mxser_port *info = tty->driver_data;
unsigned int quot = 0, baud;
@@ -793,7 +787,7 @@ static void mxser_change_speed(struct tty_struct *tty)
fcr |= MOXA_MUST_FCR_GDA_MODE_ENABLE;
mxser_set_must_fifo_value(info);
} else {
- switch (info->rx_trigger) {
+ switch (info->rx_high_water) {
case 1:
fcr |= UART_FCR_TRIGGER_1;
break;
--
2.32.0
next prev parent reply other threads:[~2021-06-18 6:15 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-18 6:14 [PATCH 00/69] mxser: cleanup Jiri Slaby
2021-06-18 6:14 ` [PATCH 01/70] mxser: drop ISA support Jiri Slaby
2021-06-18 6:14 ` [PATCH 02/70] mxser: renumber mxser_cards Jiri Slaby
2021-06-18 6:14 ` [PATCH 03/70] mxser: remove info printout from init Jiri Slaby
2021-06-18 6:14 ` [PATCH 04/70] mxser: integrate mxser.h into .c Jiri Slaby
2021-06-18 6:14 ` Jiri Slaby [this message]
2021-06-18 6:14 ` [PATCH 06/70] mxser: rename CheckIsMoxaMust to mxser_get_must_hwid Jiri Slaby
2021-06-18 6:14 ` [PATCH 07/70] mxser: rename mxser_board::chip_flag to must_hwid Jiri Slaby
2021-06-18 6:14 ` [PATCH 08/70] mxser: introduce enum mxser_must_hwid Jiri Slaby
2021-06-18 6:14 ` [PATCH 09/70] mxser: drop constant board::uart_type Jiri Slaby
2021-06-18 6:14 ` [PATCH 10/70] mxser: move max_baud from port to board Jiri Slaby
2021-06-18 6:14 ` [PATCH 11/70] mxser: remove nonsense from ISR Jiri Slaby
2021-06-18 6:14 ` [PATCH 12/70] mxser: cleanup LSR handling in mxser_receive_chars Jiri Slaby
2021-06-18 6:14 ` [PATCH 13/70] mxser: extract port ISR Jiri Slaby
2021-06-18 6:14 ` [PATCH 14/70] mxser: simplify mxser_interrupt and drop mxser_board::vector_mask Jiri Slaby
2021-06-18 6:14 ` [PATCH 15/70] mxser: extract mxser_receive_chars_new Jiri Slaby
2021-06-18 6:14 ` [PATCH 16/70] mxser: extract mxser_receive_chars_old Jiri Slaby
2021-06-18 6:14 ` [PATCH 17/70] mxser: remove else from LSR bits checks Jiri Slaby
2021-06-18 6:14 ` [PATCH 18/70] mxser: correct types for uart variables Jiri Slaby
2021-06-18 6:14 ` [PATCH 19/70] mxser: make xmit ring buffer variables unsigned Jiri Slaby
2021-06-18 6:14 ` [PATCH 20/70] mxser: drop UART_MCR_AFE and UART_LSR_SPECIAL defines Jiri Slaby
2021-06-18 6:14 ` [PATCH 21/70] mxser: drop unused MOXA_DIAGNOSE macro Jiri Slaby
2021-06-18 6:14 ` [PATCH 22/70] mxser: remove MOXA_GET_MAJOR deprecated ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 23/70] mxser: remove MOXA_SET_BAUD_METHOD ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 24/70] mxser: remove MOXA_ASPP_MON and friends Jiri Slaby
2021-06-18 6:14 ` [PATCH 25/70] mxser: remove MOXA_ASPP_LSTATUS ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 26/70] mxser: remove MOXA_CHKPORTENABLE ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 27/70] mxser: remove MOXA_GETDATACOUNT ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 28/70] mxser: remove MOXA_GETMSTATUS ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 29/70] mxser: remove MOXA_ASPP_OQUEUE ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 30/70] mxser: remove MOXA_HighSpeedOn ioctl Jiri Slaby
2021-06-18 6:14 ` [PATCH 31/70] mxser: remove cnt from mxser_receive_chars Jiri Slaby
2021-06-18 6:14 ` [PATCH 32/70] mxser: don't allocate MXSER_PORTS + 1 Jiri Slaby
2021-06-18 6:14 ` [PATCH 33/70] mxser: drop unused mxser_port::normal_termios Jiri Slaby
2021-06-18 6:14 ` [PATCH 34/70] mxser: remove unused mxser_port::stop_rx Jiri Slaby
2021-06-18 6:14 ` [PATCH 35/70] mxser: drop mxser_port::baud_base Jiri Slaby
2021-06-18 6:14 ` [PATCH 36/70] mxser: drop mxser_port::custom_divisor Jiri Slaby
2021-06-18 6:14 ` [PATCH 37/70] mxser: cleanup mxser_change_speed Jiri Slaby
2021-06-18 6:14 ` [PATCH 38/70] mxser: extract mxser_ioctl_op_mode Jiri Slaby
2021-06-18 6:14 ` [PATCH 39/70] mxser: simplify mxser_ioctl_op_mode Jiri Slaby
2021-06-18 6:14 ` [PATCH 40/70] mxser: dedup mxser_must_set_enhance_mode Jiri Slaby
2021-06-18 6:14 ` [PATCH 41/70] mxser: introduce mxser_must_select_bank and use it Jiri Slaby
2021-06-18 6:14 ` [PATCH 42/70] mxser: clean up the rest of MUST helpers Jiri Slaby
2021-06-18 6:14 ` [PATCH 43/70] mxser: move board init into mxser_initbrd Jiri Slaby
2021-06-18 6:14 ` [PATCH 44/70] mxser: inline mxser_board_remove into mxser_remove Jiri Slaby
2021-06-18 6:14 ` [PATCH 45/70] mxser: pci, switch to managed resources Jiri Slaby
2021-06-18 6:14 ` [PATCH 46/70] mxser: move request irq to probe and switch to managed Jiri Slaby
2021-06-18 6:14 ` [PATCH 47/70] mxser: remove info message from probe Jiri Slaby
2021-06-18 6:14 ` [PATCH 48/70] mxser: remove mxser_cardinfo Jiri Slaby
2021-06-18 6:14 ` [PATCH 49/70] mxser: cleanup mxser_process_txrx_fifo Jiri Slaby
2021-06-18 6:14 ` [PATCH 50/70] mxser: rework and simplify mxser_open Jiri Slaby
2021-06-18 6:14 ` [PATCH 51/70] mxser: make mxser_board::idx really an index Jiri Slaby
2021-06-18 6:14 ` [PATCH 52/70] mxser: alloc struct mxser_board dynamically Jiri Slaby
2021-06-18 6:14 ` [PATCH 53/70] mxser: alloc only needed # of ports Jiri Slaby
2021-06-18 6:15 ` [PATCH 54/70] mxser: remove pointless ioaddr checks Jiri Slaby
2021-06-18 6:15 ` [PATCH 55/70] mxser: cleanup mxser_rs_break Jiri Slaby
2021-06-18 6:15 ` [PATCH 56/70] mxser: cleanup mxser_dtr_rts Jiri Slaby
2021-06-18 6:15 ` [PATCH 57/70] mxser: don't start TX from tty_operations::put_char Jiri Slaby
2021-06-18 6:15 ` [PATCH 58/70] mxser: extract and dedup CTS handling Jiri Slaby
2021-06-18 6:15 ` [PATCH 59/70] mxser: introduce and use start/stop_tx helpers Jiri Slaby
2021-06-18 6:15 ` [PATCH 60/70] mxser: remove xmit_cnt < 0 tests Jiri Slaby
2021-06-18 6:15 ` [PATCH 61/70] mxser: decrypt FCR values Jiri Slaby
2021-06-18 6:15 ` [PATCH 62/70] mxser: fix typos around enhanced mode Jiri Slaby
2021-06-18 6:15 ` [PATCH 63/70] mxser: access info->MCR under info->slock Jiri Slaby
2021-06-18 6:15 ` [PATCH 64/70] mxser: use port variable in mxser_set_serial_info Jiri Slaby
2021-06-18 6:15 ` [PATCH 65/70] mxser: rename flags to old_speed " Jiri Slaby
2021-06-18 6:15 ` [PATCH 66/70] mxser: introduce mxser_16550A_or_MUST helper Jiri Slaby
2021-06-18 6:15 ` [PATCH 67/70] mxser: Documentation, remove traces of callout device Jiri Slaby
2021-06-18 6:15 ` [PATCH 68/70] mxser: Documentation, make the docs up-to-date Jiri Slaby
2021-06-18 6:15 ` [PATCH 69/70] mxser: Documentation, fix typos Jiri Slaby
2021-06-18 6:15 ` [PATCH 70/70] MAINTAINERS: add me back as mxser maintainer Jiri Slaby
2021-06-18 11:10 ` [PATCH 00/69] mxser: cleanup Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210618061516.662-6-jslaby@suse.cz \
--to=jslaby@suse.cz \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).