From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthias Brugger Subject: Re: [PATCH v4 3/3] media: mtk-mdp: Fix mdp device tree Date: Wed, 7 Jun 2017 11:07:25 +0200 Message-ID: <59ac9ca0-3f2f-fa65-011d-c832e4ced265@gmail.com> References: <1495509851-29159-1-git-send-email-minghsiu.tsai@mediatek.com> <1495509851-29159-4-git-send-email-minghsiu.tsai@mediatek.com> <2407aa14-610d-0252-f264-edf22961752e@xs4all.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <2407aa14-610d-0252-f264-edf22961752e-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org> Content-Language: en-US Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Hans Verkuil , Minghsiu Tsai , Hans Verkuil , daniel.thompson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, Rob Herring , Mauro Carvalho Chehab , Daniel Kurtz , Pawel Osciak , Houlong Wei Cc: srv_heupstream-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org, Eddie Huang , Yingjoe Chen , Wu-Cheng Li , devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org List-Id: devicetree@vger.kernel.org On 07/06/17 10:56, Hans Verkuil wrote: > On 07/06/17 10:44, Matthias Brugger wrote: >> Hi Hans, hi Mauro, >> >> On 23/05/17 05:24, Minghsiu Tsai wrote: >>> From: Daniel Kurtz >>> >>> If the mdp_* nodes are under an mdp sub-node, their corresponding >>> platform device does not automatically get its iommu assigned properly. >>> >>> Fix this by moving the mdp component nodes up a level such that they are >>> siblings of mdp and all other SoC subsystems. This also simplifies the >>> device tree. >>> >>> Although it fixes iommu assignment issue, it also break compatibility >>> with old device tree. So, the patch in driver is needed to iterate over >>> sibling mdp device nodes, not child ones, to keep driver work properly. >>> >>> Signed-off-by: Daniel Kurtz >>> Signed-off-by: Minghsiu Tsai >>> Signed-off-by: Matthias Brugger >>> >> >> Are you OK to take this patch, or do you have any further comments? > > Nope, it's all good. Queued for 4.13. > Thanks! I queued the other two in v4.12-next/dts64 Regards, Matthias > Regards, > > Hans > >> >> Regards, >> Matthias >> >>> --- >>> drivers/media/platform/mtk-mdp/mtk_mdp_core.c | 12 ++++++++++-- >>> 1 file changed, 10 insertions(+), 2 deletions(-) >>> >>> diff --git a/drivers/media/platform/mtk-mdp/mtk_mdp_core.c b/drivers/media/platform/mtk-mdp/mtk_mdp_core.c >>> index 9e4eb7d..8134755 100644 >>> --- a/drivers/media/platform/mtk-mdp/mtk_mdp_core.c >>> +++ b/drivers/media/platform/mtk-mdp/mtk_mdp_core.c >>> @@ -103,7 +103,7 @@ static int mtk_mdp_probe(struct platform_device *pdev) >>> { >>> struct mtk_mdp_dev *mdp; >>> struct device *dev = &pdev->dev; >>> - struct device_node *node; >>> + struct device_node *node, *parent; >>> int i, ret = 0; >>> mdp = devm_kzalloc(dev, sizeof(*mdp), GFP_KERNEL); >>> @@ -117,8 +117,16 @@ static int mtk_mdp_probe(struct platform_device *pdev) >>> mutex_init(&mdp->lock); >>> mutex_init(&mdp->vpulock); >>> + /* Old dts had the components as child nodes */ >>> + if (of_get_next_child(dev->of_node, NULL)) { >>> + parent = dev->of_node; >>> + dev_warn(dev, "device tree is out of date\n"); >>> + } else { >>> + parent = dev->of_node->parent; >>> + } >>> + >>> /* Iterate over sibling MDP function blocks */ >>> - for_each_child_of_node(dev->of_node, node) { >>> + for_each_child_of_node(parent, node) { >>> const struct of_device_id *of_id; >>> enum mtk_mdp_comp_type comp_type; >>> int comp_id; >>> > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html