From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2A22A1A38DA; Fri, 15 Mar 2024 14:22:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710512558; cv=none; b=YiSkLHLjPHgcgtViil62YhlSk2OSVEP7g7Wp07RQcO1wKyPN0W2Y6jmK5LtR3RYPnW9brg/H75no8b8i6wSdRRXsX56apnfX495yjrdcl6hH0I47JhFlkdciKFv22i4mgVi31GnKeO5WGYAwFkLWP5MdYbrFqneTLoPJmyUbBVg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710512558; c=relaxed/simple; bh=toIEnnzYNiwyWD6Gb0TYT5sbPnu9iUMI7CYXzC9b3+4=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=t7382VyWhULKTok1qlpCDmBwj1q+oaYhHJfyWYhGZmJIQD9ktv/redgps4drYgyGI0dSbCaJLXRhrpsk2D1Ro+Q8M+b7aNyYRyBDixIbmb/q0s/BDppsTmGhmXzc1U4MW4XoJyeN19WtQsXK3FOTq727+oWUkZ58H/irYTzghzo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D1B81C15; Fri, 15 Mar 2024 07:23:09 -0700 (PDT) Received: from e130802.arm.com (e130802.arm.com [10.1.34.31]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 03D5D3F73F; Fri, 15 Mar 2024 07:22:30 -0700 (PDT) Date: Fri, 15 Mar 2024 14:22:22 +0000 From: Abdellatif El Khlifi To: Sudeep Holla Cc: Robin Murphy , Bjorn Andersson , Sudeep Holla , Mathieu Poirier , Rob Herring , Liviu Dudau , Lorenzo Pieralisi , Krzysztof Kozlowski , Conor Dooley , Drew.Reed@arm.com, Adam.Johnston@arm.com, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-remoteproc@vger.kernel.org Subject: Re: [PATCH 3/3] dt-bindings: remoteproc: Add Arm remoteproc Message-ID: <20240315142222.GA38748@e130802.arm.com> References: <20240301164227.339208-1-abdellatif.elkhlifi@arm.com> <20240301164227.339208-4-abdellatif.elkhlifi@arm.com> <8c784016-9257-4d8a-b956-a0a406746c76@arm.com> <20240314134928.GA27077@e130802.arm.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Hi Sudeep, On Thu, Mar 14, 2024 at 03:19:13PM +0000, Sudeep Holla wrote: > > The plan for the driver is as follows: > > > > Step 1: provide a foundation driver capable of turning the core on/off > > Step 2: provide mailbox support for comms > > Step 3: provide FW reload capability > > > > Steps 2 & 3 are waiting for a HW update so the Cortex-A35 (running Linux) can > > share memory with the remote core. > > > > Honestly, I would prefer to know the overall design before pushing any partial > solution. If you know the final complete solution, present the same with > the complete device tree binding for better understanding and review. Sounds good to me. I'll make the binding as complete as possible. > Agreed, but it is part of a bigger block with other functionality in place. > MFD/syscon might be better way to use these registers. You never know in > future you might want to use another set of 2-4 registers with a different > functionality in another driver. > > > It makes sense to me to use a mapped region of 8 bytes for both registers rather > > than individual registers (since they are consecutive). > > Not exactly. Are you sure, Linux will not have to use another other registers > in that block ? Will you keep creating such (random if I may call it so) > bindings for a smaller sets of register under "Host Base System Control > registers". > > I would see if it makes sense to put together a single binding for > this "Host Base System Control" register(not sure what exactly that means). > Use MFD/regmap you access parts of this block. The remoteproc driver can > then be semi-generic(meaning applicable to group of similar platforms) > based on the platform compatible and use this regmap to provide the > functionality needed. I like the idea of using syscon/regmap to represent the "Host Base System Control registers" area. Thank you for suggesting that. I think syscon is the way to go (rather than MFD). With syscon we can use the generic syscon driver that converts a set of MMIO registers to a regmap, allowing it to be accessed from multiple device drivers. In our case these MMIO registers will be the "Host Base System Control registers". remoteproc will be a child node under sysctrl node. Cheers, Abdellatif