1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 26920b5a7SRussell King /* 36920b5a7SRussell King * Author: Nicolas Pitre 46920b5a7SRussell King * 56920b5a7SRussell King * Moved and changed lots, Russell King 66920b5a7SRussell King * 76920b5a7SRussell King * Low level machine dependent UART functions. 86920b5a7SRussell King */ 96920b5a7SRussell King #ifndef SA11X0_SERIAL_H 106920b5a7SRussell King #define SA11X0_SERIAL_H 116920b5a7SRussell King 126920b5a7SRussell King struct uart_port; 136920b5a7SRussell King struct uart_info; 146920b5a7SRussell King 156920b5a7SRussell King /* 166920b5a7SRussell King * This is a temporary structure for registering these 176920b5a7SRussell King * functions; it is intended to be discarded after boot. 186920b5a7SRussell King */ 196920b5a7SRussell King struct sa1100_port_fns { 206920b5a7SRussell King void (*set_mctrl)(struct uart_port *, u_int); 216920b5a7SRussell King u_int (*get_mctrl)(struct uart_port *); 226920b5a7SRussell King void (*pm)(struct uart_port *, u_int, u_int); 236920b5a7SRussell King int (*set_wake)(struct uart_port *, u_int); 246920b5a7SRussell King }; 256920b5a7SRussell King 266920b5a7SRussell King #ifdef CONFIG_SERIAL_SA1100 276920b5a7SRussell King void sa1100_register_uart_fns(struct sa1100_port_fns *fns); 286920b5a7SRussell King void sa1100_register_uart(int idx, int port); 296920b5a7SRussell King #else 300607616dSArnd Bergmann static inline void sa1100_register_uart_fns(struct sa1100_port_fns *fns) 310607616dSArnd Bergmann { 320607616dSArnd Bergmann } 330607616dSArnd Bergmann static inline void sa1100_register_uart(int idx, int port) 340607616dSArnd Bergmann { 350607616dSArnd Bergmann } 366920b5a7SRussell King #endif 376920b5a7SRussell King 386920b5a7SRussell King #endif 39