From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7499EC4828D for ; Wed, 7 Feb 2024 07:20:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=WHXtVNQAYq9p2VOEcBVjkgqP2dfu/sq5Xsk177CdDg4=; b=45MZiX60gAsXfU h1rsr3idaO3BuvX6Q6FL5ulY8T0GV+79q/CJP9gcmAWkkG7Lo0iK50oscqzbK0COQBuJyjmnEHOmi byJlsinD13rM4ximSqDBwMTskX7JXcdWsf0O+iFwZxvl7/qjbnIPQvSj6uPk2XB7NuHReTROqxaLC MwPQ9sziPgUnF/C5pQblkdpTlaZqPDsTULdwfVxFhzo4fN69Nx86Hq0LczXC3OwEOtvNFhu+Ri7nP WdWg7DHv3ImLe2G5Rxkl1JwjnxnyK4LOW6h9XW9+2y9GMamDVr7gUam4D5fajF78anYj1I61Wi3yJ XgYe74YDBM/5fdPTDQpw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rXcDt-00000009v6l-2dGm; Wed, 07 Feb 2024 07:19:57 +0000 Received: from mail-ed1-x532.google.com ([2a00:1450:4864:20::532]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rXcDq-00000009v5o-20YO for linux-arm-kernel@lists.infradead.org; Wed, 07 Feb 2024 07:19:55 +0000 Received: by mail-ed1-x532.google.com with SMTP id 4fb4d7f45d1cf-55ee686b5d5so307873a12.0 for ; Tue, 06 Feb 2024 23:19:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1707290392; x=1707895192; darn=lists.infradead.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=6SYbxDYeGniiA6rdtb6/T8QgKPCQ4hLYc/Upt3Qn8Ng=; b=hRJX/V6VqB7IDSC8Ph4qD+67HouwgMMc3ViJJbcHPNqMI5Bp6jeFEP27eEapggxJwO 8hJHvH+dZo8n8SdcgAv2Y/OI3cTqhqnsmjVwGqvXX82i1E5czo1MaBQkpHpuHBvny2vD QW9znRi+w5XyJX8fT9dfzL2Kcyoz7MbqGBobrVSvd/aqVqzWRa3ISUFHyZqP3+Fk2WYN lg6aFJRV5sQIGBogsv8y558lwKrWnl50b1knOE+xcMLonn0jIg46rVV75EwAGvPGiFNv CFkbR3qqMCThj5dWvcufiuDeBBpgPt5viRG+2PJVn4tR/RklgwCK+ajPhtWifYjs9y2i FNQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707290392; x=1707895192; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=6SYbxDYeGniiA6rdtb6/T8QgKPCQ4hLYc/Upt3Qn8Ng=; b=R696c17yiFyh+xETWNoDJNyDpN2kWW4S78GQLkGKFIg1lE0sJDOqZHe8cKwWPeS76O WDZaBZLhTFX9H0jGnhpNR15v7phmBH1mmMg6lGEHaw1JUUjo44eTO0iLRl65MWYCuPWi fePz3PjqgTjowG/vQc866Wfl3Xds1LXWeTOTLPfIRRKyHPeo4nz3x0Gk00GCv50fdLjV P+KNE5j2eyyk8Nh4p5R+5qQPcKNLn4uU5dFlzv+jNPhWNoVtB0EdLRGlJHJUJoERLgaq AiNgAT5zpasg6mZ7+Hg54/gXJTPnxCbSjsZtuQVYsTYGAS87ohm4XIvQLEVrfBwUFXhE abYw== X-Gm-Message-State: AOJu0YxeAh48stuRDJhZ7YnZ4W0VHP4qCf1nU61JZ0LzUcW0JWbrr9TA f39oKJgeaubIKqbER752+54EC6LI05rdm3jUf8OFecav0mvkj5ANWG6kUhrlGb0= X-Google-Smtp-Source: AGHT+IGdBxPyBXyrnHPSHM2F9u/oCyDhNJlzKgFj2xDI/+5OYO2QdgsC1LNX75LwkVn1O3UVPPnVZA== X-Received: by 2002:a05:6402:1a44:b0:560:9906:9f31 with SMTP id bf4-20020a0564021a4400b0056099069f31mr3161100edb.27.1707290391944; Tue, 06 Feb 2024 23:19:51 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCW/zdcZSDg4pLH1Rt+RivOPBAEybdDR4XOBF+p0P2MTVI+ITlPExLJz6aP2vR4wY4bD0Kr+LBEn+X5BkmRuCuTKzXHWhd941xh3jYX+JLHAmV90kAmRWUNMWj7iAsSe3JC1WYIqzyWYWKQrXTB9jvgYxIqDpdZZ5qy2GY7FGWOmzZbxXa+X1C2vPCdty640ZQP9B5GftyhfDvl0ro9jYeX42sxJzEacqqg92RmcQr9cXMsmvmALrDL9j5jA74sKkW+MF+y8Qq3lkNA2Gj7ddYm7QHlyjW0K0K78DB0qzPcRH9M5TXELrwvgmM42/kjlCJARJnvdlTeqzwKZt9AaGZmUGeLZ/FGYZIFegYpoam2Y4PjsNOfFR+pwxKTtLGwpyji8GUUKrL4= Received: from linaro.org ([62.231.97.49]) by smtp.gmail.com with ESMTPSA id f1-20020aa7d841000000b00560cd4f3098sm360696eds.95.2024.02.06.23.19.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Feb 2024 23:19:51 -0800 (PST) Date: Wed, 7 Feb 2024 09:19:50 +0200 From: Abel Vesa To: Dmitry Baryshkov Cc: Stephen Boyd , Matthias Brugger , Bjorn Andersson , Konrad Dybcio , AngeloGioacchino Del Regno , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org Subject: Re: [PATCH RFC 1/2] spmi: Add support for multi-master Message-ID: References: <20240207-spmi-multi-master-support-v1-0-ce57f301c7fd@linaro.org> <20240207-spmi-multi-master-support-v1-1-ce57f301c7fd@linaro.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240206_231954_554659_2D8A96FD X-CRM114-Status: GOOD ( 22.13 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 24-02-07 01:55:39, Dmitry Baryshkov wrote: > On Wed, 7 Feb 2024 at 01:34, Abel Vesa wrote: > > > > Some newer SPMI controllers support multiple bus masters. > > Such a master can control multiple slave devices. The generic > > framework needs to be able to pass on the master id to the > > controller-specific driver. So do that. The framework will > > check if the devicetree child nodes are actually bus masters > > and will register the devices for each master. The legacy > > approach will still be supported for backwards compatibility. > > Please remind me, are those two actual bus musters driving a single > bus in parallel or two SPMI buses being handled by a single device? In > the latter case this implementation is incorrect. There should be > multiple spmi_controller instances, one for each bus. Allocate them in > a loop and set ctrl->dev.of_node after allocating. It's two SPMI buses (two sets of wires) handled by the same controller, HW-wise. If we register two spmi controllers with the kernel framework, it will be HW inaccurate, because there is just one controller which has multiple masters. I'm not saying it might not work. But, to me, it looks more like a hack. Basically, we would be mapping HW bus masters to kernel controllers. > > > > > Signed-off-by: Abel Vesa > > --- > > drivers/spmi/spmi-mtk-pmif.c | 6 ++-- > > drivers/spmi/spmi-pmic-arb.c | 10 +++--- > > drivers/spmi/spmi.c | 76 ++++++++++++++++++++++++++++++-------------- > > include/linux/spmi.h | 10 +++--- > > 4 files changed, 67 insertions(+), 35 deletions(-) > > -- > With best wishes > Dmitry _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel