Bonfra wrote:
vvaltchev wrote:
Are you sure you’re accessing the real serial port on hardware?
I'm connecting the cable to this port here:
I have no doubt you're connecting the cable in the right place. I was talking from the kernel point, if you're really accessing the controller that you're connecting. Legacy I/O ports like 0x3f8 might look like they're working, but in reality there's nothing on the HW side.
Bonfra wrote:
It's not really new; it's an optiplex 780 from 2010.
2010 means "super new". When it's about x86, with "modern" hardware kernel developers here usually mean anything after year 2000, that supports ACPI etc. In order use the 0x3f8 I/O port, you need a "legacy PC" machine, probably from mid '90s or older.
Bonfra wrote:
vvaltchev wrote:
You’ll have to discover it on boot, and very likely use memory mapped IO.
So I need to call some bios interrupt to get this information? which one?
As Korona said, you'd need to discover it via ACPI. It's a
ton of work to get there. The quickest shortcut is to find UART's controller physical memory address using another operating system like Linux and (temporarily) hard-coding it in your project. I know it's far from great but.. "modern" hardware is complex to manage.