forked from xuos/xiuos
feat support uart8 and ec200t device on xidatong board
This commit is contained in:
parent
dadfdb85a3
commit
c14f2f73e0
|
@ -3,13 +3,19 @@ config ADAPTER_4G_EC200T
|
|||
default "ec200t"
|
||||
|
||||
if ADD_XIZI_FETURES
|
||||
config ADAPTER_EC200T_PWRKEY
|
||||
int "EC200T PWRKEY pin number"
|
||||
default "97"
|
||||
config ADAPTER_EC200T_USING_PWRKEY
|
||||
bool "EC200T using PWRKEY pin number"
|
||||
default n
|
||||
|
||||
config ADAPTER_EC200T_PIN_DRIVER
|
||||
string "EC200T device pin driver path"
|
||||
default "/dev/pin_dev"
|
||||
if ADAPTER_EC200T_USING_PWRKEY
|
||||
config ADAPTER_EC200T_PWRKEY
|
||||
int "EC200T PWRKEY pin number"
|
||||
default "97"
|
||||
|
||||
config ADAPTER_EC200T_PIN_DRIVER
|
||||
string "EC200T device pin driver path"
|
||||
default "/dev/pin_dev"
|
||||
endif
|
||||
|
||||
config ADAPTER_EC200T_DRIVER_EXTUART
|
||||
bool "Using extra uart to support 4G"
|
||||
|
|
|
@ -43,6 +43,7 @@ static void Ec200tPowerSet(void){ return; }
|
|||
#else
|
||||
static void Ec200tPowerSet(void)
|
||||
{
|
||||
#ifdef ADAPTER_EC200T_USING_PWRKEY
|
||||
int pin_fd;
|
||||
pin_fd = PrivOpen(ADAPTER_EC200T_PIN_DRIVER, O_RDWR);
|
||||
if (pin_fd < 0) {
|
||||
|
@ -73,6 +74,7 @@ static void Ec200tPowerSet(void)
|
|||
PrivClose(pin_fd);
|
||||
|
||||
PrivTaskDelay(10000);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -995,6 +995,21 @@ void BOARD_InitUartPins(void)
|
|||
IOMUXC_GPIO_AD_B1_03_LPUART2_RX,
|
||||
0x10B0u);
|
||||
#endif
|
||||
|
||||
#ifdef BSP_USING_LPUART8
|
||||
IOMUXC_SetPinMux(
|
||||
IOMUXC_GPIO_AD_B1_10_LPUART8_TX,
|
||||
0U);
|
||||
IOMUXC_SetPinMux(
|
||||
IOMUXC_GPIO_AD_B1_11_LPUART8_RX,
|
||||
0U);
|
||||
IOMUXC_SetPinConfig(
|
||||
IOMUXC_GPIO_AD_B1_10_LPUART8_TX,
|
||||
0x10B0u);
|
||||
IOMUXC_SetPinConfig(
|
||||
IOMUXC_GPIO_AD_B1_11_LPUART8_RX,
|
||||
0x10B0u);
|
||||
#endif
|
||||
}
|
||||
|
||||
/***********************************************************************************************************************
|
||||
|
|
|
@ -1,29 +1,44 @@
|
|||
config BSP_USING_LPUART1
|
||||
bool "Enable LPUART1"
|
||||
default y
|
||||
if BSP_USING_LPUART1
|
||||
config SERIAL_BUS_NAME_1
|
||||
string "serial bus 1 name"
|
||||
default "uart1"
|
||||
config SERIAL_DRV_NAME_1
|
||||
string "serial bus 1 driver name"
|
||||
default "uart1_drv"
|
||||
config SERIAL_1_DEVICE_NAME_0
|
||||
string "serial bus 1 device name"
|
||||
default "uart1_dev1"
|
||||
endif
|
||||
bool "Enable LPUART1"
|
||||
default y
|
||||
if BSP_USING_LPUART1
|
||||
config SERIAL_BUS_NAME_1
|
||||
string "serial bus 1 name"
|
||||
default "uart1"
|
||||
config SERIAL_DRV_NAME_1
|
||||
string "serial bus 1 driver name"
|
||||
default "uart1_drv"
|
||||
config SERIAL_1_DEVICE_NAME_0
|
||||
string "serial bus 1 device name"
|
||||
default "uart1_dev1"
|
||||
endif
|
||||
|
||||
config BSP_USING_LPUART2
|
||||
bool "Enable LPUART2"
|
||||
default y
|
||||
if BSP_USING_LPUART2
|
||||
config SERIAL_BUS_NAME_2
|
||||
string "serial bus 2 name"
|
||||
default "uart2"
|
||||
config SERIAL_DRV_NAME_2
|
||||
string "serial bus 2 driver name"
|
||||
default "uart2_drv"
|
||||
config SERIAL_2_DEVICE_NAME_0
|
||||
string "serial bus 2 device name"
|
||||
default "uart2_dev2"
|
||||
endif
|
||||
bool "Enable LPUART2"
|
||||
default y
|
||||
if BSP_USING_LPUART2
|
||||
config SERIAL_BUS_NAME_2
|
||||
string "serial bus 2 name"
|
||||
default "uart2"
|
||||
config SERIAL_DRV_NAME_2
|
||||
string "serial bus 2 driver name"
|
||||
default "uart2_drv"
|
||||
config SERIAL_2_DEVICE_NAME_0
|
||||
string "serial bus 2 device name"
|
||||
default "uart2_dev2"
|
||||
endif
|
||||
|
||||
config BSP_USING_LPUART8
|
||||
bool "Enable LPUART8"
|
||||
default n
|
||||
if BSP_USING_LPUART8
|
||||
config SERIAL_BUS_NAME_8
|
||||
string "serial bus 8 name"
|
||||
default "uart8"
|
||||
config SERIAL_DRV_NAME_8
|
||||
string "serial bus 8 driver name"
|
||||
default "uart8_drv"
|
||||
config SERIAL_8_DEVICE_NAME_0
|
||||
string "serial bus 8 device name"
|
||||
default "uart8_dev8"
|
||||
endif
|
||||
|
|
|
@ -43,7 +43,7 @@ void LPUART1_IRQHandler(int irqn, void *arg)
|
|||
DisableIRQ(UART1_IRQn);
|
||||
|
||||
UartIsr(&serial_bus_1, &serial_driver_1, &serial_device_1);
|
||||
EnableIRQ(UART1_IRQn);
|
||||
EnableIRQ(UART1_IRQn);
|
||||
|
||||
}
|
||||
DECLARE_HW_IRQ(UART1_IRQn, LPUART1_IRQHandler, NONE);
|
||||
|
@ -66,6 +66,23 @@ void LPUART2_IRQHandler(int irqn, void *arg)
|
|||
DECLARE_HW_IRQ(UART2_IRQn, LPUART2_IRQHandler, NONE);
|
||||
#endif
|
||||
|
||||
#ifdef BSP_USING_LPUART8
|
||||
struct SerialBus serial_bus_8;
|
||||
struct SerialDriver serial_driver_8;
|
||||
struct SerialHardwareDevice serial_device_8;
|
||||
|
||||
void LPUART8_IRQHandler(int irqn, void *arg)
|
||||
{
|
||||
|
||||
DisableIRQ(LPUART8_IRQn);
|
||||
|
||||
UartIsr(&serial_bus_8, &serial_driver_8, &serial_device_8);
|
||||
EnableIRQ(LPUART8_IRQn);
|
||||
|
||||
}
|
||||
DECLARE_HW_IRQ(LPUART8_IRQn, LPUART8_IRQHandler, NONE);
|
||||
#endif
|
||||
|
||||
static void SerialCfgParamCheck(struct SerialCfgParam *serial_cfg_default, struct SerialCfgParam *serial_cfg_new)
|
||||
{
|
||||
struct SerialDataCfg *data_cfg_default = &serial_cfg_default->data_cfg;
|
||||
|
@ -426,5 +443,38 @@ int Imxrt1052HwUartInit(void)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef BSP_USING_LPUART8
|
||||
static struct SerialCfgParam serial_cfg_8;
|
||||
memset(&serial_cfg_8, 0, sizeof(struct SerialCfgParam));
|
||||
|
||||
static struct SerialDevParam serial_dev_param_8;
|
||||
memset(&serial_dev_param_8, 0, sizeof(struct SerialDevParam));
|
||||
|
||||
serial_driver_8.drv_done = &drv_done;
|
||||
serial_driver_8.configure = &SerialDrvConfigure;
|
||||
serial_device_8.hwdev_done = &hwdev_done;
|
||||
|
||||
serial_cfg_8.data_cfg = data_cfg_init;
|
||||
|
||||
serial_cfg_8.hw_cfg.private_data = (void *)LPUART8;
|
||||
serial_cfg_8.hw_cfg.serial_irq_interrupt = LPUART8_IRQn;
|
||||
serial_driver_8.private_data = (void *)&serial_cfg_8;
|
||||
|
||||
serial_dev_param_8.serial_work_mode = SIGN_OPER_INT_RX;
|
||||
serial_device_8.haldev.private_data = (void *)&serial_dev_param_8;
|
||||
|
||||
ret = BoardSerialBusInit(&serial_bus_8, &serial_driver_8, SERIAL_BUS_NAME_8, SERIAL_DRV_NAME_8);
|
||||
if (EOK != ret) {
|
||||
KPrintf("Imxrt1052HwUartInit uart error ret %u\n", ret);
|
||||
return ERROR;
|
||||
}
|
||||
|
||||
ret = BoardSerialDevBend(&serial_device_8, (void *)&serial_cfg_8, SERIAL_BUS_NAME_8, SERIAL_8_DEVICE_NAME_0);
|
||||
if (EOK != ret) {
|
||||
KPrintf("Imxrt1052HwUartInit uart error ret %u\n", ret);
|
||||
return ERROR;
|
||||
}
|
||||
#endif
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue