driver: espi: Enable espi uart port sirq based on uart mapping.
Espi has three uart port from 0 to 2 and uart sirq need to enabled for the port which is active in the hardware. An active uart sirq shoudl be enabled based on uart mapping configuration. Signed-off-by: Venkataramana Kotakonda <venkataramana.kotakonda@intel.com>
This commit is contained in:
parent
3add3d7b60
commit
69aa4eeee6
1 changed files with 19 additions and 1 deletions
|
@ -40,6 +40,14 @@
|
|||
#define ESPI_XEC_PORT80_BAR_ADDRESS 0x00800000
|
||||
#define ESPI_XEC_PORT81_BAR_ADDRESS 0x00810000
|
||||
|
||||
/* Espi peripheral has 3 uart ports */
|
||||
#define ESPI_PERIPHERAL_UART_PORT0 0
|
||||
#define ESPI_PERIPHERAL_UART_PORT1 1
|
||||
#define ESPI_PERIPHERAL_UART_PORT2 2
|
||||
|
||||
#define UART_DEFAULT_IRQ_POS 2u
|
||||
#define UART_DEFAULT_IRQ BIT(UART_DEFAULT_IRQ_POS)
|
||||
|
||||
#define MAX_OOB_BUFFER_SIZE 128ul
|
||||
#define MAX_SLAVE_BUFFER_SIZE 128ul
|
||||
|
||||
|
@ -795,7 +803,17 @@ static void config_sub_devices(struct device *dev)
|
|||
static void configure_sirq(void)
|
||||
{
|
||||
#ifdef CONFIG_ESPI_PERIPHERAL_UART
|
||||
ESPI_SIRQ_REGS->UART_1_SIRQ = 0x04;
|
||||
switch (CONFIG_ESPI_PERIPHERAL_UART_SOC_MAPPING) {
|
||||
case ESPI_PERIPHERAL_UART_PORT0:
|
||||
ESPI_SIRQ_REGS->UART_0_SIRQ = UART_DEFAULT_IRQ;
|
||||
break;
|
||||
case ESPI_PERIPHERAL_UART_PORT1:
|
||||
ESPI_SIRQ_REGS->UART_1_SIRQ = UART_DEFAULT_IRQ;
|
||||
break;
|
||||
case ESPI_PERIPHERAL_UART_PORT2:
|
||||
ESPI_SIRQ_REGS->UART_2_SIRQ = UART_DEFAULT_IRQ;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
#ifdef CONFIG_ESPI_PERIPHERAL_8042_KBC
|
||||
ESPI_SIRQ_REGS->KBC_SIRQ_0 = 0x01;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue