/kernel/linux/linux-5.10/Documentation/devicetree/bindings/serial/ |
D | rs485.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/serial/rs485.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: RS485 serial communications Bindings 9 description: The RTS signal is capable of automatically controlling line 10 direction for the built-in half-duplex mode. The properties described 11 hereafter shall be given to a half-duplex capable UART node. 14 - Rob Herring <robh@kernel.org> 17 rs485-rts-delay: [all …]
|
D | st,stm32-uart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serial/st,stm32-uart.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 - Erwan Le Ray <erwan.leray@st.com> 13 - $ref: rs485.yaml 18 - st,stm32-uart 19 - st,stm32f7-uart 20 - st,stm32h7-uart 37 st,hw-flow-ctrl: [all …]
|
D | omap_serial.txt | 4 - compatible : should be "ti,j721e-uart", "ti,am654-uart" for J721E controllers 5 - compatible : should be "ti,am654-uart" for AM654 controllers 6 - compatible : should be "ti,omap2-uart" for OMAP2 controllers 7 - compatible : should be "ti,omap3-uart" for OMAP3 controllers 8 - compatible : should be "ti,omap4-uart" for OMAP4 controllers 9 - compatible : should be "ti,am4372-uart" for AM437x controllers 10 - compatible : should be "ti,am3352-uart" for AM335x controllers 11 - compatible : should be "ti,dra742-uart" for DRA7x controllers 12 - reg : address and length of the register space 13 - interrupts or interrupts-extended : Should contain the uart interrupt [all …]
|
D | fsl-imx-uart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serial/fsl-imx-uart.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Fabio Estevam <fabio.estevam@nxp.com> 13 - $ref: "serial.yaml" 14 - $ref: "rs485.yaml" 19 - const: fsl,imx1-uart 20 - const: fsl,imx21-uart 21 - items: [all …]
|
/kernel/linux/linux-5.10/Documentation/driver-api/serial/ |
D | serial-rs485.rst | 2 RS485 Serial Communications 8 EIA-485, also known as TIA/EIA-485 or RS-485, is a standard defining the 15 2. Hardware-related Considerations 18 Some CPUs/UARTs (e.g., Atmel AT91 or 16C950 UART) contain a built-in 19 half-duplex mode capable of automatically controlling line direction by 20 toggling RTS or DTR signals. That can be used to control external 21 half-duplex hardware like an RS485 transceiver or any RS232-connected 22 half-duplex devices like some modems. 26 available at user-level to allow switching from one mode to the other, and 33 RS485 communications. This data structure is used to set and configure RS485 [all …]
|
/kernel/linux/linux-5.10/arch/arm/boot/dts/ |
D | aks-cdu.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * aks-cdu.dts - Device Tree file for AK signal CDU 9 /dts-v1/; 11 #include "ge863-pro3.dtsi" 20 clock-frequency = <32768>; 32 linux,rs485-enabled-at-boot-time; 33 rs485-rts-delay = <0 0>; 38 linux,rs485-enabled-at-boot-time; 39 rs485-rts-delay = <0 0>; 44 linux,rs485-enabled-at-boot-time; [all …]
|
D | am335x-nano.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2013 Newflow Ltd - http://www.newflow.co.uk/ 5 /dts-v1/; 15 cpu0-supply = <&dcdc2_reg>; 25 compatible = "gpio-leds"; 30 default-state = "off"; 36 pinctrl-names = "default"; 37 pinctrl-0 = <&misc_pins>; 40 pinctrl-single,pins = < 46 pinctrl-single,pins = < [all …]
|
D | am335x-pdu001.dts | 6 * Copyright (C) 2018 EETS GmbH - http://www.eets.ch/ 8 * Copyright (C) 2011, Texas Instruments, Incorporated - https://www.ti.com/ 10 * SPDX-License-Identifier: GPL-2.0+ 13 /dts-v1/; 16 #include <dt-bindings/interrupt-controller/irq.h> 17 #include <dt-bindings/leds/leds-pca9532.h> 24 stdout-path = &uart3; 29 cpu0-supply = <&vdd1_reg>; 39 compatible = "regulator-fixed"; 40 regulator-name = "vbat"; [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/ |
D | atmel-usart.txt | 4 - compatible: Should be one of the following: 5 - "atmel,at91rm9200-usart" 6 - "atmel,at91sam9260-usart" 7 - "microchip,sam9x60-usart" 8 - "atmel,at91rm9200-dbgu", "atmel,at91rm9200-usart" 9 - "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart" 10 - "microchip,sam9x60-dbgu", "microchip,sam9x60-usart" 11 - reg: Should contain registers location and length 12 - interrupts: Should contain interrupt 13 - clock-names: tuple listing input clock names. [all …]
|
/kernel/linux/linux-5.10/drivers/tty/serial/8250/ |
D | 8250_lpc18xx.c | 1 // SPDX-License-Identifier: GPL-2.0 36 struct serial_rs485 *rs485) in lpc18xx_rs485_config() argument 43 if (rs485->flags & SER_RS485_ENABLED) in lpc18xx_rs485_config() 44 memset(rs485->padding, 0, sizeof(rs485->padding)); in lpc18xx_rs485_config() 46 memset(rs485, 0, sizeof(*rs485)); in lpc18xx_rs485_config() 48 rs485->flags &= SER_RS485_ENABLED | SER_RS485_RTS_ON_SEND | in lpc18xx_rs485_config() 51 if (rs485->flags & SER_RS485_ENABLED) { in lpc18xx_rs485_config() 55 if (rs485->flags & SER_RS485_RTS_ON_SEND) { in lpc18xx_rs485_config() 57 rs485->flags &= ~SER_RS485_RTS_AFTER_SEND; in lpc18xx_rs485_config() 59 rs485->flags |= SER_RS485_RTS_AFTER_SEND; in lpc18xx_rs485_config() [all …]
|
D | 8250_port.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Base port operations for 8250/16550-type serial ports 21 #include <linux/delay.h> 256 * tx_loadsz is set to 63-bytes instead of 64-bytes to implement 257 * workaround of errata A-008006 which states that tx_loadsz should 269 .name = "Palmchip BK-3103", 340 -1, /* UART_SCR (unmapped) */ 349 -1, /* UART_LSR (unmapped) */ 350 -1, /* UART_MSR (unmapped) */ 351 -1, /* UART_SCR (unmapped) */ [all …]
|
D | 8250_pci.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Probe module for 8250/16550-type PCI serial ports. 15 #include <linux/delay.h> 29 * > 0 - number of ports 30 * = 0 - use board->num_ports 31 * < 0 - error 78 dev_err(&dev->dev, in moan_device() 80 "Please send the output of lspci -vv, this\n" in moan_device() 83 "modem board to <linux-serial@vger.kernel.org>.\n", in moan_device() 84 pci_name(dev), str, dev->vendor, dev->device, in moan_device() [all …]
|
/kernel/linux/linux-5.10/include/uapi/linux/ |
D | serial.h | 1 /* SPDX-License-Identifier: GPL-1.0+ WITH Linux-syscall-note */ 63 #define PORT_RSA 13 /* RSA-DV II/S card */ 82 * Multiport serial configuration structure --- external structure 99 * Serial input interrupt line counters -- external structure 111 * Serial interface for controlling RS485 settings on chips with suitable 118 __u32 flags; /* RS485 feature flags */ 121 RTS pin when 124 RTS pin after sent*/ 129 __u32 delay_rts_before_send; /* Delay before send (milliseconds) */ 130 __u32 delay_rts_after_send; /* Delay after send (milliseconds) */
|
/kernel/linux/linux-5.10/drivers/tty/serial/ |
D | sc16is7xx.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * SC16IS7xx tty serial driver - Copyright (C) 2014 GridPoint 13 #include <linux/delay.h> 46 * - only on 75x/76x 49 * - only on 75x/76x 52 * - only on 75x/76x 55 * - only on 75x/76x 83 /* IER register bits - write only if (EFR[4] == 1) */ 96 /* FCR register bits - write only if (EFR[4] == 1) */ 106 #define SC16IS7XX_IIR_RTOI_SRC 0x0c /* RX time-out interrupt */ [all …]
|
D | omap-serial.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Driver for OMAP-UART controller. 16 * this driver as required for the omap-platform. 23 #include <linux/delay.h> 37 #include <linux/platform_data/serial-omap.h> 78 #define OMAP_UART_DMA_CH_FREE -1 175 offset <<= up->port.regshift; in serial_in() 176 return readw(up->port.membase + offset); in serial_in() 181 offset <<= up->port.regshift; in serial_out() 182 writew(value, up->port.membase + offset); in serial_out() [all …]
|
D | max310x.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2012-2016 Alexander Shiyan <shc_work@mail.ru> 14 #include <linux/delay.h> 102 #define MAX310X_SPCHR_MULTIDROP_BIT (1 << 5) /* 9-bit multidrop addr char */ 115 #define MAX310X_MODE1_TXHIZ_BIT (1 << 2) /* TX pin three-state */ 116 #define MAX310X_MODE1_RTSHIZ_BIT (1 << 3) /* RTS pin three-state */ 129 #define MAX310X_MODE2_MULTIDROP_BIT (1 << 6) /* 9-bit multidrop enable */ 137 * 00 -> 5 bit words 138 * 01 -> 6 bit words 139 * 10 -> 7 bit words [all …]
|
D | imx.c | 1 // SPDX-License-Identifier: GPL-2.0+ 22 #include <linux/delay.h> 30 #include <linux/dma-mapping.h> 33 #include <linux/platform_data/serial-imx.h> 34 #include <linux/platform_data/dma-imx.h> 75 #define UCR1_RTSDEN (1<<5) /* RTS delta interrupt enable */ 83 #define UCR2_IRTS (1<<14) /* Ignore RTS pin */ 125 #define UFCR_RFDIV_REG(x) (((x) < 7 ? 6 - (x) : 6) << 7) 128 #define USR1_RTSS (1<<14) /* RTS pin status */ 130 #define USR1_RTSD (1<<12) /* RTS delta */ [all …]
|
D | atmel_serial.c | 1 // SPDX-License-Identifier: GPL-2.0+ 23 #include <linux/dma-mapping.h> 45 * These two offsets are substracted from the RX FIFO size to define the RTS 61 /* Use device name ttyAT, major 204 and minor 154-169. This is necessary if we 70 /* Use device name ttyS, major 4, minor 64-68. This is the usual serial port 162 bool hd_start_rx; /* can start RX during half-duplex operation */ 194 { .compatible = "atmel,at91rm9200-usart-serial" }, 207 return __raw_readl(port->membase + reg); in atmel_uart_readl() 212 __raw_writel(value, port->membase + reg); in atmel_uart_writel() 217 return __raw_readb(port->membase + ATMEL_US_RHR); in atmel_uart_read_char() [all …]
|
D | ar933x_uart.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Atheros AR933X SoC built-in UART driver 15 #include <linux/delay.h> 31 #include <asm/mach-ath79/ar933x_uart.h> 35 #define DRIVER_NAME "ar933x-uart" 60 return readl(up->port.membase + offset); in ar933x_uart_read() 66 writel(value, up->port.membase + offset); in ar933x_uart_write() 98 up->ier |= AR933X_UART_INT_TX_EMPTY; in ar933x_uart_start_tx_interrupt() 99 ar933x_uart_write(up, AR933X_UART_INT_EN_REG, up->ier); in ar933x_uart_start_tx_interrupt() 104 up->ier &= ~AR933X_UART_INT_TX_EMPTY; in ar933x_uart_stop_tx_interrupt() [all …]
|
D | serial_core.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 * Copyright (C) 2000-2001 Deep Blue Solutions Ltd. 25 #include <linux/delay.h> 38 * lockdep: port->lock is initialized in two places, but we 39 * want only one lock-class: 43 #define HIGH_BITS_OFFSET ((sizeof(long)-sizeof(int))*8) 55 return !!(uport->status & UPSTAT_DCD_ENABLE); in uart_dcd_enabled() 60 if (atomic_add_unless(&state->refcount, 1, 0)) in uart_port_ref() 61 return state->uart_port; in uart_port_ref() 67 if (atomic_dec_and_test(&uport->state->refcount)) in uart_port_deref() [all …]
|
D | zs.c | 1 // SPDX-License-Identifier: GPL-2.0 9 * Copyright (C) 1998-2000 Harald Koerfgen 20 * DIN-7 MJ-4 signal SCC 21 * 2 1 TxD <- A.TxD 22 * 3 4 RxD -> A.RxD 24 * EIA-232/EIA-423: 25 * DB-25 MMJ-6 signal SCC 26 * 2 2 TxD <- B.TxD 27 * 3 5 RxD -> B.RxD 28 * 4 RTS <- ~A.RTS [all …]
|
D | stm32-usart.c | 1 // SPDX-License-Identifier: GPL-2.0 8 * Inspired by st-asc.c from STMicroelectronics (c) 13 #include <linux/delay.h> 14 #include <linux/dma-direction.h> 16 #include <linux/dma-mapping.h> 35 #include "stm32-usart.h" 49 val = readl_relaxed(port->membase + reg); in stm32_usart_set_bits() 51 writel_relaxed(val, port->membase + reg); in stm32_usart_set_bits() 58 val = readl_relaxed(port->membase + reg); in stm32_usart_clr_bits() 60 writel_relaxed(val, port->membase + reg); in stm32_usart_clr_bits() [all …]
|
/kernel/linux/linux-5.10/arch/x86/platform/ts5500/ |
D | ts5500.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Technologic Systems TS-5500 Single Board Computer support 5 * Copyright (C) 2013-2014 Savoir-faire Linux Inc. 8 * This driver registers the Technologic Systems TS-5500 Single Board Computer 11 * Documentation/ABI/testing/sysfs-platform-ts5500. 13 * This code may be extended to support similar x86-based platforms. 14 * Actually, the TS-5500 and TS-5400 are supported. 17 #include <linux/delay.h> 28 #define TS5500_PRODUCT_CODE 0x60 /* TS-5500 product code */ 29 #define TS5400_PRODUCT_CODE 0x40 /* TS-5400 product code */ [all …]
|
/kernel/linux/linux-5.10/drivers/usb/serial/ |
D | f81534.c | 1 // SPDX-License-Identifier: GPL-2.0+ 12 * The F81532/F81534 had 1 control endpoint for setting, 1 endpoint bulk-out 13 * for all serial port TX and 1 endpoint bulk-in for all serial port read in 122 * Bit2-1: Clock source selector 127 * Bit4: Auto direction(RTS) control (RTS pin Low when TX) 128 * Bit5: Invert direction(RTS) when Bit4 enabled (RTS pin high when TX) 197 usb_get_serial_data(port->serial); in f81534_logic_to_phy_port() 202 if (serial_priv->conf_data[i] & F81534_PORT_UNAVAILABLE) in f81534_logic_to_phy_port() 205 if (port->port_number == count) in f81534_logic_to_phy_port() 211 return -ENODEV; in f81534_logic_to_phy_port() [all …]
|
/kernel/linux/linux-5.10/drivers/tty/ |
D | amiserial.c | 1 // SPDX-License-Identifier: GPL-2.0 9 * associated with the registers and bits of 16550 compatible UARTS - 25 #include <linux/delay.h> 37 #define DBG_CNT(s) printk("(%s): [%x] refc=%d, serc=%d, ttyc=%d -> %s\n", \ 38 tty->name, (info->tport.flags), serial_driver->refcount,info->count,tty->count,s) 103 static char *serial_name = "Amiga-builtin serial driver"; 148 * ------------------------------------------------------------ 151 * This routines are called before setting or resetting tty->stopped. 153 * ------------------------------------------------------------ 157 struct serial_state *info = tty->driver_data; in rs_stop() [all …]
|