[U-Boot] [PATCH 2/7] serial: serial_msm: fail probe if settings clocks fails
Ramon Fried
ramon.fried at gmail.com
Mon May 14 07:07:31 UTC 2018
On Mon, May 14, 2018 at 1:00 AM, Simon Glass <sjg at chromium.org> wrote:
> Hi Ramon,
>
> On 12 May 2018 at 20:15, Ramon Fried <ramon.fried at gmail.com> wrote:
>> Failure to set the clocks will causes data abort exception when
>> trying to write to AHB uart registers.
>> This patch ensures that we don't touch these registers if clock
>> setting failed.
>>
>> Signed-off-by: Ramon Fried <ramon.fried at gmail.com>
>> ---
>> drivers/serial/serial_msm.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/serial/serial_msm.c b/drivers/serial/serial_msm.c
>> index 119e6b9846..250e48c996 100644
>> --- a/drivers/serial/serial_msm.c
>> +++ b/drivers/serial/serial_msm.c
>> @@ -183,8 +183,8 @@ static int msm_serial_probe(struct udevice *dev)
>> {
>> struct msm_serial_data *priv = dev_get_priv(dev);
>>
>> - msm_uart_clk_init(dev); /* Ignore return value and hope clock was
>> - properly initialized by earlier loaders */
>> + if (msm_uart_clk_init(dev))
>> + return -EINVAL;
>
> Would it not be better to return the error that msm_uart_clk_init()
> returns, rather than -EINVAL?
Yes. you're right. I will fix.
>>
>> if (readl(priv->base + UARTDM_SR) & UARTDM_SR_UART_OVERRUN)
>> writel(UARTDM_CR_CMD_RESET_ERR, priv->base + UARTDM_CR);
>> --
>> 2.14.1
>>
>
> Regards,
> Simon
More information about the U-Boot
mailing list