Я создаю драйвер Xenomai Uart RTDM для IMX28 на основе mxs-auart.c
(то есть версии Linux драйвера). Чтобы сделать это, я также посмотрел на rt_imx_uart.c
, потому что он очень похож на то, что я пытаюсь построить.
Вот мой вопрос: я видел следующее в rt_imx_uart.c
static struct rtdm_driver imx_uart_driver = {
.profile_info = RTDM_PROFILE_INFO(imx_uart,
RTDM_CLASS_SERIAL,
RTDM_SUBCLASS_16550A,
RTSER_PROFILE_VER),
.device_count = RT_IMX_UART_MAX,
.device_flags = RTDM_NAMED_DEVICE | RTDM_EXCLUSIVE,
.context_size = sizeof(struct rt_imx_uart_ctx),
.ops = {
.open = rt_imx_uart_open,
.close = rt_imx_uart_close,
.ioctl_rt = rt_imx_uart_ioctl,
.ioctl_nrt = rt_imx_uart_ioctl,
.read_rt = rt_imx_uart_read,
.write_rt = rt_imx_uart_write,
},
};
относительно класса и подкласса, показанных в этой структуре, могу ли я использовать те же самые для моего драйвера? Как узнать, какие из них подходят для моего варианта использования?