[lvc-project] [PATCH v2] serial: 8250_mtk: correct max baud rate in set_termios() method
Sergey Shtylyov
s.shtylyov at omp.ru
Tue Oct 14 22:53:27 MSK 2025
On 10/14/25 8:49 PM, Fedor Pchelkin wrote:
[...]
>>>>> Mediatek MT798x даташиты, которые довелось посмотреть, не исчерпывают
>>>>> всех возможных вариантов, а сотрудник Медиатека утверждал про макс.
>>>>> скорости до 4 Mbps.
>>>>
>>>> Поскольку мы (теперь!) выяснили, что 4 Mbps на MT7988 просто не работает,
>>>> то вопрос вроде как отпал? :-)
>>>
>>> Порыскав ещё, нашёл BPI-R4 Lite на MT7987A, в даташите которого заявляется
>>> поддержка до 4 Mbps (не ожидал, ведь, казалось бы, это же lite версия).
>>
>> Это всё хорошо, но хочу заметить, что MT7987A в mainline, похоже, не
>> поддерживается... :-)
>
> А, забавно)
>
> Ну, когда-то должен дойти, с базовым Bpi r4 тоже не быстро процесс шёл.
> https://github.com/frank-w/BPI-Router-Linux/tree/6.17-r4lite
>
> Основной посыл однако в том, что некоторый другой подобный SoC с 4M уже
> может поддерживаться в mainline, а мы его просто не смогли сейчас отыскать.
Да я и не спорю, в общем..
>> Я всё-таки думаю в сторону добавления в mtk8250_of_match[] записей для
>> MT7981/8 с 3 Mbps, а в существующую запись - 4 Mbps. Такой вариант устроит
>> (исправление DT в этом случае не нужно, насколько я могу видеть)?
>
> Выделять отдельно MT7981/8, всё другое оставляя под общей гребёнкой как-то
> странно - там же ещё куча разных драйверов есть с .compatible = "mediatek,mt6577-uart".
Разных device trees, в смысле? Я посмотрел на Documentation/devicetree/bindings/
serial/mediatek,uart.yaml, и этот "compatible" должен асегда присутствовать; я также
посмотрел несколько DTs - и во всех было "compatible" с двумя строками в значении...
> Их не будем трогать, оставив для анализа кому-то на будущее?
Нет, я как раз собирался обозначить для этого .compatible максимальную скорость
в 4 Gbps - ну, то есть, сделать её дефолтной...
> Вариант выглядит рабочим, но нужно ли так заморачиваться, если и с верхней
> границей 4M всё также будет (не)работать, а исходная проблема переполнения
> будет в любом случае решена, не знаю.
Да, моё решение будет довольно тяжеловесным - я начинаю склоняться к решению
проблемы переполнения (и деления на 0) "малой кровью"...
> Полагаю, подобный кастомный ->set_termios только у Медиатек встречается?
В drivers/tty/serial/8250/? Отнюдь нет - тот же 8250_omap.c и ещё драйвера
2-3...
> Неужели в других 8250-драйверах с подобной проблемой поддержки разных
> макс. скоростей для разных устройств не сталкивались, надо бы глянуть.
Такого не заметил (хотя мог и пропустить). Как такие вещи делаются, япримерно предсталяю (хотя именно в случае 8250
MBR, Sergey
More information about the lvc-project
mailing list