[PATCH] video: stm32: remove all child of DSI bridge when its probe failed

Patrice CHOTARD patrice.chotard at foss.st.com
Fri Mar 12 13:32:57 CET 2021


Hi

On 3/9/21 3:21 PM, Patrice CHOTARD wrote:
> Hi Patrick
> 
> On 3/4/21 1:10 PM, Patrick Delaunay wrote:
>> From: Patrick Delaunay <patrick.delaunay at st.com>
>>
>> Remove the child device of the STM32 DSI bridge when the driver probe
>> failed to stop futher probe request on panels used with STMicroelectronics
>> board (orisetech_otm8009a.c or raydium-rm68200.c driver).
>>
>> This patch avoid the trace "cannot get reset GPIO" when
>> STM32MP157 device tree is used on stm32MP151 SOC without DSI support.
>>
>> In this hw_version value is 0, as DSI bridge is absent and the panel
>> ofdata_to_platdata is called for each try of panel probe,
>> the gpio reset pin is requested but after dsi father probe failed).
>>
>> For the next request, the PANEL ofdata_to_platdata failed as the gpio
>> is already used.
>>
>> Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
>> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
>> ---
>>
>>  drivers/video/stm32/stm32_dsi.c | 3 +++
>>  1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/video/stm32/stm32_dsi.c b/drivers/video/stm32/stm32_dsi.c
>> index 8891ca4b78..4027e978c8 100644
>> --- a/drivers/video/stm32/stm32_dsi.c
>> +++ b/drivers/video/stm32/stm32_dsi.c
>> @@ -483,6 +483,9 @@ static int stm32_dsi_probe(struct udevice *dev)
>>  	if (priv->hw_version != HWVER_130 &&
>>  	    priv->hw_version != HWVER_131) {
>>  		dev_err(dev, "DSI version 0x%x not supported\n", priv->hw_version);
>> +		dev_dbg(dev, "remove and unbind all DSI child\n");
>> +		device_chld_remove(dev, NULL, DM_REMOVE_NORMAL);
>> +		device_chld_unbind(dev, NULL);
>>  		ret = -ENODEV;
>>  		goto err_clk;
>>  	}
>>
> Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>
> Thanks
> Patrice
> 
Applied to u-boot-stm/next

Thanks

Patrice


More information about the U-Boot mailing list