From: "Jiri Slaby (SUSE)" <jirislaby@kernel.org> To: linux-serial@vger.kernel.org Cc: linux-kernel@vger.kernel.org, "Jiri Slaby (SUSE)" <jirislaby@kernel.org>, Richard Genoud <richard.genoud@gmail.com>, Nicolas Ferre <nicolas.ferre@microchip.com>, Alexandre Belloni <alexandre.belloni@bootlin.com>, Claudiu Beznea <claudiu.beznea@tuxon.dev>, linux-arm-kernel@lists.infradead.org Subject: [RFT 14/15] tty: atmel_serial: define macro for RX size Date: Tue, 19 Mar 2024 10:53:14 +0100 [thread overview] Message-ID: <20240319095315.27624-16-jirislaby@kernel.org> (raw) In-Reply-To: <20240319095315.27624-1-jirislaby@kernel.org> It is repeated in the code and there is also a big warning by ATMEL_SERIAL_RINGSIZE. So define ATMEL_SERIAL_RX_SIZE and use it appropriatelly. The macro uses array_size() and kmalloc_array() is switched to kmalloc(). Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org> Cc: Richard Genoud <richard.genoud@gmail.com> Cc: Nicolas Ferre <nicolas.ferre@microchip.com> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Cc: Claudiu Beznea <claudiu.beznea@tuxon.dev> Cc: linux-arm-kernel@lists.infradead.org --- drivers/tty/serial/atmel_serial.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/tty/serial/atmel_serial.c b/drivers/tty/serial/atmel_serial.c index 69ec80ffc97b..5cde5077c429 100644 --- a/drivers/tty/serial/atmel_serial.c +++ b/drivers/tty/serial/atmel_serial.c @@ -96,7 +96,9 @@ struct atmel_uart_char { * can contain up to 1024 characters in PIO mode and up to 4096 characters in * DMA mode. */ -#define ATMEL_SERIAL_RINGSIZE 1024 +#define ATMEL_SERIAL_RINGSIZE 1024 +#define ATMEL_SERIAL_RX_SIZE array_size(sizeof(struct atmel_uart_char), \ + ATMEL_SERIAL_RINGSIZE) /* * at91: 6 USARTs and one DBGU port (SAM9260) @@ -1208,7 +1210,7 @@ static int atmel_prepare_rx_dma(struct uart_port *port) BUG_ON(!PAGE_ALIGNED(ring->buf)); sg_set_page(&atmel_port->sg_rx, virt_to_page(ring->buf), - sizeof(struct atmel_uart_char) * ATMEL_SERIAL_RINGSIZE, + ATMEL_SERIAL_RX_SIZE, offset_in_page(ring->buf)); nent = dma_map_sg(port->dev, &atmel_port->sg_rx, @@ -2947,9 +2949,7 @@ static int atmel_serial_probe(struct platform_device *pdev) if (!atmel_use_pdc_rx(&atmel_port->uart)) { ret = -ENOMEM; - data = kmalloc_array(ATMEL_SERIAL_RINGSIZE, - sizeof(struct atmel_uart_char), - GFP_KERNEL); + data = kmalloc(ATMEL_SERIAL_RX_SIZE, GFP_KERNEL); if (!data) goto err_clk_disable_unprepare; atmel_port->rx_ring.buf = data; -- 2.44.0
WARNING: multiple messages have this Message-ID (diff)
From: "Jiri Slaby (SUSE)" <jirislaby@kernel.org> To: linux-serial@vger.kernel.org Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>, Richard Genoud <richard.genoud@gmail.com>, Claudiu Beznea <claudiu.beznea@tuxon.dev>, linux-kernel@vger.kernel.org, "Jiri Slaby \(SUSE\)" <jirislaby@kernel.org>, linux-arm-kernel@lists.infradead.org Subject: [RFT 14/15] tty: atmel_serial: define macro for RX size Date: Tue, 19 Mar 2024 10:53:14 +0100 [thread overview] Message-ID: <20240319095315.27624-16-jirislaby@kernel.org> (raw) In-Reply-To: <20240319095315.27624-1-jirislaby@kernel.org> It is repeated in the code and there is also a big warning by ATMEL_SERIAL_RINGSIZE. So define ATMEL_SERIAL_RX_SIZE and use it appropriatelly. The macro uses array_size() and kmalloc_array() is switched to kmalloc(). Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org> Cc: Richard Genoud <richard.genoud@gmail.com> Cc: Nicolas Ferre <nicolas.ferre@microchip.com> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Cc: Claudiu Beznea <claudiu.beznea@tuxon.dev> Cc: linux-arm-kernel@lists.infradead.org --- drivers/tty/serial/atmel_serial.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/tty/serial/atmel_serial.c b/drivers/tty/serial/atmel_serial.c index 69ec80ffc97b..5cde5077c429 100644 --- a/drivers/tty/serial/atmel_serial.c +++ b/drivers/tty/serial/atmel_serial.c @@ -96,7 +96,9 @@ struct atmel_uart_char { * can contain up to 1024 characters in PIO mode and up to 4096 characters in * DMA mode. */ -#define ATMEL_SERIAL_RINGSIZE 1024 +#define ATMEL_SERIAL_RINGSIZE 1024 +#define ATMEL_SERIAL_RX_SIZE array_size(sizeof(struct atmel_uart_char), \ + ATMEL_SERIAL_RINGSIZE) /* * at91: 6 USARTs and one DBGU port (SAM9260) @@ -1208,7 +1210,7 @@ static int atmel_prepare_rx_dma(struct uart_port *port) BUG_ON(!PAGE_ALIGNED(ring->buf)); sg_set_page(&atmel_port->sg_rx, virt_to_page(ring->buf), - sizeof(struct atmel_uart_char) * ATMEL_SERIAL_RINGSIZE, + ATMEL_SERIAL_RX_SIZE, offset_in_page(ring->buf)); nent = dma_map_sg(port->dev, &atmel_port->sg_rx, @@ -2947,9 +2949,7 @@ static int atmel_serial_probe(struct platform_device *pdev) if (!atmel_use_pdc_rx(&atmel_port->uart)) { ret = -ENOMEM; - data = kmalloc_array(ATMEL_SERIAL_RINGSIZE, - sizeof(struct atmel_uart_char), - GFP_KERNEL); + data = kmalloc(ATMEL_SERIAL_RX_SIZE, GFP_KERNEL); if (!data) goto err_clk_disable_unprepare; atmel_port->rx_ring.buf = data; -- 2.44.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2024-03-19 9:54 UTC|newest] Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-03-19 9:52 [RFT 00/15] tty: serial: switch from circ_buf to kfifo Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 01/15] kfifo: drop __kfifo_dma_out_finish_r() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 02/15] kfifo: introduce and use kfifo_skip_count() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 03/15] kfifo: add kfifo_out_linear{,_ptr}() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [PATCH 4/4] kfifo: fix typos in kernel-doc Jiri Slaby (SUSE) 2024-03-19 10:04 ` Jiri Slaby 2024-03-19 9:53 ` [RFT 04/15] kfifo: remove support for physically non-contiguous memory Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 05/15] kfifo: rename l to len_to_end in setup_sgl() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 06/15] kfifo: pass offset to setup_sgl_buf() instead of a pointer Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 07/15] kfifo: add kfifo_dma_out_prepare_mapped() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 08/15] kfifo: fix typos in kernel-doc Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 09/15] tty: 8250_dma: use dmaengine_prep_slave_sg() Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 10/15] tty: 8250_omap: " Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 11/15] tty: msm_serial: " Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 12/15] tty: serial: switch from circ_buf to kfifo Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 13/15] tty: atmel_serial: use single DMA mapping for TX Jiri Slaby (SUSE) 2024-03-19 9:53 ` Jiri Slaby (SUSE) 2024-03-19 9:53 ` Jiri Slaby (SUSE) [this message] 2024-03-19 9:53 ` [RFT 14/15] tty: atmel_serial: define macro for RX size Jiri Slaby (SUSE) 2024-03-19 9:53 ` [RFT 15/15] tty: atmel_serial: use single DMA mapping for RX Jiri Slaby (SUSE) 2024-03-19 9:53 ` Jiri Slaby (SUSE) 2024-03-27 16:08 ` [RFT 00/15] tty: serial: switch from circ_buf to kfifo Richard Genoud
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=20240319095315.27624-16-jirislaby@kernel.org \ --to=jirislaby@kernel.org \ --cc=alexandre.belloni@bootlin.com \ --cc=claudiu.beznea@tuxon.dev \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-serial@vger.kernel.org \ --cc=nicolas.ferre@microchip.com \ --cc=richard.genoud@gmail.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.