device and driver connection

There is a device that is connected to the controller uart port (in Linux 2.6), and which generates an interrupt on gpio. I wrote the driver of the Space user to communicate with the device, but I want to move this driver into the kernel. Does anyone have a similar experience?

There is a driver of uart port from freescale do not really understand how this driver connects to the device through function probe (). Not yet found where the structure of the device is created and at what point and at what time is called probe (). Perhaps the connection occurs during file creation /dev/ttymxc0 ..1 ..2 ..3 (associations on the port) via udev (also not yet know how udev works)?

Another question, if I'll write a driver of the external uart device, then would not it be a conflict when two drivers are connected to the same device? Or the driver who was the first one and managed?

Здравствуйте.
Есть некое устройство, которое подключается к уарт порту контроллера (на линукс 2.6) и которое генерирует прерывание на gpio. Написал драйвер из юзер спейс для общения с устройством, но хочу перенести этот драйвер в ядро. Пока никак не получается. Есть ли у кого подобный опыт? Опыта у меня в написании драйверов особого нет.

Есть драйвер уарт порта от freescale не очень понимаю как этот драйвер коннектится с уарт устройством посредством функции probe(). Не нашел пока где создается структура устройства и в какой момент вызывается probe(). Возможно связь происходит во время создания файла /dev/ttymxc0 ..1 ..2 ..3 (ассоцияция с портом) через udev (тоже пока не знаю как udev работает)?

Еще вопрос, если напишу свой драйвер внешнего устройства, то не будет ли конфликта, когда два драйвера подключаются к одному устройству? Или тот драйвер который первый тот и успел? Вобщем одни вопросы, а как реализовать пока не представляю.)

There is a problem with UART

There is a problem with UART since it is open connected bus. Though you may still do that if your platform uses ACPI or DT device description model.