Re: [PATCH v2 30/34] staging: vchiq_arm: Give vchiq children DT nodes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Phil, Laurent,

On Mon, 2020-05-04 at 12:26 +0300, Laurent Pinchart wrote:
> From: Phil Elwell <phil@xxxxxxxxxxxxxxx>
> 
> vchiq kernel clients are now instantiated as platform drivers rather
> than using DT, but the children of the vchiq interface may still
> benefit from access to DT properties. Give them the option of a
> a sub-node of the vchiq parent for configuration and to allow
> them to be disabled.
> 
> Signed-off-by: Phil Elwell <phil@xxxxxxxxxxxxxxx>
> Signed-off-by: Jacopo Mondi <jacopo@xxxxxxxxxx>
> ---
>  .../staging/vc04_services/interface/vchiq_arm/vchiq_arm.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
> b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
> index dd3c8f829daa..2325ab825941 100644
> --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
> +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
> @@ -2734,12 +2734,20 @@ vchiq_register_child(struct platform_device *pdev,
> const char *name)
>  	pdevinfo.id = PLATFORM_DEVID_NONE;
>  	pdevinfo.dma_mask = DMA_BIT_MASK(32);
>  
> +	np = of_get_child_by_name(pdev->dev.of_node, name);
> +
> +	/* Skip the child if it is explicitly disabled */
> +	if (np && !of_device_is_available(np))
> +		return NULL;

I think this is alright, although I'd reshufle the code a little so it looks
nicer:

+	/* Skip the child if it is explicitly disabled */
+	np = of_get_child_by_name(pdev->dev.of_node, name);
+	if (np && !of_device_is_available(np))
+		return NULL;

>  	child = platform_device_register_full(&pdevinfo);
>  	if (IS_ERR(child)) {
>  		dev_warn(&pdev->dev, "%s not registered\n", name);
>  		child = NULL;
>  	}
>  
> +	child->dev.of_node = np;

Is this really needed? I'd rather have the parent's np (as commented in patch
26) as long as this is not a real device-tree defined platform device.

Regards,
Nicolas

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux