/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * NXP (Philips) SCC+++(SCN+++) serial driver * * Copyright (C) 2012 Alexander Shiyan <[email protected]> * * Based on sc26xx.c, by Thomas Bogendörfer ([email protected]) */ #ifndef _PLATFORM_DATA_SERIAL_SCCNXP_H_ #define _PLATFORM_DATA_SERIAL_SCCNXP_H_ #define SCCNXP_MAX_UARTS … /* Output lines */ #define LINE_OP0 … #define LINE_OP1 … #define LINE_OP2 … #define LINE_OP3 … #define LINE_OP4 … #define LINE_OP5 … #define LINE_OP6 … #define LINE_OP7 … /* Input lines */ #define LINE_IP0 … #define LINE_IP1 … #define LINE_IP2 … #define LINE_IP3 … #define LINE_IP4 … #define LINE_IP5 … #define LINE_IP6 … /* Signals */ #define DTR_OP … #define RTS_OP … #define DSR_IP … #define CTS_IP … #define DCD_IP … #define RNG_IP … #define DIR_OP … /* Routing control signal 'sig' to line 'line' */ #define MCTRL_SIG(sig, line) … /* * Example board initialization data: * * static struct resource sc2892_resources[] = { * DEFINE_RES_MEM(UART_PHYS_START, 0x10), * DEFINE_RES_IRQ(IRQ_EXT2), * }; * * static struct sccnxp_pdata sc2892_info = { * .mctrl_cfg[0] = MCTRL_SIG(DIR_OP, LINE_OP0), * .mctrl_cfg[1] = MCTRL_SIG(DIR_OP, LINE_OP1), * }; * * static struct platform_device sc2892 = { * .name = "sc2892", * .id = -1, * .resource = sc2892_resources, * .num_resources = ARRAY_SIZE(sc2892_resources), * .dev = { * .platform_data = &sc2892_info, * }, * }; */ /* SCCNXP platform data structure */ struct sccnxp_pdata { … }; #endif