On 05/04/2023 12:17, Michal Orzel wrote:
In both vpl011_read_data() and vpl011_read_data_xen(), there is a comment
stating that the guest is expected to read the DR register only if the
TXFE bit of FR register is not set. This is obviously logically wrong and
it should be RXFE (i.e. RX FIFO empty bit set -> nothing to read).
NIT:- I will prefer if the PL011 TRM is mentioned with the relevant section.

Signed-off-by: Michal Orzel <michal.or...@amd.com>
Reviewed-by: Ayan Kumar Halder <ayan.kumar.hal...@amd.com>
---
  xen/arch/arm/vpl011.c | 8 ++++----
  1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/arm/vpl011.c b/xen/arch/arm/vpl011.c
index 2fa80bc15ac4..0186d8a31834 100644
--- a/xen/arch/arm/vpl011.c
+++ b/xen/arch/arm/vpl011.c
@@ -143,8 +143,8 @@ static uint8_t vpl011_read_data_xen(struct domain *d)
      /*
       * It is expected that there will be data in the ring buffer when this
       * function is called since the guest is expected to read the data 
register
-     * only if the TXFE flag is not set.
-     * If the guest still does read when TXFE bit is set then 0 will be 
returned.
+     * only if the RXFE flag is not set.
+     * If the guest still does read when RXFE bit is set then 0 will be 
returned.
       */
      if ( xencons_queued(in_prod, in_cons, sizeof(intf->in)) > 0 )
      {
@@ -202,8 +202,8 @@ static uint8_t vpl011_read_data(struct domain *d)
      /*
       * It is expected that there will be data in the ring buffer when this
       * function is called since the guest is expected to read the data 
register
-     * only if the TXFE flag is not set.
-     * If the guest still does read when TXFE bit is set then 0 will be 
returned.
+     * only if the RXFE flag is not set.
+     * If the guest still does read when RXFE bit is set then 0 will be 
returned.
       */
      if ( xencons_queued(in_prod, in_cons, sizeof(intf->in)) > 0 )
      {

Reply via email to