Hi. My apologies in advance if this is the wrong place for this sort of post/question. (And if so, I'd welcome any/all pointers as to what would be a better venue.)
We're doing a design with the E3815. This is a truly embedded (bare metal) design (RYO bootloader, OS, etc.) I have a SPI flash descriptor set up, and the processor comes out of reset and I switch from 16-bit real mode to 32-bit protected mode. We have one of the GPIOs connected to a hardware watchdog, and I've gotten the E3815 to spit out a 1KHz square wave.
Our design uses HSUART1 (PCI Dev30/Fcn3) for its console port.. but I'm really, REALLY, struggling trying to get any activity on the HSUART.
- I setup the IOBASE (Dev30/Fcn0/offset 0x4c) (and set the EN bit)
- I setup the (memory-mapped I/O) "Uart1 Txd Pad Configuration"
- I setup the "Uart1 Rxd Pad Configuration"
- I setup the SIO HSUART (Dev30/Fcn3) BAR and CMD
- On the HSUART, I setup the "Private Clock Params" so that Sclock = 1.8432MHz
- Then I setup the HSUART's LCR, baudrate divisor, etc. ("normal" UART stuff)
- Then, finally, I try sending characters to the HSUART (in polled mode).
I'm more than happy to provide the real source code I'm using.. but I'm hoping someone is familiar enough with this stuff to either (1) point out the "obvious" step(s) I'm missing, or (2) ask a few questions.
As an aside, we're using the FSP framework. And it doesn't seem to matter whether the GPIO initialization is done before of after invoking FSP's TempRamInit routine. (It works either way.) But.. before or after.. I can't get anywhere with the HSUART. (And we have limited hardware debugging tools.. so being able to print stuff to the console port is pretty important!)
Thanks and regards,
You may want to also post this on the embedded community:
Intel(R) Developer Zone Support
*Other names and brands may be claimed as the property of other