/ / Як додати до Linux більше 4-х серійних tty-пристроїв? - linux, serial-port, linux-device-driver

Як додати більше 4 серійних пристроїв tty в Linux? - linux, serial-port, linux-device-driver

Коли я запускаю команду "dmesg | grep tty", то цевідображає лише 4 ttyS пристроїв від 0 до 3. Я використав команди #MAKADEV і makenode, і вони створили ttyS ... файли в папці / dev. Отже, я не можу їх використовувати, оскільки їх властивості, такі як адреси MMIO, не встановлені. Я чув про команду "setserial", але я не бачу, що він встановлює послідовний пристрій MMIO адресу. Чи є так, як я можу це зробити?

Це критично, тому що мій комп'ютер має 8 послідовних портів, і я хочу використовувати їх усім. У моєму Linux я можу використовувати лише 4 з них ..

Відповіді:

5 за відповідь № 1

Якщо ваша система використовує драйвер 8250 для обробки послідовних портів, будь ласка, перевірте CONFIG_SERIAL_8250_NR_UARTS Параметр у файлі конфігурації вашого ядра. Це визначає максимальну кількість послідовних портів, якими керуватиме ядром.

Від Kconfig для цього водія:

конфігурація SERIAL_8250_NR_UARTS int "Максимальне числоз послідовних портів 8250/16550 " залежить від SERIAL_8250 за замовчуванням "4" допомогти Встановіть це значення на кількість послідовних портів, якими хочете водія підтримувати. Це включає в себе всі порти, виявлені за допомогою ACPI або Перерахування PCI та будь-які порти, які можуть бути додані під час виконання через hot-plug або будь-які ISA багатопортове серійні картки.  конфігурація SERIAL_8250_RUNTIME_UARTS int "Кількість послідовних портів 8250/16550 для реєстрації під час виконання" залежить від SERIAL_8250 діапазон 0 SERIAL_8250_NR_UARTS за замовчуванням "4" допомогти Встановіть це на максимальну кількість послідовних портів, які ви хочете ядро зареєструвати під час завантаження. Це можна скасувати з параметром модуля "nr_uarts" або параметром завантаження 8250.nr_uarts

Швидше за все, вартість CONFIG_SERIAL_8250_NR_UARTS це ще 4 у вашій системі. Якщо так, ви можете встановити більшу цінність у конфігурації ядра та перебудувати ядро, щоб зробити всі порти доступними.

Зауважте, що 8250.nr_uarts Параметр runtime kernel може встановлювати лише кількість портів між 0 і CONFIG_SERIAL_8250_NR_UARTS, тому недостатньо встановити його під час завантаження.