From: One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> To: Gregory CLEMENT <gregory.clement@free-electrons.com> Cc: Jason Cooper <jason@lakedaemon.net>, Andrew Lunn <andrew@lunn.ch>, Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>, arm@kernel.org, Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will.deacon@arm.com>, Jonathan Corbet <corbet@lwn.net>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Jiri Slaby <jslaby@suse.com>, linux-serial@vger.kernel.org, Tejun Heo <tj@kernel.org>, Hans de Goede <hdegoede@redhat.com>, linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, Mark Rutland <mark.rutland@arm.com>, devicetree@vger.kernel.org, Thomas Petazzoni <thomas.petazzoni@free-electrons.com>, linux-arm-kernel@lists.infradead.org, Wilson Ding <dingwei@marvell.com>, Nadav Haklai <nadavh@marvell.com> Subject: Re: [PATCH 01/10] serial: mvebu-uart: initial support for Armada-3700 serial port Date: Tue, 2 Feb 2016 18:19:35 +0000 [thread overview] Message-ID: <20160202181935.19b4ab7e@lxorguk.ukuu.org.uk> (raw) In-Reply-To: <1454436468-4241-2-git-send-email-gregory.clement@free-electrons.com> > +static void mvebu_uart_set_termios(struct uart_port *port, > + struct ktermios *termios, > + struct ktermios *old) > +{ > + unsigned long flags; > + unsigned int baud; > + > + spin_lock_irqsave(&port->lock, flags); > + > + port->read_status_mask = STAT_RX_RDY | STAT_OVR_ERR | > + STAT_TX_RDY | STAT_TX_FIFO_FUL; > + > + if (termios->c_iflag & INPCK) > + port->read_status_mask |= STAT_FRM_ERR | STAT_PAR_ERR; > + > + port->ignore_status_mask = 0; > + if (termios->c_iflag & IGNPAR) > + port->ignore_status_mask |= > + STAT_FRM_ERR | STAT_PAR_ERR | STAT_OVR_ERR; > + > + if ((termios->c_cflag & CREAD) == 0) > + port->ignore_status_mask |= STAT_RX_RDY | STAT_BRK_ERR; If you don't support parity or charactive size then you should be forcing those bits in the tty->termios so that the caller sees what settings they get. tty_termios_copy_hw is close to what you need except that you can support IGNPAR. You also want to provide the actual baud rate chosen (see how 8250.c does it using tty_termios_encode_baud_rate(). > +static struct uart_driver mvebu_uart_driver = { > + .owner = THIS_MODULE, > + .driver_name = "serial", > + .dev_name = "ttyS", > + .major = TTY_MAJOR, > + .minor = 64, NAK TTY_MAJOR 64+ is the 8250 driver and ttyS is the 8250 driver name. You should be using a dynamic major (0) for all new drivers and you need to pick a different and unused ttyXXX format name. Alan
WARNING: multiple messages have this Message-ID (diff)
From: gnomes@lxorguk.ukuu.org.uk (One Thousand Gnomes) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 01/10] serial: mvebu-uart: initial support for Armada-3700 serial port Date: Tue, 2 Feb 2016 18:19:35 +0000 [thread overview] Message-ID: <20160202181935.19b4ab7e@lxorguk.ukuu.org.uk> (raw) In-Reply-To: <1454436468-4241-2-git-send-email-gregory.clement@free-electrons.com> > +static void mvebu_uart_set_termios(struct uart_port *port, > + struct ktermios *termios, > + struct ktermios *old) > +{ > + unsigned long flags; > + unsigned int baud; > + > + spin_lock_irqsave(&port->lock, flags); > + > + port->read_status_mask = STAT_RX_RDY | STAT_OVR_ERR | > + STAT_TX_RDY | STAT_TX_FIFO_FUL; > + > + if (termios->c_iflag & INPCK) > + port->read_status_mask |= STAT_FRM_ERR | STAT_PAR_ERR; > + > + port->ignore_status_mask = 0; > + if (termios->c_iflag & IGNPAR) > + port->ignore_status_mask |= > + STAT_FRM_ERR | STAT_PAR_ERR | STAT_OVR_ERR; > + > + if ((termios->c_cflag & CREAD) == 0) > + port->ignore_status_mask |= STAT_RX_RDY | STAT_BRK_ERR; If you don't support parity or charactive size then you should be forcing those bits in the tty->termios so that the caller sees what settings they get. tty_termios_copy_hw is close to what you need except that you can support IGNPAR. You also want to provide the actual baud rate chosen (see how 8250.c does it using tty_termios_encode_baud_rate(). > +static struct uart_driver mvebu_uart_driver = { > + .owner = THIS_MODULE, > + .driver_name = "serial", > + .dev_name = "ttyS", > + .major = TTY_MAJOR, > + .minor = 64, NAK TTY_MAJOR 64+ is the 8250 driver and ttyS is the 8250 driver name. You should be using a dynamic major (0) for all new drivers and you need to pick a different and unused ttyXXX format name. Alan
next prev parent reply other threads:[~2016-02-02 18:19 UTC|newest] Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-02-02 18:07 [PATCH 00/10] Add support for the Armada 3700 SoC an mvebu ARM64 based Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 01/10] serial: mvebu-uart: initial support for Armada-3700 serial port Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:19 ` Mark Rutland 2016-02-02 18:19 ` Mark Rutland 2016-02-02 18:21 ` Mark Rutland 2016-02-02 18:21 ` Mark Rutland 2016-02-02 18:19 ` One Thousand Gnomes [this message] 2016-02-02 18:19 ` One Thousand Gnomes 2016-02-03 15:58 ` Gregory CLEMENT 2016-02-03 15:58 ` Gregory CLEMENT 2016-02-02 18:28 ` Mark Rutland 2016-02-02 18:28 ` Mark Rutland 2016-02-02 18:28 ` Mark Rutland 2016-02-03 16:32 ` Gregory CLEMENT 2016-02-03 16:32 ` Gregory CLEMENT 2016-02-03 16:56 ` Gregory CLEMENT 2016-02-03 16:56 ` Gregory CLEMENT [not found] ` <87egct4trb.fsf-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org> 2016-02-03 17:05 ` Mark Rutland 2016-02-03 17:05 ` Mark Rutland 2016-02-03 17:05 ` Mark Rutland 2016-02-02 21:07 ` Arnd Bergmann 2016-02-02 21:07 ` Arnd Bergmann 2016-02-03 16:36 ` Gregory CLEMENT 2016-02-03 16:36 ` Gregory CLEMENT 2016-02-03 16:36 ` Gregory CLEMENT 2016-02-02 21:19 ` Rob Herring 2016-02-02 21:19 ` Rob Herring 2016-02-03 8:05 ` Marcin Wojtas 2016-02-03 8:05 ` Marcin Wojtas 2016-02-03 8:05 ` Marcin Wojtas 2016-02-03 16:43 ` Gregory CLEMENT 2016-02-03 16:43 ` Gregory CLEMENT 2016-02-03 16:43 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 02/10] ata: ahci_mvebu: add support for Armada 3700 variant Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 03/10] arm64: add Armada 3700 architecture entry Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-03 6:24 ` Jisheng Zhang 2016-02-03 6:24 ` Jisheng Zhang 2016-02-03 6:24 ` Jisheng Zhang 2016-02-03 7:55 ` Gregory CLEMENT 2016-02-03 7:55 ` Gregory CLEMENT 2016-02-03 7:55 ` Gregory CLEMENT [not found] ` <87k2mm5itx.fsf-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org> 2016-02-03 9:11 ` Arnd Bergmann 2016-02-03 9:11 ` Arnd Bergmann 2016-02-03 9:11 ` Arnd Bergmann 2016-02-03 11:13 ` Gregory CLEMENT 2016-02-03 11:13 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 04/10] Documentation: dt-bindings: Add a new compatible for the Armada 3700 Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 21:20 ` Rob Herring 2016-02-02 21:20 ` Rob Herring 2016-02-02 18:07 ` [PATCH 05/10] Documentation: dt: Tidy up the Marvell related files Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT [not found] ` <1454436468-4241-6-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org> 2016-02-02 21:26 ` Rob Herring 2016-02-02 21:26 ` Rob Herring 2016-02-02 21:26 ` Rob Herring 2016-02-02 18:07 ` [PATCH 06/10] devicetree: bindings: add DT binding for the Marvell Armada 3700 SoC family Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT [not found] ` <1454436468-4241-7-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org> 2016-02-02 21:24 ` Rob Herring 2016-02-02 21:24 ` Rob Herring 2016-02-02 21:24 ` Rob Herring 2016-02-03 8:02 ` Gregory CLEMENT 2016-02-03 8:02 ` Gregory CLEMENT 2016-02-03 8:02 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 07/10] arm64: dts: add the Marvell Armada 3700 family and a development board Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:34 ` Mark Rutland 2016-02-02 18:34 ` Mark Rutland 2016-02-03 10:44 ` Gregory CLEMENT 2016-02-03 10:44 ` Gregory CLEMENT 2016-02-03 6:37 ` Jisheng Zhang 2016-02-03 6:37 ` Jisheng Zhang 2016-02-03 6:37 ` Jisheng Zhang 2016-02-02 18:07 ` [PATCH 08/10] MAINTAINERS: Extend dts entry for ARM64 mvebu files Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 09/10] Documentation: arm: update supported Marvell EBU processors Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT 2016-02-02 18:07 ` [PATCH 10/10] arm64: defconfig: enable Armada 3700 related config Gregory CLEMENT 2016-02-02 18:07 ` Gregory CLEMENT
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=20160202181935.19b4ab7e@lxorguk.ukuu.org.uk \ --to=gnomes@lxorguk.ukuu.org.uk \ --cc=andrew@lunn.ch \ --cc=arm@kernel.org \ --cc=catalin.marinas@arm.com \ --cc=corbet@lwn.net \ --cc=devicetree@vger.kernel.org \ --cc=dingwei@marvell.com \ --cc=gregkh@linuxfoundation.org \ --cc=gregory.clement@free-electrons.com \ --cc=hdegoede@redhat.com \ --cc=jason@lakedaemon.net \ --cc=jslaby@suse.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-ide@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-serial@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=nadavh@marvell.com \ --cc=sebastian.hesselbarth@gmail.com \ --cc=thomas.petazzoni@free-electrons.com \ --cc=tj@kernel.org \ --cc=will.deacon@arm.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.