1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _INCLUDE_SHANNON_H
3 #define _INCLUDE_SHANNON_H
4 
5 /* taken from comp.os.inferno Tue, 12 Sep 2000 09:21:50 GMT,
6  * written by <forsyth@vitanuova.com> */
7 
8 #define SHANNON_GPIO_SPI_FLASH		GPIO_GPIO (0)	/* Output - Driven low, enables SPI to flash */
9 #define SHANNON_GPIO_SPI_DSP		GPIO_GPIO (1)	/* Output - Driven low, enables SPI to DSP */
10 /* lcd lower = GPIO 2-9 */
11 #define SHANNON_GPIO_SPI_OUTPUT		GPIO_GPIO (10)	/* Output - SPI output to DSP */
12 #define SHANNON_GPIO_SPI_INPUT		GPIO_GPIO (11)	/* Input  - SPI input from DSP */
13 #define SHANNON_GPIO_SPI_CLOCK		GPIO_GPIO (12)	/* Output - Clock for SPI */
14 #define SHANNON_GPIO_SPI_FRAME		GPIO_GPIO (13)	/* Output - Frame marker - not used */
15 #define SHANNON_GPIO_SPI_RTS		GPIO_GPIO (14)	/* Input  - SPI Ready to Send */
16 #define SHANNON_IRQ_GPIO_SPI_RTS	IRQ_GPIO14
17 #define SHANNON_GPIO_SPI_CTS		GPIO_GPIO (15)	/* Output - SPI Clear to Send */
18 #define SHANNON_GPIO_IRQ_CODEC		GPIO_GPIO (16)	/* in, irq from ucb1200 */
19 #define SHANNON_IRQ_GPIO_IRQ_CODEC	IRQ_GPIO16
20 #define SHANNON_GPIO_DSP_RESET		GPIO_GPIO (17)	/* Output - Drive low to reset the DSP */
21 #define SHANNON_GPIO_CODEC_RESET	GPIO_GPIO (18)	/* Output - Drive low to reset the UCB1x00 */
22 #define SHANNON_GPIO_U3_RTS		GPIO_GPIO (19)	/* ?? */
23 #define SHANNON_GPIO_U3_CTS		GPIO_GPIO (20)	/* ?? */
24 #define SHANNON_GPIO_SENSE_12V		GPIO_GPIO (21)	/* Input, 12v flash unprotect detected */
25 #define SHANNON_GPIO_DISP_EN		22		/* out */
26 /* XXX GPIO 23 unaccounted for */
27 #define SHANNON_GPIO_EJECT_0		24		/* in */
28 #define SHANNON_GPIO_EJECT_1		25		/* in */
29 #define SHANNON_GPIO_RDY_0		26		/* in */
30 #define SHANNON_GPIO_RDY_1		27		/* in */
31 
32 /* MCP UCB codec GPIO pins... */
33 
34 #define SHANNON_UCB_GPIO_BACKLIGHT	9
35 #define SHANNON_UCB_GPIO_BRIGHT_MASK  	7
36 #define SHANNON_UCB_GPIO_BRIGHT		6
37 #define SHANNON_UCB_GPIO_CONTRAST_MASK	0x3f
38 #define SHANNON_UCB_GPIO_CONTRAST	0
39 
40 #endif
41