ubuntu-linux-kernel/arch/sh/include/mach-x3proto/mach/ilsel.h

47 lines
926 B
C
Raw Normal View History

2024-04-01 15:06:58 +00:00
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __ASM_SH_ILSEL_H
#define __ASM_SH_ILSEL_H
typedef enum {
ILSEL_NONE,
ILSEL_LAN,
ILSEL_USBH_I,
ILSEL_USBH_S,
ILSEL_USBH_V,
ILSEL_RTC,
ILSEL_USBP_I,
ILSEL_USBP_S,
ILSEL_USBP_V,
ILSEL_KEY,
/*
* ILSEL Aliases - corner cases for interleaved level tables.
*
* Someone thought this was a good idea and less hassle than
* demuxing a shared vector, really.
*/
/* ILSEL0 and 2 */
ILSEL_FPGA0,
ILSEL_FPGA1,
ILSEL_EX1,
ILSEL_EX2,
ILSEL_EX3,
ILSEL_EX4,
/* ILSEL1 and 3 */
ILSEL_FPGA2 = ILSEL_FPGA0,
ILSEL_FPGA3 = ILSEL_FPGA1,
ILSEL_EX5 = ILSEL_EX1,
ILSEL_EX6 = ILSEL_EX2,
ILSEL_EX7 = ILSEL_EX3,
ILSEL_EX8 = ILSEL_EX4,
} ilsel_source_t;
/* arch/sh/boards/renesas/x3proto/ilsel.c */
int ilsel_enable(ilsel_source_t set);
int ilsel_enable_fixed(ilsel_source_t set, unsigned int level);
void ilsel_disable(unsigned int irq);
#endif /* __ASM_SH_ILSEL_H */