Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp4445454imm; Fri, 18 May 2018 05:21:14 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqEXfEF3F/41wiL3geabm1YIInbbLQJI1BeQFFqTaOche5TdgOgGg8hYHp2ezqxRn//Wx4z X-Received: by 2002:a62:a6ce:: with SMTP id r75-v6mr9272358pfl.82.1526646074481; Fri, 18 May 2018 05:21:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526646074; cv=none; d=google.com; s=arc-20160816; b=fXEx45y1xXNGcK8kllG4MBfZJRWySqFtiHFEt+vQM9TOpUtzQNwWzSTmziiUNOZXZR 1kpv3SFdFQ9UR73UHzDQzc0SlzIQ888+Gk73Lc2JSoo9W6HNiTueF65n5jDLv3CCqcSZ QH8CO93ZSu5dYJcFKn8V3FO9PMoWOCcG+tNsOkS0nBip/dqzzg09iHFvXSNgMw6wZEOk dyuwUD3VLptY1jCQ3mRT6VCrRf61fad3BfQov3wc7fV2OtoejZAO6VIHEcYNa6kXjb1i JlIGGUvuNSaQcjK7JF3xn04z3+KGLtcDYvckJ6rcMiGhi+C0Jbd2zFOviRlSpJuDx25j zoxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:message-id:references :in-reply-to:subject:cc:to:from:date:content-transfer-encoding :mime-version:dkim-signature:dkim-signature :arc-authentication-results; bh=frEyt3P98/2o1SxHUzvxCBfQmgr7QmMsbRIivx/OTNY=; b=W/pyAHDbpUzYEbIEv63Bn0Mq057Pxpy0kr8rfFFNWl7scLewbsSQJY5XWAZGYvCWhI FDFmzWUkkfdUZGB8bapH7JhSJQYULLBdq8hwmbY4svzx1sygAfgGI5K5CM6mW6dm+oj0 7Z+tkIaLS7gJUW1uUTYt+mZ+uzDUEF4EGsiyV3KC0tS5zZk7Zhhf638pqHawQRMqhXCi QCz9rv4Ye6ozkgaxItve/Tunk9C5274D4Pmh0s/RpchBW41vFAQ1HoD9Mz5+UQUHVioR SkRWKCX0T73Ap8VZZmUJYvf1jpbfZkZxiF7AmgyDYZ8upzFJRSNgTTRoqh8/ev92gHaa dtqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=GgohNP3q; dkim=pass header.i=@codeaurora.org header.s=default header.b=nCW8yYwY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e9-v6si7172746pln.72.2018.05.18.05.20.58; Fri, 18 May 2018 05:21:14 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=GgohNP3q; dkim=pass header.i=@codeaurora.org header.s=default header.b=nCW8yYwY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751898AbeERMUn (ORCPT + 99 others); Fri, 18 May 2018 08:20:43 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:53384 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750841AbeERMUl (ORCPT ); Fri, 18 May 2018 08:20:41 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 100FC60C65; Fri, 18 May 2018 12:20:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1526646041; bh=qpvg9ymfNiK1tXb5vBBobGP+iDau9bzhysaaEGTIQHE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=GgohNP3qSZ2VZmaxmnlYmpVV3TbREQInwdi1UjjJn9sLd/DpbLYQfe6TKttPmIKQ9 1uIF4xippX/pAIb/ytGaJ3TFbsAEMaKvvxeDIaRnsbAAax+k2rbkO+P5IfjSDg4Q3J v2o1bJoESkhug0yT/d4JD1FxUzIMdwJhTtNzoTDQ= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from mail.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.codeaurora.org (Postfix) with ESMTP id 72085609D1; Fri, 18 May 2018 12:20:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1526646040; bh=qpvg9ymfNiK1tXb5vBBobGP+iDau9bzhysaaEGTIQHE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=nCW8yYwY/qc5cBsTsv+JMZGOGLsoWnfKocwoTAbQxNvoKzFjaUxIByJrZjv+/uX8I 7034qVLhMLjqL4kgEIHXP73tEH089j514PrdWNsKDTrfHqAbPb6MZHWSrIYP/CoIwn PIhn9TyWRu6yc5sds13k6mkLxoJJecERS3leGTF4= MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Fri, 18 May 2018 17:50:40 +0530 From: Vikash Garodia To: Trilok Soni Cc: hverkuil@xs4all.nl, mchehab@kernel.org, andy.gross@linaro.org, bjorn.andersson@linaro.org, stanimir.varbanov@linaro.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, acourbot@google.com, linux-media-owner@vger.kernel.org Subject: Re: [PATCH 4/4] media: venus: add PIL support In-Reply-To: References: <1526556740-25494-1-git-send-email-vgarodia@codeaurora.org> <1526556740-25494-5-git-send-email-vgarodia@codeaurora.org> Message-ID: <9085424ea7db9cff46a853eadbd66697@codeaurora.org> X-Sender: vgarodia@codeaurora.org User-Agent: Roundcube Webmail/1.2.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Trilok, On 2018-05-18 06:10, Trilok Soni wrote: > Hi Vikash, > > On 5/17/2018 4:32 AM, Vikash Garodia wrote: >> This adds support to load the video firmware >> and bring ARM9 out of reset. This is useful >> for platforms which does not have trustzone >> to reset the ARM9. > > ARM9 = video core here? May be commit text needs little bit more > detail. Yes, ARM9 here refers to the CPU running the firmware inside video core. I can add some more detail on the same. >> +static int store_firmware_dev(struct device *dev, void *data) >> +{ >> + struct venus_core *core; >> + >> + core = (struct venus_core *)data; > > No need of casting. Ok. Will remove the casting. > >> + if (!core) >> + return -EINVAL; >> + >> + if (of_device_is_compatible(dev->of_node, "qcom,venus-pil-no-tz")) >> + core->fw.dev = dev; >> + >> + return 0; >> +} >> + > > >> - ret = venus_boot(dev, core->res->fwname); >> + ret = of_platform_populate(dev->of_node, NULL, NULL, dev); >> + if (ret) >> + goto err_runtime_disable; >> + >> + /* Attempt to register child devices */ >> + ret = device_for_each_child(dev, core, store_firmware_dev); >> + > > and not ret check needed? Not needed. The fn (store_firmware_dev) just stores the child device pointer. Later in the driver, if the child device pointer is not populated, probe is deferred. Again, child device for which this populate is added, is an optional child node. >> + ret = venus_boot(core); >> if (ret) >> goto err_runtime_disable; >>