On Tuesday 22 March 2022 16:29:08 Andy Shevchenko wrote: > On Mon, Mar 21, 2022 at 11:07 PM Pali Rohár <pali@xxxxxxxxxx> wrote: > > > > Support for UPF_SPD_* flags is currently broken in more drivers for two > > reasons. First one is that uart_update_timeout() function does not > > the uart_update_timeout() > > > calculate timeout for UPF_SPD_CUST flag correctly. Second reason is that > > userspace termios structre is modified by most drivers after each > > structure > > ... > > > (error handling was ommited for simplification) > > omitted > > > After calling set_active_spd_cust_baud() function SPD custom divisor > > should be active and therefore is_spd_cust_active() should return true. > > > > But it is not active (cfgetospeed does not return B38400) and this patch > > series should fix it. I have tested it with 8250 driver. > > drivers > > > Originally Johan Hovold reported that there may be issue with these > > ASYNC_SPD_FLAGS in email: > > https://lore.kernel.org/linux-serial/20211007133146.28949-1-johan@xxxxxxxxxx/ > > > > > > Johan, Greg, could you please test these patches if there is not any > > regression? > > I'm wondering why we are still supporting this ugly hack? > Doesn't BOTHER work for you? Johan pointed in above mentioned patch that it would break ASYNC_SPD_FLAGS. So I have looked at how are ASYNC_SPD_FLAGS implemented to ensure that they would work correctly... > I would rather expect to have this removed completely. Well, if somebody is going to remove it, I have no objections. But I understood that ASYNC_SPD_FLAGS should be still supported...