Re: RFC: Serial port DTR/RTS - O_NRESETDEV
From: Greg KH <gregkh@linuxfoundation.org>
Date: 2025-11-12 17:12:14
Also in:
linux-serial, lkml
On Wed, Nov 12, 2025 at 08:09:45AM -0800, H. Peter Anvin wrote:
On November 12, 2025 3:22:56 AM PST, Greg KH [off-list ref] wrote:quoted
On Mon, Nov 10, 2025 at 07:57:22PM -0800, H. Peter Anvin wrote:quoted
Honestly, though, I'm far less interested in what 8250-based hardware does than e.g. USB.hahahahahahaha {snort} Hah. that's a good one. Oh, you aren't kidding. Wow, good luck with this. USB-serial adaptors are all over the place, some have real uarts in them (and so do buffering in the device, and line handling in odd ways when powered up), and some are almost just a straight pipe through to the USB host with control line handling ideas tacked on to the side as an afterthought, if at all. There is no standard here, they all work differently, and even work differently across the same device type with just barely enough hints for us to determine what is going on. So don't worry about USB, if you throw that into the mix, all bets are off and you should NEVER rely on that. Remeber USB->serial was explicitly rejected by the USB standard group, only to have it come back in the "side door" through the spec process when it turned out that Microsoft hated having to write a zillion different vendor-specific drivers because the vendor provided ones kept crashing user's machines. So what we ended up with was "just enough" to make it through the spec process, and even then line signals are probably never tested so you can't rely on them. good luck! greg "this brought up too many bad memories" k-hUgh. I have made it very clear that I am very aware that there is broken hardware.
I would posit that there is NO "non-broken" usb->serial devices out there. The closest I have seen was the old IO-Edgeport devices, but they were expensive and got bought out by some other company and in the end didn't succeed due to all of the "cheap" devices/chips out there that just did dumb tx/rx transfers over a fake serial connection.
What I'm trying to do is to deal with the (occasional) case of *non*-broken hardware. Right now Linux breaks the non-broken hardware for it, and I don't think the existence of broken hardware is a good justification for that.
No, but we have to handle both somehow. And given that we still get brand-new UART drivers sent to use every few months, there is just more and more "broken" hardware out there overall. Anyway, good luck coming up with a scheme to handle your crazy connections, I would push back and say "any device that treats a serial control line as a power signal is broken to start with" :) greg k-h