From mboxrd@z Thu Jan 1 00:00:00 1970 From: yfw Subject: Re: [PATCH] soc: qcom: Introduce WCNSS_CTRL SMD client Date: Fri, 23 Oct 2015 19:37:25 +0800 Message-ID: <562A1BF5.2030900@linaro.org> References: <1442857975-30258-1-git-send-email-bjorn.andersson@sonymobile.com> <5628B9A2.4050309@linaro.org> <20151022135056.GV24668@usrtlx11787.corpusers.net> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from mail-pa0-f43.google.com ([209.85.220.43]:34775 "EHLO mail-pa0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751721AbbJWLhb (ORCPT ); Fri, 23 Oct 2015 07:37:31 -0400 Received: by padhk11 with SMTP id hk11so116733776pad.1 for ; Fri, 23 Oct 2015 04:37:30 -0700 (PDT) In-Reply-To: <20151022135056.GV24668@usrtlx11787.corpusers.net> Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Bjorn Andersson Cc: Andy Gross , "linux-kernel@vger.kernel.org" , "linux-arm-msm@vger.kernel.org" , "linux-soc@vger.kernel.org" Hi Bjorn, On 2015/10/22 21:50, Bjorn Andersson wrote: > On Thu 22 Oct 03:25 PDT 2015, yfw wrote: > >> Hi Bjorn, >> >> On 2015/9/22 1:52, Bjorn Andersson wrote: > [..] >> >> I have a question: Do you have plan to add the nob to trigger wcnss firmware >> downloading which is also common for wifi and BT? >> > > In caf the wcnss driver is actually two drivers intermingled; > * a SMD client driver, responsible for pushing NV, something related to > calibration, some power properties and so on > > * a platform_driver implementing the wcnss specifics of the PIL through > some hooks and providing the knob to trigger the PIL. > > The first driver is related to the "OS" running on the wcnss, so that > should follow the life cycle of the SMD channel "WCNSS_CTRL". This is > what this patch provides - it loads the NV every time the wcnss core is > booted. > > > For the second part, I strongly believe that the PIL implementation > should deal with the specifics (e.g. regulator handling and > xo_calibration), rather than having a piece bolted on elsewhere - so > that's in the remoteproc-wcnss driver. > Yes. I meant this remoteproc-wcnss driver. Will you try to upstream it? > > Left is a mechanism to trigger the thing to boot and shutdown. One > potential solution would be to have the module_init/exit call > rproc_boot/shutdown from the WiFi & BT drivers. That way if one loads > the wcn36xx driver, the core is booted. This would also fit quite nicely > for other things - e.g. load the ALSA driver to trigger the ADSP > loading. > > The problem here is that we're then forced to either have a method of > deferring the rproc_boot() until the firmware is available or we always > must compile these drivers as kernel modules. This because the > file system isn't there during boot to provide the firmware. The firmware file could be put to initrd. That should allow wcn wifi driver builtin. > > We do have the same thing in e.g. the Broadcom WiFi/BT solution and > there seems to be discussions related to this. > > > So for now, I punted and put a knob in the wcnss remoteproc driver. > > Regards, > Bjorn > Regards Yin, Fengwei