Hello Shanker,
On 27/05/16 15:01, Shanker Donthineni wrote:
On 05/27/2016 08:04 AM, Julien Grall wrote:
On 27/05/16 01:28, Shanker Donthineni wrote:
The ARM Server Base System Architecture describes a generic UART
interface. It doesn't support clock control registers to set
baudrate. So, extend the driver probe() to handle SBSA interface
types and set the baudrate to 115200 for SBSA interfaces.
I cannot find any mention of the baudrate in the SBSA. Where does it come from?
Yes, no where mentioned about the baudrate in SBSA document. I used 115200
based on the the Linux PL011 driver.
Looking at the Linux code, it is a default when there is no valid
configuration (which may not be suitable for any platform?).
Whilst Linux userspace cares about the baudrate, Xen only use it to
configure the hardware. Given that the UART should have been configured
by the hardware-specific software, the proper value should be BAUD_AUTO.
If you look at the code, pl011_init_preirq will read the baud rate when
uart->baud == BAUD_AUTO but will never be used after.
Also the driver is using registers which should not be touch for the SBSA UART
(see appendix B in the SBSA ARM-DEN-0029 v3.0). So this need to be address to
get a proper support.
Yes, I agree with you, Which registers it is touching other than baudrate
control registers?
Well, I only gave a quick look and noticed the difference between the
SBSA and the pl011 (e.g CR, IFLS,...) . I am sure you can find out the
rest of the registers by looking at the code (pl011-uart.h) and the spec.
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel