Hi, I haven't followed UDoo for a while but have a Quad here. I'm really interested by the X86 as I'm much more familiar with x86 baremetal programming than ARM. I already have a minimal kernel that runs on a PC, but I'd just like to make sure that the hardware on the UDoo x86 is well enough documented that I will be able to write drivers. I'm especially concerned about the USB stack / video. I have EHCI drivers for my PC kernel, but need to know that I'll be able to do the same for UDoo. Cheers, Adam
Adam, You'll next xHCI driver. BTW in your view, what would constitute the baremetal? Minimum bootloader (e.g., coreboot, libreboot), strip-down Linux kernel, some sort of realtime microkernel (e.g., VxWorks), specialized kernel (e.g., vSphere), or others? (I assume you don't care about Intel HD graphics driver...) ccs_hello
Hi, Thanks for the reply. As far as I'm concerned, "baremetal" means my own kernel, which I already have working on PC (both i686 and x86-64). I don't mind using someone else's bootloader - I currently use GRUB2 but am happy to use anything. I can write my own minimal Intel graphics driver as they are fairly well documented. Essentially, I guess I'm asking whether any of the hardware on this board is undocumented. As long as datasheets / specs exist for everything, I can work out the rest myself Thanks again, Adam Edit: That's good re: xHCI too - it sounds like at the very least, my custom kernel should be able to access USB and Video with already documented open interfaces.
The known hardware resources are here, it is up to you to decide what is is not documented. https://www.udoo.org/docs-x86/Hardware_Reference/Resources.html
Thanks. It looks like its a fairly standard UEFI BIOS with ACPI tables, so happy days! I can find all the ports and MMIO information through there. UDoo X86 (pre-)ordered! Cheers, Adam