On 08/17/2018 10:22 AM, Ley Foon Tan wrote:
> According to mailbox spec, software should send urgent command with
> urgent register instead of COUT location. This patch write urgent
> command index to urgent register.
> 
> Signed-off-by: Ley Foon Tan <ley.foon....@intel.com>
> ---
>  arch/arm/mach-socfpga/mailbox_s10.c | 15 +++++++--------
>  1 file changed, 7 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm/mach-socfpga/mailbox_s10.c 
> b/arch/arm/mach-socfpga/mailbox_s10.c
> index cccd1a4..0d906c3 100644
> --- a/arch/arm/mach-socfpga/mailbox_s10.c
> +++ b/arch/arm/mach-socfpga/mailbox_s10.c
> @@ -160,15 +160,15 @@ static __always_inline int mbox_send_cmd_common(u8 id, 
> u32 cmd, u8 is_indirect,
>       u32 buf_len;
>       int ret;
>  
> -     ret = mbox_prepare_cmd_only(id, cmd, is_indirect, len, arg);
> -     if (ret)
> -             return ret;
> -
>       if (urgent) {
>               /* Read status because it is toggled */
>               status = MBOX_READL(MBOX_STATUS) & MBOX_STATUS_UA_MSK;
> -             /* Send command as urgent command */
> -             MBOX_WRITEL(1, MBOX_URG);
> +             /* Write urgent command to urgent register */
> +             MBOX_WRITEL(cmd, MBOX_URG);
> +     } else {
> +             ret = mbox_prepare_cmd_only(id, cmd, is_indirect, len, arg);
> +             if (ret)
> +                     return ret;
>       }
>  
>       /* write doorbell */
> @@ -188,8 +188,7 @@ static __always_inline int mbox_send_cmd_common(u8 id, 
> u32 cmd, u8 is_indirect,
>  
>               if (urgent) {
>                       u32 new_status = MBOX_READL(MBOX_STATUS);
> -                     /* urgent command doesn't have response */
> -                     MBOX_WRITEL(0, MBOX_URG);
> +
>                       /* Urgent ACK is toggled */
>                       if ((new_status & MBOX_STATUS_UA_MSK) ^ status)
>                               return 0;
> 
Applied, thanks.

-- 
Best regards,
Marek Vasut
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to