From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D68652F6571; Wed, 13 Aug 2025 11:00:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082822; cv=none; b=cYEsR68cLaDvw7FTpdFVPWZUpedqGS+1iPL20NSaYxoYHsdAlhGMjmv1nsmZB5AH65+1E8QvNJz7xpaAy1O6G6TcsrATNeR792jgo8OYDYucPyQNSR1KQp+6xhE+N2f3QK4cIUe6Dvfl7IErLX4+C5p7VKPSmC6iNDYUFvnn/QI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082822; c=relaxed/simple; bh=OyUyiVNH1nNJRzK5OA+EFXhH7ke4k69wyUohAzjN7Qo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ETAmvrYfusVjqEbojnG6Y1clgAast5yV05QTJ/AVBi3ZS8rnbq9Ci+ptiU1teFhrit6FLvc6+Wjy4Xgx/53TRAx65xPM8Vyo/Gv2mC4P9iT1rPAGvGtiI8FajAgYUei8Yu+pVYeYZOS+njT57Top5hGpsqptwDNaGkxd4gTJBUk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=emQb+Aat; arc=none smtp.client-ip=209.85.208.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="emQb+Aat" Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-6180ce2197cso8235312a12.2; Wed, 13 Aug 2025 04:00:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082819; x=1755687619; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=sMxZP0Gqr+LI7kYspfoImpeTf4WZO3hif0vxeFkbU8Q=; b=emQb+AatyoXqBaJ2y1wxC4mPM7fnJ30Xjdl6p+hyiErjYiGlm6Rfa4KKU1Fk4MQbsP asHTAAEf5tTUjRh9sQkph1fZG4T2QpHBbARUFEuixJ6Ux5fJw87g5vHYXTrhmy7OZGXW 8Kbm3e5+/6p99kUKWYFK60SF0MEmu/rAxs+J8cR8rSDOJzPd631hB8aLmSnTDaOjtmAV fPGB8XTldweToGVNsB18arhwlGDgIC8v5eTnpkopefZir4VAg78Be8G5Zwdk4Cft0jly ThoMdBNr7v18/AKrRGnmzPGcrI62jfG7VoP/RFInA+7FRTGXtsM2B5Dh/fkbHzo8FDHe sf2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082819; x=1755687619; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sMxZP0Gqr+LI7kYspfoImpeTf4WZO3hif0vxeFkbU8Q=; b=RwWVtx9LR+gJfoVSmxMEbvrYBc/dR3AQiySYPbOmADORMd8dqbxu4H6iRHiRXBL/rl 9/TkymMF/dyktHmfFQUQZ/ATMkOgKUHUKgeplKTLtXfaBOQLn0UW450wh8hkBLqT9ztP Wk1hBz+1bBObtSYqBybkM4Rl4WdxPknlt5llto7nNyAK0Wp56SGGtXlKz9+Ai6+MLW7u 1dgCrXRF+py/ElDp9h7t/Q2TlZGdRNS9ctlWFAy7uWVVobqw5yCs23FbYJa+w68Nsjmq ObFnk/GrPSs3fhZQt5YnP2Z3Gc03Bkgd4cLSIQ4P8S0xE3V9uFSfXIdzYdhW2lQVmqIE sSSg== X-Forwarded-Encrypted: i=1; AJvYcCWopVaybD0xjodT6yO/9JpV8ydsdp7082Nx8+wVbvM3sCUNbE5sorWkLaKsUTB/8Fng+H3WLlbM+jFF@vger.kernel.org, AJvYcCWs2E5almBDDGYzW84sG7zNcrd7JK2BCkH+FgV48y3kjOmt3SJQAbxTPEsaNT6aJ/FWVcHd/wqIUHAIidrj@vger.kernel.org, AJvYcCWwH/VquQcxjBbbnDnUcFc54BM0Q4nTbZw+aHPOLIRlVyvb3XIQ+o3NOnOoPRhI/G+H3jMn4VcXXrhl@vger.kernel.org X-Gm-Message-State: AOJu0YwVY5EkvYGemlLQwTNLzzhHcwWTsaT6YeZ+gyTLI2MV4trW1nEI eC6v4NnLZplzPQG68M43iVxENXm94MdHSDO4+/L2IqfKTG6gc37VKl2q X-Gm-Gg: ASbGncvFwmCgYzvUXLF3vcR330YflQZlY+ThilxnvYWgnCqN44uVzZ5LxMV31G31kbg V3ORi//kD8fBuVGlrmZ46Gt9EYhZSrP13XyRgsR2QOWN2SPy7GfJfvQz73+/wT99xW4jwAPd6AC MS5BeXpEYBgBHBJfyhgSbHCUr8qDPzj8xaDrgtxTC9nPM3lUGAVjCcutIgK7BLdgGeU6OeCcLY5 et2osGqMPmJVwjLuDIkXQm3I8A+3tLXOB8UhEEsY/erJ6rbwhCP2oQ/pk+woF89voFgUsSkG1FQ ZhPLG5TwpxGuK8fis4FX/hK3nYnXXa8MoN5RW28ag+Dg595UoyGqhYL/1xOnIwEesHTRtHnGi3g n/aUkdABramweIgINTDSZ9cY+mC9VyHEkdSrTXEnIT/GX12wtbUPb6by/kl3W7spF2YLqjOBOV4 ktajQd X-Google-Smtp-Source: AGHT+IGvq7p7zrwMDXk6ZX7lO2oP01JqYVpmGN3l1U91UMYaxQy9DeOubajdOB6pcLNRW2pBrhv2eA== X-Received: by 2002:a17:907:7e93:b0:ae3:6651:58ba with SMTP id a640c23a62f3a-afca4e0afd0mr229812766b.35.1755082818984; Wed, 13 Aug 2025 04:00:18 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:18 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:07 +0200 Subject: [PATCH v6 1/9] clk: bcm: kona: Move CLOCK_COUNT defines into the driver Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-1-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=6691; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=OyUyiVNH1nNJRzK5OA+EFXhH7ke4k69wyUohAzjN7Qo=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA9xM6Wt6D9eU6TsSE9GmrueMWf4cY84bCUO Cdx5DUVo7WJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aPQvD/9b+THxS2sbk81gNzVeVawjioZ6+EZxprycSfblHpC8h80Ofy7OFDpOgS4HITERjGYopwv XlWFg5KFcrgudwIo9ggTITeOpkoqLw4IflgUZA8im7DokVZuUssBY3hNltBfLnp06VoCwjt7YfU DJKvLI65b0wMhimm4dmSyKOQ2CcfArRethxpvtPAtETgo3L8z7naL+XyKPe+Kimxaj+SSJOkQ/R T4C/pIBPBQJ7WYmO4Fck2U+Ms78Lbb7d2RTrXeRTgC62RBFwpp2RCjgujOhk6OTdfPmFUqqy4i6 uQsIf0kF+m9N95cUMQyWLGXGHeLi7MxVqV62211rW8tNjasB5rHrqXJIb6xAd8zUdTU33WLSjoP nq1QmR6tQhm3VH1czz8EJ/ZTV1J/T2uW2IZi9n3Y5copaxnM7AYw9K81A6ZGHCMDghZSuktdEiU khzw7seNCBUXQ0O7hzsF9l0nZT+A9rTIdIXD9cW4NH1eYfgeY8E/6uX6s0yGLjpGH2WDq+aOnn+ mN4+lXC86CUkm4k5G70XgVu/ETuSDrBbJP16ekN1iXtMWZl7cdZBoJCo+M7GSjKVVBU+UkJrPr8 5GwBELBEz16IPITbEueH0g06wrB4fPUvGXJu5vsjxgQ4f3C2jCYbb3sx7OltOXTaIEKWszM1fo5 hImyyTOn6Hy47Yg== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 CLOCK_COUNT defines for each CCU are stored in the DT binding header. This is not correct - they are not used by device trees, only internally by the driver. Move the CLOCK_COUNT defines directly into the driver in preparation for dropping them from the DT binding include. To avoid conflicts with the old defines, rename them to use the CLK_COUNT suffix. Signed-off-by: Artur Weber --- Changes in v4: - Rename CLOCK_COUNT to CLK_COUNT to avoid redefinition Changes in v3: - Add this commit --- drivers/clk/bcm/clk-bcm21664.c | 16 ++++++++++++---- drivers/clk/bcm/clk-bcm281xx.c | 20 +++++++++++++++----- drivers/clk/bcm/clk-kona.h | 2 +- 3 files changed, 28 insertions(+), 10 deletions(-) diff --git a/drivers/clk/bcm/clk-bcm21664.c b/drivers/clk/bcm/clk-bcm21664.c index 520c3aeb4ea9c4a431512c0909f9545c1761d17a..14b7db824704824b4a6bfcce793= 08afa44e092c6 100644 --- a/drivers/clk/bcm/clk-bcm21664.c +++ b/drivers/clk/bcm/clk-bcm21664.c @@ -17,13 +17,15 @@ static struct peri_clk_data frac_1m_data =3D { .clocks =3D CLOCKS("ref_crystal"), }; =20 +#define BCM21664_ROOT_CCU_CLK_COUNT (BCM21664_ROOT_CCU_FRAC_1M + 1) + static struct ccu_data root_ccu_data =3D { BCM21664_CCU_COMMON(root, ROOT), /* no policy control */ .kona_clks =3D { [BCM21664_ROOT_CCU_FRAC_1M] =3D KONA_CLK(root, frac_1m, peri), - [BCM21664_ROOT_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM21664_ROOT_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -39,6 +41,8 @@ static struct peri_clk_data hub_timer_data =3D { .trig =3D TRIGGER(0x0a40, 4), }; =20 +#define BCM21664_AON_CCU_CLK_COUNT (BCM21664_AON_CCU_HUB_TIMER + 1) + static struct ccu_data aon_ccu_data =3D { BCM21664_CCU_COMMON(aon, AON), .policy =3D { @@ -48,7 +52,7 @@ static struct ccu_data aon_ccu_data =3D { .kona_clks =3D { [BCM21664_AON_CCU_HUB_TIMER] =3D KONA_CLK(aon, hub_timer, peri), - [BCM21664_AON_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM21664_AON_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -122,6 +126,8 @@ static struct peri_clk_data sdio4_sleep_data =3D { .gate =3D HW_SW_GATE(0x0360, 18, 2, 3), }; =20 +#define BCM21664_MASTER_CCU_CLK_COUNT (BCM21664_MASTER_CCU_SDIO4_SLEEP + 1) + static struct ccu_data master_ccu_data =3D { BCM21664_CCU_COMMON(master, MASTER), .policy =3D { @@ -145,7 +151,7 @@ static struct ccu_data master_ccu_data =3D { KONA_CLK(master, sdio3_sleep, peri), [BCM21664_MASTER_CCU_SDIO4_SLEEP] =3D KONA_CLK(master, sdio4_sleep, peri), - [BCM21664_MASTER_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM21664_MASTER_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -225,6 +231,8 @@ static struct peri_clk_data bsc4_data =3D { .trig =3D TRIGGER(0x0afc, 19), }; =20 +#define BCM21664_SLAVE_CCU_CLK_COUNT (BCM21664_SLAVE_CCU_BSC4 + 1) + static struct ccu_data slave_ccu_data =3D { BCM21664_CCU_COMMON(slave, SLAVE), .policy =3D { @@ -246,7 +254,7 @@ static struct ccu_data slave_ccu_data =3D { KONA_CLK(slave, bsc3, peri), [BCM21664_SLAVE_CCU_BSC4] =3D KONA_CLK(slave, bsc4, peri), - [BCM21664_SLAVE_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM21664_SLAVE_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 diff --git a/drivers/clk/bcm/clk-bcm281xx.c b/drivers/clk/bcm/clk-bcm281xx.c index 823d5dfa31b84f502fcd6ada1eff6d8f4673b3dd..62c3bf4656259261ae4f7d81dae= 48c90ab26c04e 100644 --- a/drivers/clk/bcm/clk-bcm281xx.c +++ b/drivers/clk/bcm/clk-bcm281xx.c @@ -19,12 +19,14 @@ static struct peri_clk_data frac_1m_data =3D { .clocks =3D CLOCKS("ref_crystal"), }; =20 +#define BCM281XX_ROOT_CCU_CLK_COUNT (BCM281XX_ROOT_CCU_FRAC_1M + 1) + static struct ccu_data root_ccu_data =3D { BCM281XX_CCU_COMMON(root, ROOT), .kona_clks =3D { [BCM281XX_ROOT_CCU_FRAC_1M] =3D KONA_CLK(root, frac_1m, peri), - [BCM281XX_ROOT_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM281XX_ROOT_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -57,6 +59,8 @@ static struct peri_clk_data pmu_bsc_var_data =3D { .trig =3D TRIGGER(0x0a40, 2), }; =20 +#define BCM281XX_AON_CCU_CLK_COUNT (BCM281XX_AON_CCU_PMU_BSC_VAR + 1) + static struct ccu_data aon_ccu_data =3D { BCM281XX_CCU_COMMON(aon, AON), .kona_clks =3D { @@ -66,7 +70,7 @@ static struct ccu_data aon_ccu_data =3D { KONA_CLK(aon, pmu_bsc, peri), [BCM281XX_AON_CCU_PMU_BSC_VAR] =3D KONA_CLK(aon, pmu_bsc_var, peri), - [BCM281XX_AON_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM281XX_AON_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -80,12 +84,14 @@ static struct peri_clk_data tmon_1m_data =3D { .trig =3D TRIGGER(0x0e84, 1), }; =20 +#define BCM281XX_HUB_CCU_CLK_COUNT (BCM281XX_HUB_CCU_TMON_1M + 1) + static struct ccu_data hub_ccu_data =3D { BCM281XX_CCU_COMMON(hub, HUB), .kona_clks =3D { [BCM281XX_HUB_CCU_TMON_1M] =3D KONA_CLK(hub, tmon_1m, peri), - [BCM281XX_HUB_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM281XX_HUB_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -172,6 +178,8 @@ static struct peri_clk_data hsic2_12m_data =3D { .trig =3D TRIGGER(0x0afc, 5), }; =20 +#define BCM281XX_MASTER_CCU_CLK_COUNT (BCM281XX_MASTER_CCU_HSIC2_12M + 1) + static struct ccu_data master_ccu_data =3D { BCM281XX_CCU_COMMON(master, MASTER), .kona_clks =3D { @@ -189,7 +197,7 @@ static struct ccu_data master_ccu_data =3D { KONA_CLK(master, hsic2_48m, peri), [BCM281XX_MASTER_CCU_HSIC2_12M] =3D KONA_CLK(master, hsic2_12m, peri), - [BCM281XX_MASTER_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM281XX_MASTER_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 @@ -301,6 +309,8 @@ static struct peri_clk_data pwm_data =3D { .trig =3D TRIGGER(0x0afc, 15), }; =20 +#define BCM281XX_SLAVE_CCU_CLK_COUNT (BCM281XX_SLAVE_CCU_PWM + 1) + static struct ccu_data slave_ccu_data =3D { BCM281XX_CCU_COMMON(slave, SLAVE), .kona_clks =3D { @@ -324,7 +334,7 @@ static struct ccu_data slave_ccu_data =3D { KONA_CLK(slave, bsc3, peri), [BCM281XX_SLAVE_CCU_PWM] =3D KONA_CLK(slave, pwm, peri), - [BCM281XX_SLAVE_CCU_CLOCK_COUNT] =3D LAST_KONA_CLK, + [BCM281XX_SLAVE_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; =20 diff --git a/drivers/clk/bcm/clk-kona.h b/drivers/clk/bcm/clk-kona.h index 348a3454ce4013e4e2b06b9542f5895a8397dd8e..d7cae437333c83e05b2960ba8d5= 1e718480e6155 100644 --- a/drivers/clk/bcm/clk-kona.h +++ b/drivers/clk/bcm/clk-kona.h @@ -483,7 +483,7 @@ struct ccu_data { #define KONA_CCU_COMMON(_prefix, _name, _ccuname) \ .name =3D #_name "_ccu", \ .lock =3D __SPIN_LOCK_UNLOCKED(_name ## _ccu_data.lock), \ - .clk_num =3D _prefix ## _ ## _ccuname ## _CCU_CLOCK_COUNT + .clk_num =3D _prefix ## _ ## _ccuname ## _CCU_CLK_COUNT =20 /* Exported globals */ =20 --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BDC5F2F7442; Wed, 13 Aug 2025 11:00:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082826; cv=none; b=XABFZmZI4/q6rYAeKEMrzUwSlNIvfS4+HqtVtAcNazVukxJEAdPydTuYXQM9NOuV9wT2M1MlggrP/y0OGwwZiYj2HPKk+L0z8hywv+GBVQ8bUdM18FflTDeYVbEfqtMDTdK9P/GOE+z9fwdetRQ+x52eFH2YeR2M4H9RbIWQDhk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082826; c=relaxed/simple; bh=+3gXC+OUGrttxQjNxnrmV+KRMD9spkRxLvYcC7eZAwI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qizDgZuM0UArNul9369371+T4LCqlU6iJA9pbIV6rTgzrIJ2USk1oMrU4bfZk6Ylu4aa5fEdTGLO6Kbz4LeB0L1irWWd7NLCw6IHBn483vaFVaa5yRZXidO1VoAgl2cLonOJTAzOPsHAqp/IlpV+URcPIE3WM4sHMGH+SyLvBPs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=d5p8nnF5; arc=none smtp.client-ip=209.85.218.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="d5p8nnF5" Received: by mail-ej1-f42.google.com with SMTP id a640c23a62f3a-af949891d3aso840681166b.1; Wed, 13 Aug 2025 04:00:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082822; x=1755687622; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=1+2MgRxKtKDHXWfk6f/P6hEAfTTptZtl+AlJvXaWoE8=; b=d5p8nnF5D0UEAAA5V4Gu7wSygTHIl7ZMEMf1UrjMSqdjYte6NLck3W3AYUKYBaUVLm ltzB8oGsmZXlLxQbBoT4iRz7EYJvZDUQSlubXURhe96EAJWEGoF03vPTXwwBU7keYVZZ vbF9JkbuxU1UKJsuNiRbIBa1jb6TqCsrkTgqSz8sdrqyHCm8hEK6ijU60uQHFXHN0abN wkRO1e6fd3YmCOh57cPnRhx07ZxrcvnFSTMLJ+AJ/3aPpRdCM+ud3vD66aHAOHV7+1qh uWLarNlfpfNd8JsJtASvsHwhJcSVpdAnUFQ92tC34s3aDEv/OuowCty+xhrQvP+gquVV OB+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082822; x=1755687622; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1+2MgRxKtKDHXWfk6f/P6hEAfTTptZtl+AlJvXaWoE8=; b=eNUKRqjTREwA6S+T51qdPrnaZDdxdhEJ/9ebWrqzqS6fJFFNeTBSRrxuob5cIO7w0h iTzaIqovPgrH2m62eQc50lPqt29Bzd2zawtAcjxo1OBYIg5aatVI50LCj2Xo1+pEGvN7 mU4qCSOoJ3tnrkjjyyb1dMJDY2AkaV2Moq3620XOMG/xHPx+Xzmg7WCCTC5biZdQITAa 5GTPG69Zm2sQUkMsWksExmKfVOkiJCj4MJTX2Orxgg2ryZK34zJilzGtykXqqWJ/wpZ2 +2UKZdVcMoibmK0HKtByKDz1HssFNrjtdpJr07o2bxJj3WHoP9LZnTJCaC0avog5Gvb6 zCIQ== X-Forwarded-Encrypted: i=1; AJvYcCU+nFolZ3pnW99HeLVo1lFqXVtaClLgo+tlxI+DojxZfpb3RAjKz56fOvPj6wDpBkmlQlonP52HnVE4@vger.kernel.org, AJvYcCU6+bSagLaF6GqCd8wnibzMwk/SJBU83u9HACdoggt+mT/pkeVmAWNorcQj0kkHY37HdYZHhgtROro5@vger.kernel.org, AJvYcCUDClK9uWwcOu0QWBiMu+zVrXvqv39PxzJBwfrdlreWnucPEh0n6hjRWENB8awVWN/QZWoIbITY+1NCHVyd@vger.kernel.org X-Gm-Message-State: AOJu0Yw6L+ZwqamSFFSRLcHqpSuB2uewOba3pdPGH9kz5hVp7spKaYtS qoulT1fMiHHZ4ArpL3Kdnw0d6uHkZfpdo+geCRcyAnvYDNBqNverlf/u X-Gm-Gg: ASbGncsI9W8+bEMtmQHyJZYcogi1HXocMfXjDbYsbijChfQe8fl8msejxATv7Vc226Q CMC8isaq+z8iIRnn8Mq/IhlaiBVYZR80pyjVb/N0Zqtp3SqiYR5Qz/ckIkezpAMT/v1fLsJwX55 FeN3ndV34S8w0i3Ifshqm8TrIRw2u677EI0pbYiTrFbW5eQrabcS+Q0fPsubU69NjKyxyFyQC3w GtdPW+CXJ4/vgbYlwy++mfNIJOjSdeQMVCUkJgUtpMcO2UXWT01ex4AdHzcj+Y9IA1iFEekDEpy /znqOwjtFTWJmC2T3NhDmRCVA14h689tCa35GQ0ataLVYPCZTtlRKHG8wbVpBUjC1eApaBgDS1d DVTIsFppmrOrWwFPP+c4PzmoPcUkK8l0s0exLukYKM44pkZywL3LbqQSkXYVbeq78RRPnLUdLvR yyG3q5 X-Google-Smtp-Source: AGHT+IFjOro9467OEyMI/W2I01Woz2Ux1Tf4CSfsmNe+ZdoGRW1ROPjzS9YFPh/RmIJFSZt2ySWbzQ== X-Received: by 2002:a17:907:9801:b0:ae3:6f35:36fe with SMTP id a640c23a62f3a-afca4e43bcamr236802866b.47.1755082821601; Wed, 13 Aug 2025 04:00:21 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:21 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:08 +0200 Subject: [PATCH v6 2/9] dt-bindings: clock: brcm,kona-ccu: Drop CLOCK_COUNT defines from DT headers Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-2-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber , Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2774; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=+3gXC+OUGrttxQjNxnrmV+KRMD9spkRxLvYcC7eZAwI=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA92e49EbzEuG/Cda57B6VEac13NXUUJTprP JPFrm6TMFmJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aP9cD/48iYmKyR6SYUNzEVA9jbZ2O9h12s1C5tuGN83N4mmi3FLN1bo/o4FdlOFAsPxHw2MN5Xy 4ypgY/swakHPpo83zBjyRa8TpO8kK7QiR+9RPbl1uZ5V8Dj8MGnvCrDdcFSM5CfecPovUgE8Tet ZCF3thdVuk5gGG9UsvNQEo2OU0TsYgqNGWasiJBeKfznrPqSehsMGh9ChbxGICd+kYKd6FjucAL z/fJ6QXhzfVTa2iMc3X8DfAiLWeE4dWT6ad0PY51vtJP2XBdw2HW08ZB+lecG9dEpKxuVjxo+8k E2PLLpEHOkaLItQrwBg6Phdbdx+VrPw5G0m7JbHAfPQDNoCe4cRdIK5u4SpfPTwWMe3F11n/6T5 cWxsqpaljKd4U7krEEtoX+oTvx+s6oMCa/xLutUhyVN5mzyJfRCZV32k4eaXWmbpvRssMxloOcu WQ5eqmdjv7rOZteaZhLhJ7EZKKWwaFv93Udl/ivAG3wxqB+sObuWmlz0EfrvsJ05yhdymj1YRxg sHm9yNocBGFrrl9Lhh1nazcnIG003HZe7/OtIfm6qtvcj5ahIVjH8zQSMMjAxrzJTvHaNxaCs2e TBv8RApc2WodRfS0tdcOYm8D00l2gm7ATL2xnMKcz8DDSKqoa3M5Atenz96Rjt9Kxt6Ne/vJ4tG zF0jJtX31KY4Y8Q== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 The CLOCK_COUNT defines are not used by device trees, only by the clock driver. Keeping them in the DT binding header is frowned upon. Since they're being moved to the clock driver directly, drop these defines from the dt-bindings header and only keep clock IDs. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Artur Weber --- Changes in v3: - Add this commit --- include/dt-bindings/clock/bcm21664.h | 4 ---- include/dt-bindings/clock/bcm281xx.h | 5 ----- 2 files changed, 9 deletions(-) diff --git a/include/dt-bindings/clock/bcm21664.h b/include/dt-bindings/clo= ck/bcm21664.h index 7c7492742f3d4ca439236f2f352e432989409570..7a380a51848ce100cbf94f9da2b= 997dbe3a65230 100644 --- a/include/dt-bindings/clock/bcm21664.h +++ b/include/dt-bindings/clock/bcm21664.h @@ -21,12 +21,10 @@ /* root CCU clock ids */ =20 #define BCM21664_ROOT_CCU_FRAC_1M 0 -#define BCM21664_ROOT_CCU_CLOCK_COUNT 1 =20 /* aon CCU clock ids */ =20 #define BCM21664_AON_CCU_HUB_TIMER 0 -#define BCM21664_AON_CCU_CLOCK_COUNT 1 =20 /* master CCU clock ids */ =20 @@ -38,7 +36,6 @@ #define BCM21664_MASTER_CCU_SDIO2_SLEEP 5 #define BCM21664_MASTER_CCU_SDIO3_SLEEP 6 #define BCM21664_MASTER_CCU_SDIO4_SLEEP 7 -#define BCM21664_MASTER_CCU_CLOCK_COUNT 8 =20 /* slave CCU clock ids */ =20 @@ -49,6 +46,5 @@ #define BCM21664_SLAVE_CCU_BSC2 4 #define BCM21664_SLAVE_CCU_BSC3 5 #define BCM21664_SLAVE_CCU_BSC4 6 -#define BCM21664_SLAVE_CCU_CLOCK_COUNT 7 =20 #endif /* _CLOCK_BCM21664_H */ diff --git a/include/dt-bindings/clock/bcm281xx.h b/include/dt-bindings/clo= ck/bcm281xx.h index d74ca42112e79746c513f6861a89628ee03f0f79..0c7a7e10cb425ddb597392939cb= 218545a48bf22 100644 --- a/include/dt-bindings/clock/bcm281xx.h +++ b/include/dt-bindings/clock/bcm281xx.h @@ -27,19 +27,16 @@ /* root CCU clock ids */ =20 #define BCM281XX_ROOT_CCU_FRAC_1M 0 -#define BCM281XX_ROOT_CCU_CLOCK_COUNT 1 =20 /* aon CCU clock ids */ =20 #define BCM281XX_AON_CCU_HUB_TIMER 0 #define BCM281XX_AON_CCU_PMU_BSC 1 #define BCM281XX_AON_CCU_PMU_BSC_VAR 2 -#define BCM281XX_AON_CCU_CLOCK_COUNT 3 =20 /* hub CCU clock ids */ =20 #define BCM281XX_HUB_CCU_TMON_1M 0 -#define BCM281XX_HUB_CCU_CLOCK_COUNT 1 =20 /* master CCU clock ids */ =20 @@ -50,7 +47,6 @@ #define BCM281XX_MASTER_CCU_USB_IC 4 #define BCM281XX_MASTER_CCU_HSIC2_48M 5 #define BCM281XX_MASTER_CCU_HSIC2_12M 6 -#define BCM281XX_MASTER_CCU_CLOCK_COUNT 7 =20 /* slave CCU clock ids */ =20 @@ -64,6 +60,5 @@ #define BCM281XX_SLAVE_CCU_BSC2 7 #define BCM281XX_SLAVE_CCU_BSC3 8 #define BCM281XX_SLAVE_CCU_PWM 9 -#define BCM281XX_SLAVE_CCU_CLOCK_COUNT 10 =20 #endif /* _CLOCK_BCM281XX_H */ --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 253142F745C; Wed, 13 Aug 2025 11:00:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082828; cv=none; b=CIImbWbNBreCmG6IQwpiRG7rNrqvvWB1eLjOmxDLi61DTmHULR4sOhivMn2EBmscrA5XmeUSXjmDRUOcKgKaUf4qu6yoKJI4UL41uvU6skJToml8YEnCdkXDBPKxytmfuA63e4R5LXiTi+p57Z/v9XYmZkD5Xw4DoQQ/cX84kK8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082828; c=relaxed/simple; bh=w1JqEw83SNBTWv0jasiNDsC1/Drx1lV2Z+u0Vqw+j0E=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DPR0jfSoMm3JLl2Hjc5yqq0ctXNIMys2JdAhFzgBLykuo1m4c7JXOGJAoV95H7xW8EbazEK4NfkzAp/aDh42TWdaAsqkPZB4HH4GdwOGstMS6nXxzBGcCFV5768oYOm5ynDC9r85tqFFBzUU9lF2Q6FGanAIZY+mooft6utqu9g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OAOmrdkl; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OAOmrdkl" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-af925cbd73aso1172940766b.1; Wed, 13 Aug 2025 04:00:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082824; x=1755687624; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=yqCY5jTvsISB32aIb6DjyduWoHu1F4uXkTH9VhadKk8=; b=OAOmrdklbRRz5qTC21/iwq4HYI39PlVefoMcGBsaXHLnooCUZnEreaLuG/0xFMiVHE V6VIOhJo5V1PAFobuVQyEL9tSkiYJjsx26vNH3zbE7BmijhV0aaYOIm/uysotLgFupXL JJoEskjObvofXoSckB/VZuzgkFPQw8defRgiIbJ8AC2+ftpTAL23PVNyB8UV/ewSVfjx 4KZi1Ujs2giGFnBdkz5yid/zkwTxkQfUkWUuezXlqD5Ak0WULPPJJeMopk+ey73VSJIc uN4A+iCf0sl5nyIcHn8CN+k04Uw/QNTrocpa9NB5evgLGJ5tSuLGVMuzqRzsboGuim6n aWdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082824; x=1755687624; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yqCY5jTvsISB32aIb6DjyduWoHu1F4uXkTH9VhadKk8=; b=ZeNnZ+l/o78RuopSIobTSxzcTIJPm8IZCUZXUT0r5VMRxVOCIljYYn/17ZpOt0wSAp x7hz+oznht/pipeH6zCfCS7QtIGxWpMHS9ulB/7NxjxsTmgTlP8hTtHrFv/C/xfIaCRT XgDbZAeSflFKE1UBJzSYsL2BGenZk4W28aGHUWgWw3138ge6j/PRF0jr8wpzOHCOV1Rf MHuU/y8k4MW6LvkUk0beeXoqhIYdv2dhhRVZc32KfZSkNE4KskmnPWjYpRPyOq3Yd5qU TLJHTAkAF5pm5ON5Mc8tfDcVckTyZ2G97+mFtHBMpp1poOYrI/93wFJMrRf7zHKMwLoZ GVeA== X-Forwarded-Encrypted: i=1; AJvYcCVBiT87qANa+sxprqMi8luEs6YcVMc4AOKzoQ40D6UtiFrK5NBmnBV3lIEdfFjWbI0TzTZewYylKmQH@vger.kernel.org, AJvYcCVFP9Ai4NcSo2FwyZs99Nag0nlCsc/ovNJ6uX4TlytLFpTNgETLP6CyQ9QNafrK7SiYXiw/2O72FHFIjtIa@vger.kernel.org, AJvYcCXH9kwGxaLbVn0W39EMSdOO6vGiZ4TJknzPIztWsau3Sbw8j5Mpj+a9W08RArKYG2bxYd+QAksf758v@vger.kernel.org X-Gm-Message-State: AOJu0YxSsoi4wY3G50karZzrZr4kYNgcA3dCRUcs6UJ7XTQWOqv7lBta h7/U8nrGllNx5DugAXZZV2KLhfwCkXCL8Vk6F88wL96U3EIHQjjeh9T/ X-Gm-Gg: ASbGnctetjxrGWafd6eguygm4r/X/Cdu0TAWaSpIDQChDpRswEb2oomP+FxysQDJUoT M4r8vZIwG2T1pH5CL8kvdq9GC69II/Xl3aijhUsxAhIkQuQGqn68RILRuSccaVtvEbNTACYxfgZ PHFQkUWkKXkcVwry0gRxUc630EXoOkJTZ5DArLy0PwaFLk9PPK2dOtUwIkJzmIUuAFDgVW+pVxi 3hbBO9fzxaReFnJLMDa6z8ctxaUDcSfCJgpdAaXbzJ+aSsxCEjUrv5fqnZxT0BcXao/b++iL9Zk 93XeSVonUsjk4vfXPOQzhHeXZUEhm1GNJ/KHPYNYQK+UkzJc3Gp9Fm8NgcztZ4KjPxqemLBweyW Z+HhPcvVsResbyMz/t9jrgjIYF4UPd4AVXYai9ty8ccDh2apGiMk5EuygMg38OtwSJtYnl5bbQZ 4QdOTD X-Google-Smtp-Source: AGHT+IElWT4jUqN4j0obVzzttcqV5DoHbMR5Zvr5dvyp/5WzfbnIQyveocNCX4Kkaq+kb4xzx0CmVA== X-Received: by 2002:a17:907:d28:b0:af2:3c43:b104 with SMTP id a640c23a62f3a-afca4ef2446mr269934766b.54.1755082824277; Wed, 13 Aug 2025 04:00:24 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:23 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:09 +0200 Subject: [PATCH v6 3/9] dt-bindings: clock: brcm,kona-ccu: Add BCM21664 and BCM281xx bus clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-3-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber , Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=6917; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=w1JqEw83SNBTWv0jasiNDsC1/Drx1lV2Z+u0Vqw+j0E=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA9MGS6etGnq4xmAjxsYkZlZYUzXH7Nmv7nV FQdOGJaN3iJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aF7ID/kBUfuPKk9hXnlY1z2lxPbC6H7PTSvsVGzn5iWqQpHOSk++ud1l5oU3Q6mx3HqHLdft607 CsbKDv6NQ2Sz6uG0g5oNdPh8wG4yGF2tExBGPH5ETTGiskhRwj8zfXM7+qTBS6+UcmKl070Ud3Z JT+SOIm42qi43mK73zgQqq2Kb5fG+MpG53fHYWflVAmuhGdd+KpiOlRTd5K9N5MuwXqnt12hmD9 DBuJF084QUfKNsD/GSIfQqlr/QUNu2lMNmpVaDA4vslvEjAXHBTQ5ro18bhZBO9XZj18rB5nqGg Vmv1B+kQVT7p/QrQUffT1bSETlezAkdm2Fkudyg03D55jh7gItfajNk3GUTrWjHShfFuVWWLvFF 6ae734cYB5ij1z0Lf/AjeI4bKguFcy5GMDWs5OW4VkbCLbaN/KHUhfewdNyv0l/1MZ5F+x53Lsm +IfbIlbH7CwTs+uobXsKmjnspJ7ijUJLJvI9fBzrxXl3fnUT3SVaHi5JV+UXHThCp5M6P6rZcNq DW54TEkPJbkxPGpBi2DjlzUNBU2a0Qz89ntNT9HSA11kwXtOIgQUDSI3eTScNXV3NGo+nU6KHFi QjGGbs60hAaUZZqwFmPWqh+7203ASoqZCwaHUx3VFPOwcc/T1NKWq1sif4aZWeMHs0Ffa6YQlc4 UxAXJ/2vP1kt3cw== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Add bus clocks corresponding to peripheral clocks currently supported by the BCM21664 and BCM281xx clock drivers and add the relevant clock IDs to the dt-bindings headers (bcm21664.h, bcm281xx.h). Reviewed-by: Krzysztof Kozlowski Signed-off-by: Artur Weber --- Changes in v4: - Squash BCM21664 and BCM281xx bus clock bindings commits --- .../devicetree/bindings/clock/brcm,kona-ccu.yaml | 49 ++++++++++++++++++= ++-- include/dt-bindings/clock/bcm21664.h | 13 ++++++ include/dt-bindings/clock/bcm281xx.h | 19 +++++++++ 3 files changed, 78 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml b/D= ocumentation/devicetree/bindings/clock/brcm,kona-ccu.yaml index e5656950b3bd0ad44ba47f0ada84b558e71df590..d00dcf916b45904177614c6f19a= 5df02abdf42f7 100644 --- a/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml +++ b/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml @@ -40,7 +40,7 @@ properties: =20 clock-output-names: minItems: 1 - maxItems: 10 + maxItems: 20 =20 required: - compatible @@ -61,6 +61,8 @@ allOf: - const: hub_timer - const: pmu_bsc - const: pmu_bsc_var + - const: hub_timer_apb + - const: pmu_bsc_apb - if: properties: compatible: @@ -86,6 +88,13 @@ allOf: - const: usb_ic - const: hsic2_48m - const: hsic2_12m + - const: sdio1_ahb + - const: sdio2_ahb + - const: sdio3_ahb + - const: sdio4_ahb + - const: usb_ic_ahb + - const: hsic2_ahb + - const: usb_otg_ahb - if: properties: compatible: @@ -116,6 +125,16 @@ allOf: - const: bsc2 - const: bsc3 - const: pwm + - const: uartb_apb + - const: uartb2_apb + - const: uartb3_apb + - const: uartb4_apb + - const: ssp0_apb + - const: ssp2_apb + - const: bsc1_apb + - const: bsc2_apb + - const: bsc3_apb + - const: pwm_apb - if: properties: compatible: @@ -124,7 +143,9 @@ allOf: then: properties: clock-output-names: - const: hub_timer + items: + - const: hub_timer + - const: hub_timer_apb - if: properties: compatible: @@ -142,6 +163,11 @@ allOf: - const: sdio2_sleep - const: sdio3_sleep - const: sdio4_sleep + - const: sdio1_ahb + - const: sdio2_ahb + - const: sdio3_ahb + - const: sdio4_ahb + - const: usb_otg_ahb - if: properties: compatible: @@ -158,6 +184,13 @@ allOf: - const: bsc2 - const: bsc3 - const: bsc4 + - const: uartb_apb + - const: uartb2_apb + - const: uartb3_apb + - const: bsc1_apb + - const: bsc2_apb + - const: bsc3_apb + - const: bsc4_apb =20 additionalProperties: false =20 @@ -176,6 +209,16 @@ examples: "bsc1", "bsc2", "bsc3", - "pwm"; + "pwm", + "uartb_apb", + "uartb2_apb", + "uartb3_apb", + "uartb4_apb", + "ssp0_apb", + "ssp2_apb", + "bsc1_apb", + "bsc2_apb", + "bsc3_apb", + "pwm_apb"; }; ... diff --git a/include/dt-bindings/clock/bcm21664.h b/include/dt-bindings/clo= ck/bcm21664.h index 7a380a51848ce100cbf94f9da2b997dbe3a65230..9f3614eb9036b5ce36b610fd743= 7338655a9cf97 100644 --- a/include/dt-bindings/clock/bcm21664.h +++ b/include/dt-bindings/clock/bcm21664.h @@ -25,6 +25,7 @@ /* aon CCU clock ids */ =20 #define BCM21664_AON_CCU_HUB_TIMER 0 +#define BCM21664_AON_CCU_HUB_TIMER_APB 1 =20 /* master CCU clock ids */ =20 @@ -36,6 +37,11 @@ #define BCM21664_MASTER_CCU_SDIO2_SLEEP 5 #define BCM21664_MASTER_CCU_SDIO3_SLEEP 6 #define BCM21664_MASTER_CCU_SDIO4_SLEEP 7 +#define BCM21664_MASTER_CCU_SDIO1_AHB 8 +#define BCM21664_MASTER_CCU_SDIO2_AHB 9 +#define BCM21664_MASTER_CCU_SDIO3_AHB 10 +#define BCM21664_MASTER_CCU_SDIO4_AHB 11 +#define BCM21664_MASTER_CCU_USB_OTG_AHB 12 =20 /* slave CCU clock ids */ =20 @@ -46,5 +52,12 @@ #define BCM21664_SLAVE_CCU_BSC2 4 #define BCM21664_SLAVE_CCU_BSC3 5 #define BCM21664_SLAVE_CCU_BSC4 6 +#define BCM21664_SLAVE_CCU_UARTB_APB 7 +#define BCM21664_SLAVE_CCU_UARTB2_APB 8 +#define BCM21664_SLAVE_CCU_UARTB3_APB 9 +#define BCM21664_SLAVE_CCU_BSC1_APB 10 +#define BCM21664_SLAVE_CCU_BSC2_APB 11 +#define BCM21664_SLAVE_CCU_BSC3_APB 12 +#define BCM21664_SLAVE_CCU_BSC4_APB 13 =20 #endif /* _CLOCK_BCM21664_H */ diff --git a/include/dt-bindings/clock/bcm281xx.h b/include/dt-bindings/clo= ck/bcm281xx.h index 0c7a7e10cb425ddb597392939cb218545a48bf22..8e3ac4ab3e16fb33a82259ccb82= 287fdfbb749bc 100644 --- a/include/dt-bindings/clock/bcm281xx.h +++ b/include/dt-bindings/clock/bcm281xx.h @@ -33,6 +33,8 @@ #define BCM281XX_AON_CCU_HUB_TIMER 0 #define BCM281XX_AON_CCU_PMU_BSC 1 #define BCM281XX_AON_CCU_PMU_BSC_VAR 2 +#define BCM281XX_AON_CCU_HUB_TIMER_APB 3 +#define BCM281XX_AON_CCU_PMU_BSC_APB 4 =20 /* hub CCU clock ids */ =20 @@ -47,6 +49,13 @@ #define BCM281XX_MASTER_CCU_USB_IC 4 #define BCM281XX_MASTER_CCU_HSIC2_48M 5 #define BCM281XX_MASTER_CCU_HSIC2_12M 6 +#define BCM281XX_MASTER_CCU_SDIO1_AHB 7 +#define BCM281XX_MASTER_CCU_SDIO2_AHB 8 +#define BCM281XX_MASTER_CCU_SDIO3_AHB 9 +#define BCM281XX_MASTER_CCU_SDIO4_AHB 10 +#define BCM281XX_MASTER_CCU_USB_IC_AHB 11 +#define BCM281XX_MASTER_CCU_HSIC2_AHB 12 +#define BCM281XX_MASTER_CCU_USB_OTG_AHB 13 =20 /* slave CCU clock ids */ =20 @@ -60,5 +69,15 @@ #define BCM281XX_SLAVE_CCU_BSC2 7 #define BCM281XX_SLAVE_CCU_BSC3 8 #define BCM281XX_SLAVE_CCU_PWM 9 +#define BCM281XX_SLAVE_CCU_UARTB_APB 10 +#define BCM281XX_SLAVE_CCU_UARTB2_APB 11 +#define BCM281XX_SLAVE_CCU_UARTB3_APB 12 +#define BCM281XX_SLAVE_CCU_UARTB4_APB 13 +#define BCM281XX_SLAVE_CCU_SSP0_APB 14 +#define BCM281XX_SLAVE_CCU_SSP2_APB 15 +#define BCM281XX_SLAVE_CCU_BSC1_APB 16 +#define BCM281XX_SLAVE_CCU_BSC2_APB 17 +#define BCM281XX_SLAVE_CCU_BSC3_APB 18 +#define BCM281XX_SLAVE_CCU_PWM_APB 19 =20 #endif /* _CLOCK_BCM281XX_H */ --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A6B7D29E0E9; Wed, 13 Aug 2025 11:00:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082830; cv=none; b=nxp6iqV6TxFuVnAy4VlKAW4g/FwS+QE62wJvfKo5AFMDER4OqT3cRx1ejXwd7kyG7/Wm11Lcl/TKmO1aIo/5EhyU7jOPh/TEXUzOn1M7l1XnK/UWdqvoxlRZ/P81lVJDAlRRgffxI0fGBmTgiNqR5egPI+djAXQsAbSPPU+u98M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082830; c=relaxed/simple; bh=5pKdf5KCw8Ie22dGIIzf7YdaNoocUlU844YIpUij4cE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=XnW+lZIuHREf0U57ejd4PT+kAyu8qGyIz+uHzMMdPe+qUXYrLOOpQoA/Jj+bmyrgDeMmI/+43mKs4VI0hHogopN5TThA+/VmqSf+YAqbJMp6ABfNHYb5Dh9I+T3iGnL0MnNZovrybEcpWcIp72X0Z8JaZ5ZXuYfN+hxI6jBUpnk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=aq5QvW09; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="aq5QvW09" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-af93381a1d2so1016583266b.3; Wed, 13 Aug 2025 04:00:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082827; x=1755687627; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=mK9fnaIgOiHVaMHLlHb2Z36xFm4GtmFoascI593HeQY=; b=aq5QvW091qyj4a/iSdNGu6vwK8cJd4JAaXs6CqbFMhAhgVDT86WKWybOpuAThbhuMZ P3jdrAx6uxputM84vN/TM8HABKtn+I6vW6WYnEdz4zKnCIdn4+mQJTYa2dsPGsJMbTdh qjffYehobTDTyoPpvfI28r1IxMETwhI+b3SjswHy6Z1zk3gin4f9hqjxfnvC4yw4HlsI xxsKtiJ9oZasYXDh9e0FA2l8ZpNPYyjpIreLa5ysW5uQ9YhWPsXTl0tPAIfpBInAjOab G3gXceJlVZxl0XySMl0HJxD94S1D+00R7gG56XG036La5mWysSDCJX+Ui7ymSWv6lOO2 +oQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082827; x=1755687627; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mK9fnaIgOiHVaMHLlHb2Z36xFm4GtmFoascI593HeQY=; b=Mvyte1XnhBbIe0nF72nw+gqrqXZTgQ0/yGI+ag3HFL4TJk7QhNg1nWWN+/ztozxhXc 39ogp0RetpqsWuHYQnZxtWzhjT41/its4+jgQHylQA4n3CeIqtmnv5znOF8jkHf9axGC K2q47uR+Md+FiX1AusU27rae5PAbCnaVPX5vP1e6j61B2qgoLwpWbfZOWFwy9+Z2rS3E BWLw1NSQkcYufyOaxt6WqhZMKyt6cWaPTsrLNG2C1uCBo/b+VRwdPjJ2E2bN6YRMQaxE xMK/BPuQ5Iw4rbM5rg4Phowy8Q77d135LcsWSZu2TrFeohcTWr7l6UmUNCD6ktxzjmjD ZxkA== X-Forwarded-Encrypted: i=1; AJvYcCWDWEs+qrdS9cucBOj669zszKkvtRWnpe65wPQ2eWHWsLnbwKrUA15dhCF/gaCFYtADXm/NWYx9h2trIl62@vger.kernel.org, AJvYcCWeAdNQ7hBc1tZ0ad+FcBI/tpVh8qElK9HL40TJXaV01YRvpCjppHLNd5LJeICRxuxRCEbt5DN6L0uw@vger.kernel.org, AJvYcCXuVYr5kp4iig2rIVfBKbOBXVuUT1kVrSb/UoKPJQ9pWIGaNwmpZS0lP2bqGjgvdAayGiJ9DEngmHcf@vger.kernel.org X-Gm-Message-State: AOJu0YzqUmfWe+OTNCS10DedfEOyGAZAhN5TBq9gQl97TssDWpkE7Heu jlaUQLlaPQ5rPloQESdC5nRwZZg9e3lKIscN1t4ywMDqy9cAHlJq+9HP X-Gm-Gg: ASbGncuFfuipr7IaC4Tf9AGioQ2fykOn8BbvhMmvIZ1FJ49u0z2CJ5du81oQXaGLIZP KVFBdYc5ZRbCyxczIg57Kv4ccMS3qmNPgx9kd20lh51rSajo0tMXsgoFN7SA2iD9I8PBd2NV8JG aHBb62SDePTMRyDCV6RoFeTjYTcsbThtZE05GmZSZyYQBTjXpmIm6ZFZ7aqLU4l2PKCdyWmlPYt nn8bL0Xs2RIZKES6qBHZSXphxbZF/vuadKyGprHsWxQutJo9x3by+1C6vBhWfXzL+xyblTP2xRG axfvmcVQHxpQ2sMNadqD9XqCYyiYowMvt4iFr6AwsMSJE8Bem8sizS62R68kuWE3DPsy3koF1I0 cwzrhsWNJgScq0W1o21RDJhDiUq3SWf5SglBKSerjE8khQ/ysHa0U6+RahXEZ+S87TgA4cS0T/j bO7L+O X-Google-Smtp-Source: AGHT+IH/KEBxleXHnkiaha4MyffAZdzDiHfCJLx8dSf0sSo/Y6BkJw1JF1jJKhUAy3iXEr68vACBWA== X-Received: by 2002:a17:907:7e88:b0:ae0:a359:a95c with SMTP id a640c23a62f3a-afca4e01537mr234024766b.34.1755082826837; Wed, 13 Aug 2025 04:00:26 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:25 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:10 +0200 Subject: [PATCH v6 4/9] clk: bcm: kona: Make kona_peri_clk_ops const Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-4-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1331; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=5pKdf5KCw8Ie22dGIIzf7YdaNoocUlU844YIpUij4cE=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA9H2aGlmoVVWD0I3gb7BPzQbctsPXNk0CKA 8pGFdCnpw+JAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aHo5D/4lOEhU9bOf5fmKB4f8JLms6icz4q6c6xI2X0IOnq6utt2EIFbxrRXPGiNnKFsUtJw1bbf mJU0vyVXtHk0vj16DAiBH23r60+8uIQFg9zj5do1L2TrLl3Ip326lEBYgsZeUi93oCjXZtl/zOA rLB/yesGJy5j5KUlbMLMfRZxP/sb+rzBX3WGGsyXaF2wBI9HI5ywPm0sF0R+HDJ2MAvSM38S0j4 eD2exrGluBFHzkGVsvhMAhnyElXtuDWlZUawr16loThhSrlH0O+q+/g9plcNcAys96pdsnHrE1M tKeS0m9Yoo6rhyusHWuLrLC0CjdjluSG3YHMSDuH5kKaB/mVCXJ5P8fRQM/U9Bf0vVrOyKzZEGZ dhENqj4WINx28uj0r11fvBRirySzrvPj3w55JRDk/qhNiLcXn1aVg1fVUctzAP2/atYpXGwsVT6 W4dzX1xLNPL9NL1Q2cpaLRePABowVJP0n/pgAd3QuQm1ZqNH4OAQMB2JBxyg49NmHT+IkP+IRIJ 81LDYpigI12bGFB6HEktBp/b3xk8WMhROP9S/OxCOxV983ikMFitnpazT+zX6QI31AxM2+lqxP3 JfG439ZrDe0aEbLaAgdSydUahJa0XhHZW2Mqsuppe2oXVTkmhXzlcXXxDRCUHg27bGScsd45KVH CiUieBDmsXBHukg== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Fix a warning raised by checkpatch about non-const clk_ops by making the relevant struct const. Signed-off-by: Artur Weber --- Changes in v6: - Add this commit --- drivers/clk/bcm/clk-kona.c | 2 +- drivers/clk/bcm/clk-kona.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/clk/bcm/clk-kona.c b/drivers/clk/bcm/clk-kona.c index 0171e6b2bfcad51a91adc15f41405aeeb351c260..2641eaa4ca52c2724aa1dc9b4bd= cbee5bcac95e4 100644 --- a/drivers/clk/bcm/clk-kona.c +++ b/drivers/clk/bcm/clk-kona.c @@ -1154,7 +1154,7 @@ static int kona_peri_clk_set_rate(struct clk_hw *hw, = unsigned long rate, return ret; } =20 -struct clk_ops kona_peri_clk_ops =3D { +const struct clk_ops kona_peri_clk_ops =3D { .enable =3D kona_peri_clk_enable, .disable =3D kona_peri_clk_disable, .is_enabled =3D kona_peri_clk_is_enabled, diff --git a/drivers/clk/bcm/clk-kona.h b/drivers/clk/bcm/clk-kona.h index d7cae437333c83e05b2960ba8d51e718480e6155..7064ce316981ef8f32cf20cd4cf= 674e5f0169101 100644 --- a/drivers/clk/bcm/clk-kona.h +++ b/drivers/clk/bcm/clk-kona.h @@ -487,7 +487,7 @@ struct ccu_data { =20 /* Exported globals */ =20 -extern struct clk_ops kona_peri_clk_ops; +extern const struct clk_ops kona_peri_clk_ops; =20 /* Externally visible functions */ =20 --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 79DFE2F90DF; Wed, 13 Aug 2025 11:00:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082833; cv=none; b=kJe14FBjZEvGhy0nKo9C+73NEmSEXUxUnnw9idStxSUrG8I33YV41iMn/hsje+uiSDqXFhXW01B3qZHHjx6DcyvCSr55+hTD765Gq36JAgbdmh1HK06J1I1xt6EWR5t1SoN+z5/mxHMKNJ3DYIXH6dR43SixszrvcPkf/lD8vC8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082833; c=relaxed/simple; bh=PQfvqcpjdMtq6dnMREILfbHm2mHMjDZ7krmRMywS8YQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dgZ/nR+LF9x1E+v/bfSxUrpc+9F3TWe0InGJRLlCj7GRVuogpY//u3krsjlYpP5fZIZTsc+hRPrk0Yg1PSv3UUFSQhYqctiFcmAxhl09kyXn2bt/6ZcJ0pbNlYMVFKXGyHrK9xWiWX+mbOn4LXYU3XH/xqWBPQo2yls9E9wR25c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Lm2KiRXI; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Lm2KiRXI" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-af98b77d2f0so1198212266b.3; Wed, 13 Aug 2025 04:00:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082830; x=1755687630; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=RrxTd0fZrSZoXHNLmGLsVXRRO9yazGCbbT+JQ4l++eQ=; b=Lm2KiRXI5vPbOGLWHlZGTe1iVOdAJO6QqZxqYQzIPOp1tzl+SDucyHaKPWAFCyeoXx 0iYYR5hlHmrAb14uWxq2TKQr8on0fKCdpZV/uf8ADUj0yASDPKgRAQ7U1Vp/1xK4c/CB rzeHy5h1ksMuma66dHM2JggzhhvoWbhJbmR1R5fMXS+JQydBlnc364/i2RqQM/6UcM+w IJezpfxq5jbbOw1jW4LDT4xvu4evFQuz+D4KbKWL1uxTRc9LwY0fBn3nw0n9GUIxNhCi 9ylLabdy5/7e/1xcE+qUm+ktt5nmF8NHbZqIC3oqH0o8gJGkoDEEtm2vnZueY9AfyLCA /k8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082830; x=1755687630; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RrxTd0fZrSZoXHNLmGLsVXRRO9yazGCbbT+JQ4l++eQ=; b=pAtvk/+N1Gm8AvlT5hvhnbZfP4r2C6PTohic+IADHZP8ew/4UL3zj7oU3YXhGvnD4U ITQJE0ZQEs28eeS7PngcFjiEGlo1QC+y6lwuqkVJIMI6De269TTzkMF3PpGb0HBkiCr0 sgVsDpRiGtddyL/k5MtF3qByJBh/k1t1T5q0nx6qwM1knH8NQ5HTA0luTp/4XR3cp6Xm UlYgNaau11eBQgW46KptdgP+mCJ2qbla2kztJf/+M4oS9/crW4OGBvluyB5PR1kwcNWh Cz/Ss+p/LlFij8rI72xk922xpNIcTd1CE/VdyzCrwx1xgtYMPwW6ojjAZRtvEBDoWZH0 Dmuw== X-Forwarded-Encrypted: i=1; AJvYcCVDlu+h0aLqDHyvUb4nML7pLMwdA+f4gqHclfOD1aZbP1xoBiMt9dHiVYeeYq/uJJU/Acr+6n8ARziXu2gG@vger.kernel.org, AJvYcCVvUwLgrAMRqT9K8aTzShg49dYRH/AE6zj6FX5I42h4RyCX8/7/6uoix5IhVsvLuJRXL4uSrQxonXKM@vger.kernel.org, AJvYcCWMR0R/3oM2aF6Xdre0dEc5aDfXPyetXkc71DP65LLC5/UNLWvfYA+Ienj+h6s+OpDQ4I2jSgBOze2f@vger.kernel.org X-Gm-Message-State: AOJu0YypRp6/eGzYm2KF/UV+foop25+vL+qKf5BIRBRtFNpxihlRpO4E OZHV35SjQO5NeR5fxsWRRjCJP2wkQhK7ASIP7FCAUDc9uQRbgh0UCuYr5bnLyB9n X-Gm-Gg: ASbGncsU2m5RT9YpuzPLPknUt0L0+xSNlc0utTgs+A9VpYKjxn+i2+Kb5rvfSlzI1yT +RMVIf+mOHl3T2JZNVvyA2feHM6Fa5/WB4yZvh+C9ZJBpipNwIci4eFgvVyGBR+re5+I/nckuI5 KofA/15qgi7/UrxnmZ2AU+5VSyJCIDQA/VttQ8Aht0H1RFF/t2zQ0awupQgxsVKX/Wl7eeHDt0t 91s0ER1Q4R74pm0OtAnArRd0+BQJdWobo3jfjnj8R1I01zXwwdB8G6bExdE/slAwKQ6HO/F4W44 NtzHIERGtpxTiKI64iu05s7m2cT4LhrJomgtC539uaOrTlyGjEP6y6qYoK5x7lY0Jk+vjPdtwhZ UgZrAEME1f1CNAcFkqBmF0PmslXzdCHKfg9wejj76PqARfGw/k2qS4HUAyR9bjrRTcD5DivkHW7 Q/wyRN X-Google-Smtp-Source: AGHT+IGQh5Gbn8MpaOPIc2Nelb2/hYtoGCvEdRAzGUzlr5r7mYnmJGK+4eLPd7dnjwh8T3//2OAVGg== X-Received: by 2002:a17:907:d18:b0:af9:3c05:b73f with SMTP id a640c23a62f3a-afca4ec18c5mr207774366b.41.1755082829423; Wed, 13 Aug 2025 04:00:29 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:28 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:11 +0200 Subject: [PATCH v6 5/9] clk: bcm: kona: Add support for bus clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-5-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber , Alex Elder X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=8647; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=PQfvqcpjdMtq6dnMREILfbHm2mHMjDZ7krmRMywS8YQ=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA9zUcRlsPl4gpUgcKLBdo20HqqhvF3JeUa/ 2bb81G4/iSJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aLEzEACAo1GqsJJt7brS72zCsUFnz7CWIRSAyCI+7wsuOPWIvtN9v5f2bXRmGMLF0ybmSBUwIgi CR1hVkyr7MZnoMZn01tFuJmY1sGu3qkDp2xOibl4NHMUKFjC1+nrGJcnY49n1EZV5zjCBcoOyye RiIWx2e/JCAWo9D/WaHY8y7u9pXyt2v4F1amzbe+4UqbypgJnKw0EFLKvQOy1bQTz1zXb6wBNCF 5SSMBnS92kmqYRoIOLOSmUo1PRLQ51QFXPkbGiQnuJakOU5dBqer9awXuCQ+qwvUp1Y6nHMzIVs 3NH8b4AcrjINPamT5iOz77bISvqaTnnfscggbS2QMp/NwK7vbuBxChaoJsRmrO00xovqlXZ+hY9 Hi7B9rn6N2JtjpcngdSvUK2YYJP7lFAuu7WnGOr9U+lekfkGdxIgEkRmRxIh9NJnGqcGd+0ON4i j6Dwue6DbunOF2jPQMxICQIgARunJlPRMrCcMZrMmxETw+dxzO6D+J+08a1RbCwXSzm96Z96hcM v6KIU0bdLPl8lqwnYDFCI4QPTJOgWzZW4q9SUeXITNJTRSrpDIupXTcB3RKgZI3wspmmKnRNtAZ jo6rj/3gUPqhS3DMCsXTDuNPI4RPRlreFmXYvW7RnlX6xcenxVnq/MQjiWYMmHv3oubvWCUzKjX EikIhlKVyBk6HeA== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Introduce support for bus clocks into the Broadcom Kona common clock driver. Most of these functions have been adapted from their peripheral clock counterparts, as they are nearly identical (bus clocks are just much more limited in terms of allowed operations). Reviewed-by: Alex Elder Signed-off-by: Artur Weber --- Changes in v6: - Made kona_bus_clk_ops const --- drivers/clk/bcm/clk-kona-setup.c | 116 +++++++++++++++++++++++++++++++++++= ++++ drivers/clk/bcm/clk-kona.c | 62 ++++++++++++++++++++- drivers/clk/bcm/clk-kona.h | 10 ++++ 3 files changed, 187 insertions(+), 1 deletion(-) diff --git a/drivers/clk/bcm/clk-kona-setup.c b/drivers/clk/bcm/clk-kona-se= tup.c index 338558f6fbaec27418497fc246de17e15236ca0d..8b6123e188fbc035cda2cf39403= 5d35197671d06 100644 --- a/drivers/clk/bcm/clk-kona-setup.c +++ b/drivers/clk/bcm/clk-kona-setup.c @@ -167,6 +167,58 @@ static bool peri_clk_data_offsets_valid(struct kona_cl= k *bcm_clk) return true; } =20 +static bool bus_clk_data_offsets_valid(struct kona_clk *bcm_clk) +{ + struct bus_clk_data *bus; + struct bcm_clk_policy *policy; + struct bcm_clk_gate *gate; + struct bcm_clk_hyst *hyst; + const char *name; + u32 range; + u32 limit; + + BUG_ON(bcm_clk->type !=3D bcm_clk_bus); + bus =3D bcm_clk->u.bus; + name =3D bcm_clk->init_data.name; + range =3D bcm_clk->ccu->range; + + limit =3D range - sizeof(u32); + limit =3D round_down(limit, sizeof(u32)); + + policy =3D &bus->policy; + if (policy_exists(policy)) { + if (policy->offset > limit) { + pr_err("%s: bad policy offset for %s (%u > %u)\n", + __func__, name, policy->offset, limit); + return false; + } + } + + gate =3D &bus->gate; + hyst =3D &bus->hyst; + if (gate_exists(gate)) { + if (gate->offset > limit) { + pr_err("%s: bad gate offset for %s (%u > %u)\n", + __func__, name, gate->offset, limit); + return false; + } + + if (hyst_exists(hyst)) { + if (hyst->offset > limit) { + pr_err("%s: bad hysteresis offset for %s " + "(%u > %u)\n", __func__, + name, hyst->offset, limit); + return false; + } + } + } else if (hyst_exists(hyst)) { + pr_err("%s: hysteresis but no gate for %s\n", __func__, name); + return false; + } + + return true; +} + /* A bit position must be less than the number of bits in a 32-bit registe= r. */ static bool bit_posn_valid(u32 bit_posn, const char *field_name, const char *clock_name) @@ -481,9 +533,46 @@ peri_clk_data_valid(struct kona_clk *bcm_clk) return kona_dividers_valid(bcm_clk); } =20 +/* Determine whether the set of bus clock registers are valid. */ +static bool +bus_clk_data_valid(struct kona_clk *bcm_clk) +{ + struct bus_clk_data *bus; + struct bcm_clk_policy *policy; + struct bcm_clk_gate *gate; + struct bcm_clk_hyst *hyst; + const char *name; + + BUG_ON(bcm_clk->type !=3D bcm_clk_bus); + + if (!bus_clk_data_offsets_valid(bcm_clk)) + return false; + + bus =3D bcm_clk->u.bus; + name =3D bcm_clk->init_data.name; + + policy =3D &bus->policy; + if (policy_exists(policy) && !policy_valid(policy, name)) + return false; + + gate =3D &bus->gate; + if (gate_exists(gate) && !gate_valid(gate, "gate", name)) + return false; + + hyst =3D &bus->hyst; + if (hyst_exists(hyst) && !hyst_valid(hyst, name)) + return false; + + return true; +} + static bool kona_clk_valid(struct kona_clk *bcm_clk) { switch (bcm_clk->type) { + case bcm_clk_bus: + if (!bus_clk_data_valid(bcm_clk)) + return false; + break; case bcm_clk_peri: if (!peri_clk_data_valid(bcm_clk)) return false; @@ -656,6 +745,14 @@ static void peri_clk_teardown(struct peri_clk_data *da= ta, clk_sel_teardown(&data->sel, init_data); } =20 +static void bus_clk_teardown(struct bus_clk_data *data, + struct clk_init_data *init_data) +{ + init_data->num_parents =3D 0; + kfree(init_data->parent_names); + init_data->parent_names =3D NULL; +} + /* * Caller is responsible for freeing the parent_names[] and * parent_sel[] arrays in the peripheral clock's "data" structure @@ -670,9 +767,23 @@ peri_clk_setup(struct peri_clk_data *data, struct clk_= init_data *init_data) return clk_sel_setup(data->clocks, &data->sel, init_data); } =20 +static int +bus_clk_setup(struct bus_clk_data *data, struct clk_init_data *init_data) +{ + init_data->flags =3D CLK_IGNORE_UNUSED; + + init_data->parent_names =3D NULL; + init_data->num_parents =3D 0; + + return 0; +} + static void bcm_clk_teardown(struct kona_clk *bcm_clk) { switch (bcm_clk->type) { + case bcm_clk_bus: + bus_clk_teardown(bcm_clk->u.data, &bcm_clk->init_data); + break; case bcm_clk_peri: peri_clk_teardown(bcm_clk->u.data, &bcm_clk->init_data); break; @@ -702,6 +813,11 @@ static int kona_clk_setup(struct kona_clk *bcm_clk) struct clk_init_data *init_data =3D &bcm_clk->init_data; =20 switch (bcm_clk->type) { + case bcm_clk_bus: + ret =3D bus_clk_setup(bcm_clk->u.data, init_data); + if (ret) + return ret; + break; case bcm_clk_peri: ret =3D peri_clk_setup(bcm_clk->u.data, init_data); if (ret) diff --git a/drivers/clk/bcm/clk-kona.c b/drivers/clk/bcm/clk-kona.c index 2641eaa4ca52c2724aa1dc9b4bdcbee5bcac95e4..fbe0d902dc8064289fa4db346f0= 6594b56bb7236 100644 --- a/drivers/clk/bcm/clk-kona.c +++ b/drivers/clk/bcm/clk-kona.c @@ -944,7 +944,7 @@ static int selector_write(struct ccu_data *ccu, struct = bcm_clk_gate *gate, return ret; } =20 -/* Clock operations */ +/* Peripheral clock operations */ =20 static int kona_peri_clk_enable(struct clk_hw *hw) { @@ -1216,9 +1216,69 @@ static bool __peri_clk_init(struct kona_clk *bcm_clk) return true; } =20 +/* Bus clock operations */ + +static int kona_bus_clk_enable(struct clk_hw *hw) +{ + struct kona_clk *bcm_clk =3D to_kona_clk(hw); + struct bcm_clk_gate *gate =3D &bcm_clk->u.bus->gate; + + return clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, true); +} + +static void kona_bus_clk_disable(struct clk_hw *hw) +{ + struct kona_clk *bcm_clk =3D to_kona_clk(hw); + struct bcm_clk_gate *gate =3D &bcm_clk->u.bus->gate; + + (void)clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, false); +} + +static int kona_bus_clk_is_enabled(struct clk_hw *hw) +{ + struct kona_clk *bcm_clk =3D to_kona_clk(hw); + struct bcm_clk_gate *gate =3D &bcm_clk->u.bus->gate; + + return is_clk_gate_enabled(bcm_clk->ccu, gate) ? 1 : 0; +} + +const struct clk_ops kona_bus_clk_ops =3D { + .enable =3D kona_bus_clk_enable, + .disable =3D kona_bus_clk_disable, + .is_enabled =3D kona_bus_clk_is_enabled, +}; + +/* Put a bus clock into its initial state */ +static bool __bus_clk_init(struct kona_clk *bcm_clk) +{ + struct ccu_data *ccu =3D bcm_clk->ccu; + struct bus_clk_data *bus =3D bcm_clk->u.bus; + const char *name =3D bcm_clk->init_data.name; + + BUG_ON(bcm_clk->type !=3D bcm_clk_bus); + + if (!policy_init(ccu, &bus->policy)) { + pr_err("%s: error initializing policy for %s\n", + __func__, name); + return false; + } + if (!gate_init(ccu, &bus->gate)) { + pr_err("%s: error initializing gate for %s\n", __func__, name); + return false; + } + if (!hyst_init(ccu, &bus->hyst)) { + pr_err("%s: error initializing hyst for %s\n", __func__, name); + return false; + } + + return true; +} + static bool __kona_clk_init(struct kona_clk *bcm_clk) { switch (bcm_clk->type) { + case bcm_clk_bus: + return __bus_clk_init(bcm_clk); case bcm_clk_peri: return __peri_clk_init(bcm_clk); default: diff --git a/drivers/clk/bcm/clk-kona.h b/drivers/clk/bcm/clk-kona.h index 7064ce316981ef8f32cf20cd4cf674e5f0169101..a290f8870e24c286e53c0ad68c0= 946c8f891f9d2 100644 --- a/drivers/clk/bcm/clk-kona.h +++ b/drivers/clk/bcm/clk-kona.h @@ -390,6 +390,14 @@ struct peri_clk_data { struct bcm_clk_sel sel; const char *clocks[]; /* must be last; use CLOCKS() to declare */ }; + +struct bus_clk_data { + struct bcm_clk_policy policy; + struct bcm_clk_gate gate; + struct bcm_clk_hyst hyst; + const char *clocks[]; /* must be last; use CLOCKS() to declare */ +}; + #define CLOCKS(...) { __VA_ARGS__, NULL, } #define NO_CLOCKS { NULL, } /* Must use of no parent clocks */ =20 @@ -401,6 +409,7 @@ struct kona_clk { union { void *data; struct peri_clk_data *peri; + struct bus_clk_data *bus; } u; }; #define to_kona_clk(_hw) \ @@ -488,6 +497,7 @@ struct ccu_data { /* Exported globals */ =20 extern const struct clk_ops kona_peri_clk_ops; +extern const struct clk_ops kona_bus_clk_ops; =20 /* Externally visible functions */ =20 --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C1E942FA0F2; Wed, 13 Aug 2025 11:00:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082835; cv=none; b=TTVGwVfQ2oQ5AVo8+89/Jb2EoBc8/sDCeO5WCXBE4gusAt99ztBVjGMlLdpKf+v6X4TWxQ0NJtEoOHY8O0ZdSkTnPAVLFsTWmMyp6lzbbba2/HZGg62P5e3qTNHoY2vyYsiq8xYF05fuDsLn492psKJ1EnPlulqpV9zT7EWVCdA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082835; c=relaxed/simple; bh=Gq7lvAxtLYAke9zvYzvJyfhtBiZKv6UgZ6bOPFeWiL4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Tqp1UjACaD+vBoZJEI/Pviz3xe4a300z88bPWBrNM0ZK0AzmusBoHi5VZP1CStF3B1uB9bL/1pAmXjgiHI5CDfWTP/8Iccjn1D9jVecD8oLnheU4m/KE++TaF8lq4DghzDzRnWDUJbLErZDWeZ7kCCm4ji+XRFLrfNUF9/ED8mc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=h+SC7aQD; arc=none smtp.client-ip=209.85.218.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="h+SC7aQD" Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-af98b77d2f0so1198220366b.3; Wed, 13 Aug 2025 04:00:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082832; x=1755687632; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=v6v9b5bSF0XUxHDNFzPCHx7YgPRQ9cjjoZsAismkQ8s=; b=h+SC7aQD3r0JqN/ESCo8IN5N7n4cQBCUHAJRVBKfVyWr7LSf3oT6ZI5Cv1h2Cu/M7K p5aTQyQrNI7kZ3+3Hzlyko+dtRDjUPlCSOdT5j5YkQIPZnGM1Ee8i0x/9VX2IDF6I8Rm mf93LH5MZVB4HMne8hrsgFTxzDNlAdvwyYziHuCV0jn0IAshWx3IL106Tv39y6zTq2l9 //DYY3UNhsmSMDUY5pJs68xx4tHaNHNsCGeEd62VFG0+FdSbEIiuaAOWGEYkvr8sqVKg qa7jZUdtfOHxr9GRUyZ7Y5mqAknAVi0Xfo1fHdiFENHA6RTxLGjx6HstvuT4uUM+oDYs y19A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082832; x=1755687632; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=v6v9b5bSF0XUxHDNFzPCHx7YgPRQ9cjjoZsAismkQ8s=; b=qKHTjncONIDYna8FRm3mtyzJ55v8wJYReQrDjC7rafy1eME+C11qsYXth48ompBVp+ 2c388J23n6zYKOpfDY40JsRSV1Z4qzT3zG+zRNBH5sItxOznSBZhsgKLkTlajSPA9pst DRqKousUM6hry3TrRBhemHzO68xqQdISASdNoLex/1iTQnbIQ4qMkjb5Ucz/YNsW02Lo bAEmqHEs3ImpvOrYrxbcgz+plvpxxNC+L3q8ER4gaXOKdkTp94BoEpVPSnQWI2Up1Zyf uuirGr7wQttjPr23KP30B3nF0kyR9dEgrL9IWQ7aD6BErgpf9Qt3181IBMpLxj+AFIVG AT/w== X-Forwarded-Encrypted: i=1; AJvYcCVRwu2lK1inqvl9vMxygiaq84oFN7e9T8FiR0OBEwdiqp5tPChE213S2lB4R/Pbr02SrfQS4mLlUeyN@vger.kernel.org, AJvYcCW7MQjFO78ii2qXV0kaMqlkBxGqBfutJqpfJoCEnOBO5SshjD9MfXT5JXtKMrWNpqGGzMcEUb2YIqVDf5+q@vger.kernel.org, AJvYcCWIYORlc7ZzAOn4biVjj9FEw3QQWlKypoGO/piB1Jv5nC0CtGlfeH5fQk2c1Yk4AccY8TVnQ98aWt3O@vger.kernel.org X-Gm-Message-State: AOJu0Yw81RATnaYvgBvG/ZPyzeux2TY43AlF+paVSBNcjrd+dj3y8cZt w16B0gp566UlJ+pe/E8V4VUYEVt3CKqjf72GaYKoq9lwddYUIvb1hpOz X-Gm-Gg: ASbGncu+poL44KYUL/OThIHklB3N9e8FfK2YUasHEIcoVw3cMuwXCXDRedpgY/Fp47a 8v3ZSxF9r+405s1NYvr0uZ4ylOJpEFEFNpZFUrkHeICIDvOLwcJrX3fbW4rBiGz8pVUhZVR89Sz NC/1OD83S9WkZ/IWr/kZFGMtDkg588HiAXvyGSmc6ef+vte0d4evI5jQYezPDDeff2JgZiarQXh YFq9BzcH8SgRP2jqUrB6188dXPyzoT6m4Rz9O3YXcEux7lUKzp5GIC5b5O/AAioDL4G7iDSfZ1y WXXlZPIq3VNnCYzchxSLwnoSASVFtuewOLYlpAMPYZ80o17553BX39xbeaPEI8k2z/MsZUvI2ll a+ckJD4ZiplgSDd3JIUUiPqkjf/g0Amk5LeJLUKisF/E7VidfGUsyYjKBGc5kwknvM6DOT9Dd1A Rep4t/ X-Google-Smtp-Source: AGHT+IEjpV8uKzDh0mqjSYJdMkdpDUvzmzgtcM5DbbXrgqYqpERe5r1rLRQ+ntgzzLdXaURecIaxJQ== X-Received: by 2002:a17:907:724b:b0:ade:4339:9367 with SMTP id a640c23a62f3a-afca4db9115mr274442466b.26.1755082831981; Wed, 13 Aug 2025 04:00:31 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:31 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:12 +0200 Subject: [PATCH v6 6/9] clk: bcm21664: Add corresponding bus clocks for peripheral clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-6-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=5067; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=Gq7lvAxtLYAke9zvYzvJyfhtBiZKv6UgZ6bOPFeWiL4=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA9PFfpIcmbnxav3qONDESI4hRMmnXIkt+GR N0gQvH/nEKJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPQAKCRCzu/ihE6BR aN5nD/4x15LNvhxIRyWToXPUg5x8ovQAr/3oEsuKMjO+H+yEzhxAtk0nVLKjl4QPP/LN+PkgKrg p0qvxUEvHgKscr+clMxQRyFv0AChlKLCDGO3BbBfAjBf2yEKESCCT628sSpghPoycTPtJ/b9244 OM87WmVNzipTNEg7LAHeEd2CC66qhjfa/szv0vO6Z8QHlqWHH+NO0BF/RknMSRRE0RyaTSoEzFv pAaUFgQnBZh8s4ANQAjVBsTJlKzrMswuDPuqat0si/xyjD9ZT8dGgEMqHjZbKlHqNuIsAGmuKI6 O/E7yY3TbwfVzDTUMzWRWgYfgjDPG4fAbz5lSZb3ND1jC5jVaOEeSDEUBfXnvwZmBIT5ajRRfqn 6KmbbleqP+oALn3u7GVuhdoda0B557FyX8qJ2eGV0xcNd62UBcueOhtKhWnATxtnOfGzU8IEaLd f0Tr5Qwrp8TIUf32AYuRvi5Ap0uwaPJrtrZ6IcOvTzclF3Pr64koIO5CzR0oC6EHrLULJzJT1qX zZEJ78rvrvt1yAMLjWKMPtcIRAi3t7kdEVcVkGpjV4kwbwzUH8jbEIC5MCZjzBmoK4q9osUmu/I NDIDAgBZSIrubP9kVykSEAk9IcSAIPMqtWInNWtWLsdrjDwHlW0YgqOywrJXNwPA47AGnPMRzGi aeLulAuP48rOgHQ== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Now that bus clock support has been implemented into the Broadcom Kona clock driver, add bus clocks corresponding to HUB_TIMER, SDIO, UART and BSC, as well as the USB OTG bus clock. Signed-off-by: Artur Weber --- Changes in v4: - Adapt to CLOCK_COUNT -> CLK_COUNT rename - Change commit summary to match equivalent BCM281xx commit Changes in v3: - Adapt to CLOCK_COUNT defines being moved Changes in v2: - Adapt to dropped prereq clocks --- drivers/clk/bcm/clk-bcm21664.c | 89 ++++++++++++++++++++++++++++++++++++++= ++-- 1 file changed, 86 insertions(+), 3 deletions(-) diff --git a/drivers/clk/bcm/clk-bcm21664.c b/drivers/clk/bcm/clk-bcm21664.c index 14b7db824704824b4a6bfcce79308afa44e092c6..4223ac1c35a258bd30ba2bd4b24= 0da6b1e88fa06 100644 --- a/drivers/clk/bcm/clk-bcm21664.c +++ b/drivers/clk/bcm/clk-bcm21664.c @@ -41,7 +41,12 @@ static struct peri_clk_data hub_timer_data =3D { .trig =3D TRIGGER(0x0a40, 4), }; =20 -#define BCM21664_AON_CCU_CLK_COUNT (BCM21664_AON_CCU_HUB_TIMER + 1) +static struct bus_clk_data hub_timer_apb_data =3D { + .gate =3D HW_SW_GATE(0x0414, 18, 3, 2), + .hyst =3D HYST(0x0414, 10, 11), +}; + +#define BCM21664_AON_CCU_CLK_COUNT (BCM21664_AON_CCU_HUB_TIMER_APB + 1) =20 static struct ccu_data aon_ccu_data =3D { BCM21664_CCU_COMMON(aon, AON), @@ -52,6 +57,8 @@ static struct ccu_data aon_ccu_data =3D { .kona_clks =3D { [BCM21664_AON_CCU_HUB_TIMER] =3D KONA_CLK(aon, hub_timer, peri), + [BCM21664_AON_CCU_HUB_TIMER_APB] =3D + KONA_CLK(aon, hub_timer_apb, bus), [BCM21664_AON_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; @@ -126,7 +133,27 @@ static struct peri_clk_data sdio4_sleep_data =3D { .gate =3D HW_SW_GATE(0x0360, 18, 2, 3), }; =20 -#define BCM21664_MASTER_CCU_CLK_COUNT (BCM21664_MASTER_CCU_SDIO4_SLEEP + 1) +static struct bus_clk_data sdio1_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0358, 16, 0, 1), +}; + +static struct bus_clk_data sdio2_ahb_data =3D { + .gate =3D HW_SW_GATE(0x035c, 16, 0, 1), +}; + +static struct bus_clk_data sdio3_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0364, 16, 0, 1), +}; + +static struct bus_clk_data sdio4_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0360, 16, 0, 1), +}; + +static struct bus_clk_data usb_otg_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0348, 16, 0, 1), +}; + +#define BCM21664_MASTER_CCU_CLK_COUNT (BCM21664_MASTER_CCU_USB_OTG_AHB + 1) =20 static struct ccu_data master_ccu_data =3D { BCM21664_CCU_COMMON(master, MASTER), @@ -151,6 +178,16 @@ static struct ccu_data master_ccu_data =3D { KONA_CLK(master, sdio3_sleep, peri), [BCM21664_MASTER_CCU_SDIO4_SLEEP] =3D KONA_CLK(master, sdio4_sleep, peri), + [BCM21664_MASTER_CCU_SDIO1_AHB] =3D + KONA_CLK(master, sdio1_ahb, bus), + [BCM21664_MASTER_CCU_SDIO2_AHB] =3D + KONA_CLK(master, sdio2_ahb, bus), + [BCM21664_MASTER_CCU_SDIO3_AHB] =3D + KONA_CLK(master, sdio3_ahb, bus), + [BCM21664_MASTER_CCU_SDIO4_AHB] =3D + KONA_CLK(master, sdio4_ahb, bus), + [BCM21664_MASTER_CCU_USB_OTG_AHB] =3D + KONA_CLK(master, usb_otg_ahb, bus), [BCM21664_MASTER_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; @@ -231,7 +268,39 @@ static struct peri_clk_data bsc4_data =3D { .trig =3D TRIGGER(0x0afc, 19), }; =20 -#define BCM21664_SLAVE_CCU_CLK_COUNT (BCM21664_SLAVE_CCU_BSC4 + 1) +static struct bus_clk_data uartb_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0400, 16, 0, 1), +}; + +static struct bus_clk_data uartb2_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0404, 16, 0, 1), +}; + +static struct bus_clk_data uartb3_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0408, 16, 0, 1), +}; + +static struct bus_clk_data bsc1_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0458, 16, 0, 1), + .hyst =3D HYST(0x0458, 8, 9), +}; + +static struct bus_clk_data bsc2_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x045c, 16, 0, 1), + .hyst =3D HYST(0x045c, 8, 9), +}; + +static struct bus_clk_data bsc3_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0470, 16, 0, 1), + .hyst =3D HYST(0x0470, 8, 9), +}; + +static struct bus_clk_data bsc4_apb_data =3D { + .gate =3D HW_SW_GATE_AUTO(0x0474, 16, 0, 1), + .hyst =3D HYST(0x0474, 8, 9), +}; + +#define BCM21664_SLAVE_CCU_CLK_COUNT (BCM21664_SLAVE_CCU_BSC4_APB + 1) =20 static struct ccu_data slave_ccu_data =3D { BCM21664_CCU_COMMON(slave, SLAVE), @@ -254,6 +323,20 @@ static struct ccu_data slave_ccu_data =3D { KONA_CLK(slave, bsc3, peri), [BCM21664_SLAVE_CCU_BSC4] =3D KONA_CLK(slave, bsc4, peri), + [BCM21664_SLAVE_CCU_UARTB_APB] =3D + KONA_CLK(slave, uartb_apb, bus), + [BCM21664_SLAVE_CCU_UARTB2_APB] =3D + KONA_CLK(slave, uartb2_apb, bus), + [BCM21664_SLAVE_CCU_UARTB3_APB] =3D + KONA_CLK(slave, uartb3_apb, bus), + [BCM21664_SLAVE_CCU_BSC1_APB] =3D + KONA_CLK(slave, bsc1_apb, bus), + [BCM21664_SLAVE_CCU_BSC2_APB] =3D + KONA_CLK(slave, bsc2_apb, bus), + [BCM21664_SLAVE_CCU_BSC3_APB] =3D + KONA_CLK(slave, bsc3_apb, bus), + [BCM21664_SLAVE_CCU_BSC4_APB] =3D + KONA_CLK(slave, bsc4_apb, bus), [BCM21664_SLAVE_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BF3F32FABE7; Wed, 13 Aug 2025 11:00:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082837; cv=none; b=NeG/uWYu8jCcmY1WPLLQFZaCZeY8+BfpEi03aHKljospLWM68V9vkrIuupmLAXkIHQu3GmBoWhbzu3db2Tvpn8x3rZhuS41cDpkSFJgRRRXcB2PzaZeeuH1i8PIhDMw4Re4FoNuDUlWjJtP+vjo45ugtL0AQPkHesKWki8PWV40= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082837; c=relaxed/simple; bh=I4wRN3KkFekGNXMWJvTYQVypbn2IQ5ZoSclWcZEKoiY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AOD/UVqRefnAwElWMMDDS+OEG1kdTgtsY0PgO0WteqKvLQUXV2zsx7v1ahcXUKGPCBICR7GtYs96A/nMVA//XOgv1ZgGe5JL9/+OcMmIt/aEYfCBAddwDyrXHMFP55F2GLOHd/hptciaEUqJrNjJ+DwLJ8YJzJAwFHNIPCKDoQM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=dCMBfrrs; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="dCMBfrrs" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-af93c3bac8fso906279766b.2; Wed, 13 Aug 2025 04:00:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082834; x=1755687634; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=jPQecaBa2ZbQtikCUaWiWmxdWG34bpxT6oauUx0D2Cc=; b=dCMBfrrs69GTi8hnVys+bIW+RmoPiVVS2EJOXNKru4t/9vHGN4VfMWq9nvJpyeeU8w fV6K94bHYWUSKXxAD0dOHm0SFY5hjGNbC7lKjz8UaeCsd/E+VxV6CDDbjQIuZX8l79/a 7EzcU0hC3KYjNNFj1i4xj+omH+5FjAr6QEruNYzg0VEOgf2+z8+ylazRGOPnCk+wVsoo AjSIZoA2kIHbHPTyKHO81DzJPa0vo+ougSeAaAuk1hEc556f939yBC34IxMsO2ryt/6i MGHXw2WvAA1zhDCZj8tWlp9wq1z1SNYZdQKSdPFFTYpiSUYKqy+zgk4bawUz9pw+LjiA 9quw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082834; x=1755687634; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jPQecaBa2ZbQtikCUaWiWmxdWG34bpxT6oauUx0D2Cc=; b=PQeKimMhboCd2zYFJJGGg6QZHWO/g1cS95Xhk+YuYGb4Us4RRBFUfGuOphuFpOR+Qv ndLwVaE3Kj7DXQRqWXVnlh4R7p1jiWzJF+UAc383AzX/ZS8WPZ/ynpeepXtx2ddIGOfL YpTukpaYrlkJmCEqXXWIryKlv02zIRD+9cydZVTnYReH5YR6/8VUntZpUzkAx2KGNfjV CFHfyekml7NLzVQCHC66n6ClT8IhV+0MN97iHx2i0oUlVXfofT6pWJrTYclIDAe6r7yz AXzSBNWmEl9VcYgwQbgPl0kVMrjA/tFJqTrxjOKktvQ5SPMwlZbrN/g69XbfSS5UnwwO aC5w== X-Forwarded-Encrypted: i=1; AJvYcCU+JhI9Vj39Uuz04bvM8snSyfsbKtDApQKD05k4p/0/Y4r+YcDe1mKNdcgBNjJS5WBQsmlRYr3vTzel@vger.kernel.org, AJvYcCWoi6I2rmfaGkgTetKbFdfyRiuELAvJoZIr2/43VWvVhMGcqKfL7PXbTGx1PSWSIoDXub3MmIOUgaSdV8xB@vger.kernel.org, AJvYcCXz/ircXzH/xsAbKw4iJI0LQxBSpo9a8sxpBnyq5Ou1ABOx6yX32nwkAmjkYqqn3sDwFOU+QdYyFffN@vger.kernel.org X-Gm-Message-State: AOJu0Yx7HZOIDXaKZJq7O1L1AG2gjnPnGGBVVlsDCcjVIdYrQPSOxNZZ 7T4yBrGK1W1fRcAi0zd5f+cuhcUy/Clm8//zUwC2aFKAx6VrIR6jGzKwkG/y6YAi X-Gm-Gg: ASbGncsGqEqAYcfr8X2CaQbO1KwG/CabGlzyknPAqYsEV553VzzXf15Vd8aFOzrnDiH tL6Vwok0EeW/Qh2GKpPRzAiGx1LZWnvNVQXvv/LoqfLrPLUdbZdrGLgkjY103NCkSQOXLWrsyJO BUqt+P65T6pRHFfk5lhCuAPtIrqR3bA83l0SQd9hQQEJ35B7UxmyjNji5JC2j4gLrTNjCiLM0PV mIIp5CBc9dxGD8h61LH5kCObw2AB+BoZCRJpKPLjyhLITcudRLgf/1vm778SQifqiGbo5uEFyxG t68lavfUlOCDA4+NhZOp6rEg2zy0hgQkH6K5ewiNTsLeLiIMBwPBHVZonSI38LJoZp/KCCDH3s1 I5e/hgRgosPdKBV2/bZ+ElpPiUi5Egy74+OXMK69hKZmKyVIrO9DbMK1MVMTa32+BqYLUJo8Z6J L0JZSb X-Google-Smtp-Source: AGHT+IFygjdX4zks77zDv5lXPN6A8NVx7lOIanCSu8uh0ZExHtyqNilgf2QwtI9ylVeq3rYeVw0p4A== X-Received: by 2002:a17:907:2d2c:b0:af9:8d62:b1ab with SMTP id a640c23a62f3a-afca4ccded9mr301187966b.10.1755082833843; Wed, 13 Aug 2025 04:00:33 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:33 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:13 +0200 Subject: [PATCH v6 7/9] clk: bcm281xx: Add corresponding bus clocks for peripheral clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-7-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=5998; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=I4wRN3KkFekGNXMWJvTYQVypbn2IQ5ZoSclWcZEKoiY=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA+8AUsepJbdIVrRZk3+xeY2c74BI9jKew0E ivHMgKs1LGJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPgAKCRCzu/ihE6BR aD3pD/93RapZiPZaEaoSCv/y7TXThVF1EnX+u9QI1P8FFlzMgPLVAPDVZyBAfv6cBHGl3CHbBZG sKqmdLzOH7fR4HNfnUevaBN9WOiyCyds/zt5BmGm2d03g4ePHuPyAZcm66gCRSCY17laQISc2yv K0wQ4GKlDYkHp5zfpaQMIJsV3t7oKMwVxV4l5c6iDeHecoEjZncgD2KGK8mpvughUaoVJ3RNIzx mCUh7VjaXRp5AmxQE9VmRrXZE5I18n1EEqxfFZ3fBTZIMv40AqtBd81aCfPTKN3bcMaXewMtEgk tF4WnOS/tkE6fJFUa/KDjT8b+1onYDEqGA2cFNT7+6P+PrWyuMhVikAPvcgyHJZwrG5C86q3F7I vA6ExpJj/t0AUkFt4qgxqJrumGWrzOZOY5DGXolzVRUtx58iLxFUsbUB/e2XLGtABDhEs2tYOAp P0snT/iMC4cf6Y4sPnGz/sv7Cs17Y1XXNqnutNDq96MGl5S3aCR2UuTdz6ItBLBVFEU2PiwsSev W/WUpvVgj9EbPctOjX1a0I1yFLWBN5Th3J4R+97LF6jY5s624r2IFx6C1XxfoeFYTRXtuyv/YXS gaNPpza0XfmKe4xYxVEeHhX17W5NCcEVu17l2Lpqg6xsWke+TNcjERbWHYHUVqpJv4Ukq+Xe6rH UwLJBrY75KDLSzw== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Add bus clocks corresponding to peripheral clocks currently supported by the BCM281xx clock driver. Signed-off-by: Artur Weber --- Changes in v4: - Adapt to CLOCK_COUNT -> CLK_COUNT rename Changes in v3: - Adapt to CLOCK_COUNT defines being moved Changes in v2: - Add this patch (BCM281xx bus clocks) --- drivers/clk/bcm/clk-bcm281xx.c | 127 +++++++++++++++++++++++++++++++++++++= +++- 1 file changed, 124 insertions(+), 3 deletions(-) diff --git a/drivers/clk/bcm/clk-bcm281xx.c b/drivers/clk/bcm/clk-bcm281xx.c index 62c3bf4656259261ae4f7d81dae48c90ab26c04e..13fd8a5ea8fa07bf6f3cca83b6b= 18e59a8de63df 100644 --- a/drivers/clk/bcm/clk-bcm281xx.c +++ b/drivers/clk/bcm/clk-bcm281xx.c @@ -59,7 +59,17 @@ static struct peri_clk_data pmu_bsc_var_data =3D { .trig =3D TRIGGER(0x0a40, 2), }; =20 -#define BCM281XX_AON_CCU_CLK_COUNT (BCM281XX_AON_CCU_PMU_BSC_VAR + 1) +static struct bus_clk_data hub_timer_apb_data =3D { + .gate =3D HW_SW_GATE(0x0414, 18, 3, 2), + .hyst =3D HYST(0x0414, 10, 11), +}; + +static struct bus_clk_data pmu_bsc_apb_data =3D { + .gate =3D HW_SW_GATE(0x0418, 18, 3, 2), + .hyst =3D HYST(0x0418, 10, 11), +}; + +#define BCM281XX_AON_CCU_CLK_COUNT (BCM281XX_AON_CCU_PMU_BSC_APB + 1) =20 static struct ccu_data aon_ccu_data =3D { BCM281XX_CCU_COMMON(aon, AON), @@ -70,6 +80,10 @@ static struct ccu_data aon_ccu_data =3D { KONA_CLK(aon, pmu_bsc, peri), [BCM281XX_AON_CCU_PMU_BSC_VAR] =3D KONA_CLK(aon, pmu_bsc_var, peri), + [BCM281XX_AON_CCU_HUB_TIMER_APB] =3D + KONA_CLK(aon, hub_timer_apb, bus), + [BCM281XX_AON_CCU_PMU_BSC_APB] =3D + KONA_CLK(aon, pmu_bsc_apb, bus), [BCM281XX_AON_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; @@ -178,7 +192,36 @@ static struct peri_clk_data hsic2_12m_data =3D { .trig =3D TRIGGER(0x0afc, 5), }; =20 -#define BCM281XX_MASTER_CCU_CLK_COUNT (BCM281XX_MASTER_CCU_HSIC2_12M + 1) +static struct bus_clk_data sdio1_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0358, 16, 1, 0), +}; + +static struct bus_clk_data sdio2_ahb_data =3D { + .gate =3D HW_SW_GATE(0x035c, 16, 1, 0), +}; + +static struct bus_clk_data sdio3_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0364, 16, 1, 0), +}; + +static struct bus_clk_data sdio4_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0360, 16, 1, 0), +}; + +static struct bus_clk_data usb_ic_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0354, 16, 1, 0), +}; + +/* also called usbh_ahb */ +static struct bus_clk_data hsic2_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0370, 16, 1, 0), +}; + +static struct bus_clk_data usb_otg_ahb_data =3D { + .gate =3D HW_SW_GATE(0x0348, 16, 1, 0), +}; + +#define BCM281XX_MASTER_CCU_CLK_COUNT (BCM281XX_MASTER_CCU_USB_OTG_AHB + 1) =20 static struct ccu_data master_ccu_data =3D { BCM281XX_CCU_COMMON(master, MASTER), @@ -197,6 +240,20 @@ static struct ccu_data master_ccu_data =3D { KONA_CLK(master, hsic2_48m, peri), [BCM281XX_MASTER_CCU_HSIC2_12M] =3D KONA_CLK(master, hsic2_12m, peri), + [BCM281XX_MASTER_CCU_SDIO1_AHB] =3D + KONA_CLK(master, sdio1_ahb, bus), + [BCM281XX_MASTER_CCU_SDIO2_AHB] =3D + KONA_CLK(master, sdio2_ahb, bus), + [BCM281XX_MASTER_CCU_SDIO3_AHB] =3D + KONA_CLK(master, sdio3_ahb, bus), + [BCM281XX_MASTER_CCU_SDIO4_AHB] =3D + KONA_CLK(master, sdio4_ahb, bus), + [BCM281XX_MASTER_CCU_USB_IC_AHB] =3D + KONA_CLK(master, usb_ic_ahb, bus), + [BCM281XX_MASTER_CCU_HSIC2_AHB] =3D + KONA_CLK(master, hsic2_ahb, bus), + [BCM281XX_MASTER_CCU_USB_OTG_AHB] =3D + KONA_CLK(master, usb_otg_ahb, bus), [BCM281XX_MASTER_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; @@ -309,7 +366,51 @@ static struct peri_clk_data pwm_data =3D { .trig =3D TRIGGER(0x0afc, 15), }; =20 -#define BCM281XX_SLAVE_CCU_CLK_COUNT (BCM281XX_SLAVE_CCU_PWM + 1) +static struct bus_clk_data uartb_apb_data =3D { + .gate =3D HW_SW_GATE(0x0400, 16, 1, 0), +}; + +static struct bus_clk_data uartb2_apb_data =3D { + .gate =3D HW_SW_GATE(0x0404, 16, 1, 0), +}; + +static struct bus_clk_data uartb3_apb_data =3D { + .gate =3D HW_SW_GATE(0x0408, 16, 1, 0), +}; + +static struct bus_clk_data uartb4_apb_data =3D { + .gate =3D HW_SW_GATE(0x040c, 16, 1, 0), +}; + +static struct bus_clk_data ssp0_apb_data =3D { + .gate =3D HW_SW_GATE(0x0410, 16, 1, 0), +}; + +static struct bus_clk_data ssp2_apb_data =3D { + .gate =3D HW_SW_GATE(0x0418, 16, 1, 0), +}; + +static struct bus_clk_data bsc1_apb_data =3D { + .gate =3D HW_SW_GATE(0x0458, 16, 1, 0), + .hyst =3D HYST(0x0458, 8, 9), +}; + +static struct bus_clk_data bsc2_apb_data =3D { + .gate =3D HW_SW_GATE(0x045c, 16, 1, 0), + .hyst =3D HYST(0x045c, 8, 9), +}; + +static struct bus_clk_data bsc3_apb_data =3D { + .gate =3D HW_SW_GATE(0x0484, 16, 1, 0), + .hyst =3D HYST(0x0484, 8, 9), +}; + +static struct bus_clk_data pwm_apb_data =3D { + .gate =3D HW_SW_GATE(0x0468, 16, 1, 0), + .hyst =3D HYST(0x0468, 8, 9), +}; + +#define BCM281XX_SLAVE_CCU_CLK_COUNT (BCM281XX_SLAVE_CCU_PWM_APB + 1) =20 static struct ccu_data slave_ccu_data =3D { BCM281XX_CCU_COMMON(slave, SLAVE), @@ -334,6 +435,26 @@ static struct ccu_data slave_ccu_data =3D { KONA_CLK(slave, bsc3, peri), [BCM281XX_SLAVE_CCU_PWM] =3D KONA_CLK(slave, pwm, peri), + [BCM281XX_SLAVE_CCU_UARTB_APB] =3D + KONA_CLK(slave, uartb_apb, bus), + [BCM281XX_SLAVE_CCU_UARTB2_APB] =3D + KONA_CLK(slave, uartb2_apb, bus), + [BCM281XX_SLAVE_CCU_UARTB3_APB] =3D + KONA_CLK(slave, uartb3_apb, bus), + [BCM281XX_SLAVE_CCU_UARTB4_APB] =3D + KONA_CLK(slave, uartb4_apb, bus), + [BCM281XX_SLAVE_CCU_SSP0_APB] =3D + KONA_CLK(slave, ssp0_apb, bus), + [BCM281XX_SLAVE_CCU_SSP2_APB] =3D + KONA_CLK(slave, ssp2_apb, bus), + [BCM281XX_SLAVE_CCU_BSC1_APB] =3D + KONA_CLK(slave, bsc1_apb, bus), + [BCM281XX_SLAVE_CCU_BSC2_APB] =3D + KONA_CLK(slave, bsc2_apb, bus), + [BCM281XX_SLAVE_CCU_BSC3_APB] =3D + KONA_CLK(slave, bsc3_apb, bus), + [BCM281XX_SLAVE_CCU_PWM_APB] =3D + KONA_CLK(slave, pwm_apb, bus), [BCM281XX_SLAVE_CCU_CLK_COUNT] =3D LAST_KONA_CLK, }, }; --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8BD412F659A; Wed, 13 Aug 2025 11:00:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082839; cv=none; b=Paswj1Us+82lHgLz9ruPngdGpZkKziN8RxI1KRYRM8ARXybz59AKR/QoFrXbIZyOmO/p3ubttRzE0sFFxXJhyJ2uqNwVRZMfSVfprgI2HrJJCHjoEYezHXB5fTNeU2GpUO0/o/tN8X0lobshPmPdxeaNrEJdLRyK9ma5gP/HSEs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082839; c=relaxed/simple; bh=h392+mnpg7XL/aXcx1eoF94ujTiYzX21EL9Uh5HDyNo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JC1l2sU9BlXkI6zb6vKV5IVLf/51WyZFm1Pp7bpmLzRPQBjpgX1lgsLqZz56k0wEr768bqwlgLtKoxF6hpJruAD2KMFoK4jUqbs7AM3TJ7QXiRJyFO4cb7NWp6M2MOMYLAJa3ex4Ne/fukE4jjjKASLiBzb/kyaRolc0PPi7Wb4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Dg/PLN6s; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Dg/PLN6s" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-af922ab4849so985767066b.3; Wed, 13 Aug 2025 04:00:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082836; x=1755687636; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8ZfW10zFYbqBNwsmMYYxG2KbvaoSIbM1bx9G5szi1GA=; b=Dg/PLN6sSFCqzly5VT2yz2rcKnAgXY6kV5JaTf3LO4897aY5kBCUO7dZ61tsWeCGt5 W+FpD/w9zeanItO0UbQmzLLQQDEzuk60Vxcb8UliEZMJJ+q5ayWBqqeE1cLxmKTJ11ts /W9YqH7WrVj2fmA/V8jfSCaG1rW2QUI4CAqb6vhzx8FdGIUEJkO1sb0O0x+fVVEZVsCV uIcNcHWJhv48KTlpbyl65VzaOwn+PUKP7D9UK02Hl6zl44xMzY6N+EgbjSB6dad+b5Ar yF6B9i6fOXYx8z7UFErQM4YkHLc9groaKt1Dj2tj9RJ3OsNwHjfh608dGmJIPz7/6bUv No6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082836; x=1755687636; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8ZfW10zFYbqBNwsmMYYxG2KbvaoSIbM1bx9G5szi1GA=; b=oHcGgR2c98XUt+J+3lZaaZmImIfOsiy2gkh9lzey1e19qgT4bOpgWVBY0whirkbp28 97hFdqdSdsay4jYKwmvckTWVziFk2KJdrAnd842fwl5sL7vc3ueL5W0jtjSlfJFikuqY F/5SFtBIXxmBeuTW8+KxxvpjFQgVDih9bosPR5jB6fNcZAjb8xMgP0XBTBXhTEPlJmbX ORB3pC9wO6hbOgHqlirOqPCORECCHKxUii6KUqw1SluOueYGtwX2CFW+K0OrSlfOzspQ bXSeIjoynOv3EtAiVrPgpEYfXSuOR51R4u7oETYeNgK7xTe8/XA4RsoKu8OxoVQ5wqy4 iRaQ== X-Forwarded-Encrypted: i=1; AJvYcCV570CJg/fD92MBCGL+G0cDN7mp03Nc+z8/SObKg96RgmoeBuI15YPaATG1EGpaMy2NzsdIq9YgdNp8@vger.kernel.org, AJvYcCWUpvLnBCfvlyVsd8GQd+9qR4/RHhgxpSEW6N6i2d7mb+SJdSjP8sCjGrTvIFXoGY+D96CurKrjegL2@vger.kernel.org, AJvYcCXFJJrWpsmUvPlop2K2IjyOQt1YHTwtKFAsUORDrInbQmxSXyo8cmkqZLu42TRcZ7vrUTMgg1j49wET7ao0@vger.kernel.org X-Gm-Message-State: AOJu0YyEDFGrNNm7tN8B/6JMceCgyU8Iz3Y3wxcbAuMsHpMYoYp9Vt96 wNKX/wV/4cmksHUQzt3l4LcEcJApziojLXZSEuBo6X9BhUOEcE7ZR3CT X-Gm-Gg: ASbGncvVpYjrr+g0d6Owx1e9xvggMcE7/QdHUgeL4lCw9hCka8umMXXfKieamDu10EN 4PZZ9W8BbKbUQV9fRRLTRJlZ7WfY6z6Vn8GuVIVyRQyA3GGXM0HLAwfIP3DYNw1jdlEYB3EGveS x8lbt4Czif0h/+e89oZmJT4qZsuYUo3hx79DtTR5adsQtzo4MDgngUTbp2pVkD38hG+c2i5GMOC BFimyFQDePQ+dBcXPw2HMGu0XNDUK4fev5WvAG+TycLXHeROXbR03O9cB5Sm9G3Bv3n5BZ9Bjyi rYhk24wdAxg9HQr5GU3VnfJauBaRQAXVAcuPEditrKYRcaHlPmpimtsbjCtJ/xd40zuO+zguuYW KnIu5m2whQbrMzfWRvoPtrrbfh6omJTKWouSIF+66K8G7V8m3viqlN6OLU7zZHHovt6rl6Gsm+Q vfHNM6 X-Google-Smtp-Source: AGHT+IHBVpEx8bhMMYRCjTIGjv0d9XitVwLkFklyI52qfh6/v+GfxUm3Hg0LhC3860E0Az0OXPHb/w== X-Received: by 2002:a17:907:3f98:b0:af3:7645:43e1 with SMTP id a640c23a62f3a-afca4d011c3mr285818566b.17.1755082835744; Wed, 13 Aug 2025 04:00:35 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:35 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:14 +0200 Subject: [PATCH v6 8/9] ARM: dts: bcm2166x-common: Add matching bus clocks for peripheral clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-8-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2451; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=h392+mnpg7XL/aXcx1eoF94ujTiYzX21EL9Uh5HDyNo=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA+FPFwVaGa67+guCmLndtPZd2mh94+S+aNC +bD7m65ftSJAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPgAKCRCzu/ihE6BR aM4lD/9ZThn4HMMUj01QvCYJZvSBvvL4SEEOnUmiqPFbsAroJrs65IGe6cnq8XWZihOlrNsHYaX prWjLiJGWhoqAS8SN30qVKpjj7KQaT6nxO1jeywZ2K1cnhg6/o7xnmVxuWKo9BL6e8e3klsw4NL n41b2m1nIzco3q7V/I2w/kvTj6D2PtVFsZNPa/grf8qKWcJJBMVoI95KnKDY3XtX/AR1XM3m2eo Zw73tC3mPynqsX6brsgMVsQkwBruX5DgVmRSpS7dFSBFDTgDUs7MxAQbpYSQAFiKqMtRuKJV2qp d3CG9sbqYooQkyimKXF+XVlbvTJfymJyvUbRvOpQtSm77Zy2oOJzQ0I6T2FRCm9wwAGvVLnvGXF piYrpg6swLCXkaotbciu7W2yp8g3wBVMJptVAxacILCbWoy8RbLipQvH4o8KSQZ8v2ZHyYGlyDa 3srvDozPhLStuS4/wrZTk2sY5F+sMncG5UtaYXTysU1AIj4MmtZBlF6tEmZWftbLxy57umDzc83 Suks8fpGbWtKcqay8EfZS5q0rWH6F1K8Wr9Wi1V0tgVHIxXG2Yxu/GKILQjvD5SvbUX9g/EaYUM qwhKRC2r1CWSOi6nJMefJu1QRiDnvhwv3SVrKdizsiJgbEKIXLUV8FWl5x8YZy+crX1V++oapnE Xk/9UbF+IF8wNgA== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Following changes in the clock driver, add bus clocks for timer, SDIO, BSC and UART to the DTS clock output names. Replace the usb_otg_ahb fixed clock with the real bus clock. Signed-off-by: Artur Weber --- Changes in v4: - Change commit summary to match equivalent BCM281xx commit --- arch/arm/boot/dts/broadcom/bcm2166x-common.dtsi | 28 ++++++++++++++++-----= ---- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/arch/arm/boot/dts/broadcom/bcm2166x-common.dtsi b/arch/arm/boo= t/dts/broadcom/bcm2166x-common.dtsi index f535212cb52fec0668abfc06e7268bead70d958a..b8a6b81d2b7cac00cf393ee37aa= e4dcc379e487c 100644 --- a/arch/arm/boot/dts/broadcom/bcm2166x-common.dtsi +++ b/arch/arm/boot/dts/broadcom/bcm2166x-common.dtsi @@ -148,7 +148,7 @@ usbotg: usb@e20000 { compatible =3D "snps,dwc2"; reg =3D <0x00e20000 0x10000>; interrupts =3D ; - clocks =3D <&usb_otg_ahb_clk>; + clocks =3D <&master_ccu BCM21664_MASTER_CCU_USB_OTG_AHB>; clock-names =3D "otg"; phys =3D <&usbphy>; phy-names =3D "usb2-phy"; @@ -253,12 +253,6 @@ var_52m_clk: var_52m { clock-frequency =3D <52000000>; }; =20 - usb_otg_ahb_clk: usb_otg_ahb { - #clock-cells =3D <0>; - compatible =3D "fixed-clock"; - clock-frequency =3D <52000000>; - }; - ref_96m_clk: ref_96m { #clock-cells =3D <0>; compatible =3D "fixed-clock"; @@ -306,7 +300,8 @@ aon_ccu: aon_ccu@35002000 { compatible =3D "brcm,bcm21664-aon-ccu"; reg =3D <0x35002000 0x0f00>; #clock-cells =3D <1>; - clock-output-names =3D "hub_timer"; + clock-output-names =3D "hub_timer", + "hub_timer_apb"; }; =20 slave_ccu: slave_ccu@3e011000 { @@ -319,7 +314,15 @@ slave_ccu: slave_ccu@3e011000 { "bsc1", "bsc2", "bsc3", - "bsc4"; + "bsc4", + "uartb_apb", + "uartb2_apb", + "uartb3_apb", + "bsc1_apb", + "bsc2_apb", + "bsc3_apb", + "bsc4_apb"; + }; =20 master_ccu: master_ccu@3f001000 { @@ -333,7 +336,12 @@ master_ccu: master_ccu@3f001000 { "sdio1_sleep", "sdio2_sleep", "sdio3_sleep", - "sdio4_sleep"; + "sdio4_sleep", + "sdio1_ahb", + "sdio2_ahb", + "sdio3_ahb", + "sdio4_ahb", + "usb_otg_ahb"; }; }; }; --=20 2.50.1 From nobody Sat Oct 4 19:14:43 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9BDAD2FDC32; Wed, 13 Aug 2025 11:00:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082841; cv=none; b=A3v1RStHxo8AXvKypdpPHbGL4bKmn5LzPMk38XgA4broO8i8/tjZt18DIzvQGJskUanyKGiYZzQbz8UFPHJ84kewDV9G40w89jpIr2Cpl3EKmKji/31HZrI6dAQ4C2vJSHzInnh3tC47cM/9SYCzNcO6eGsjzX2/91jN/QUwl6w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755082841; c=relaxed/simple; bh=zuGgg+KtKbX59cmwAVv8C3u2io11Muh9kIrEOlRf3fc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=O18seW334jmrRvFLWdKN0U7gU/S5JFK6ol1DpRQf1w8Tb2rYLkbNe6G5AuZjCa8isI/sAe5GcoOwIuP2qtYIvm2dxMi+taEKfisatOdZ+5FbDgCE5yKEq11uOaZLVTe8J8hoWomxrDQ7A0rtJrXK5Y0a3lQJKNAJpQgl7Tz3jmM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=RCVjqD3U; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="RCVjqD3U" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-af93381a1d2so1016601866b.3; Wed, 13 Aug 2025 04:00:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755082838; x=1755687638; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Lz6W98GzI/frUrKHDzE5ELN6joCDuBvAObhPSXpDpZc=; b=RCVjqD3UZ1fj2Tql/PNrJyeTlRyl0P9C6RF589Cm6F6DGytRnFa3oXBZ3i+YGyFnHA stOwy5ARubQL+BgX1uJNbxYLxstvgGZbwvcfQOEiQ3l9MLailslgOoUJeW8n5hN7kd8n kMeZOJ5cMoFomIZx7xV/3sUuABnTw+lIgC3vGv68cieKe9WVAbHiKRTwGYZvjzaou8dY rv0uQxTZERCPSOp0gDDRQrd/+RVzit3Qw68OXW1qdJRVDnApi04p8Uj4XGBlVrAVDLpw pH12EYHXK3aL1pR1dKWwzq0PKWXKJ3EhyHRO+eCkE2Kq82FtBXQFA0tCZ3Z8en0Z3xPX xh5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755082838; x=1755687638; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Lz6W98GzI/frUrKHDzE5ELN6joCDuBvAObhPSXpDpZc=; b=vP5+2BiqS3QFe3Fi3nf0JCslKKg2mS8JWlTa4q6Qv5veb1YOTogOlE9709h/8ZU/nX AZZlJfhOmaWl+OoOVXiTE49m3Kv2Bi6jdzjMYDkPn73c1NpUBkQP9GRUbOtJ4PUv2M7t ADwswVcuYjSbPcre86gMi6wnOPGkzkwfko8NHdUzqfNB6lVcuj1nzS0ipymhdgxjpDsc L2ktJD3KnEed7JPQ0SuNz5fukGh1ItbmrezhnIUOaML1IyCG/cT4I9b+s90hyU8icLWs dK1g47GEIJVkalXe14KURdToLDNogTTDUqEYo3tgThgSt/oEjXnmma6XNxvAPzqcdsBq /FCA== X-Forwarded-Encrypted: i=1; AJvYcCU3lqcJ+QkTw8RppAzBItCRMHC96LNvUIFb6kCr+NXvDHb8Mz1+l1QIEGYUIsI/5j0uRqjOdZkume6a@vger.kernel.org, AJvYcCUGOrAp7fPfxKqv6PYzz6u0Y96lvIUdfZ85APtJ33Ja5V5mBXZ5qDuKDcS8UHmmxvWDzI25mJKWuEsfu0GG@vger.kernel.org, AJvYcCW/vocFCN5a3PJz69HUVbAOxAaFIZQlGDNyoZWW41WnPPreixbS6fvyoGylb23dLYUmN785aogMPcWB@vger.kernel.org X-Gm-Message-State: AOJu0Yx5TYxhAHPhmDmZZRyINnkYn1fclzwVZmnronIkCA+zI1C9ZBGd 763r2ElltSf4z3GcZTp1w8FWcCPQ8zpvvj1iuiaQzHIqcGXGOp9Zfm8o X-Gm-Gg: ASbGncuyPpbGPFeGKi/D2qc6atpBYIrrWpCQ/p153Vr5YhzHK7hbJ5rlxK+ZE7XFhTF IV2W9c4u7reOPqXb0jLfR/RFZfZIoukZSszv/kxnnBa5/+AGG9mQ2o/UJkbPVlKyY49ASlHBIOL PBhwt7yEX6ixazQXbPe5UNHhOEWKhB8XgCi2Q1VjBAJzMjcwPkx3vZj9wg5AXhEolW+pyxnTBRN hiPLdSWY/UTrIHlsO7CIkorSQ41QnNE3mt7tzWdkX8lmgJu2Df25Xy1ba6Xcibd18JBEVu081WR XO4FOGESIIkhNcI+ChQzX/+UTNkazb590ZiCvaou0sPsUuXTzDobpKd2A/bKHMItzHb8hxCp2eY AG7GWEnWkjy0/4mc3P5qnsfTNmHUft2WoPnTDAKSw/Nd3Qn9+/QLRro3qbHUS4jDL1x4DIm9fFa vCfqMf X-Google-Smtp-Source: AGHT+IH0aqDtVR0VevZ8f2uJ+2//Q9uHHryebJnEAf3vQOeF9yW2TPtt5LjJNUehypu46peYZ5JGzw== X-Received: by 2002:a17:907:968a:b0:afc:a330:e423 with SMTP id a640c23a62f3a-afca4e434e2mr261368366b.42.1755082837769; Wed, 13 Aug 2025 04:00:37 -0700 (PDT) Received: from tablet.my.domain (ip-31-0-121-4.multi.internet.cyfrowypolsat.pl. [31.0.121.4]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-af91a0df10asm2377046966b.59.2025.08.13.04.00.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Aug 2025 04:00:37 -0700 (PDT) From: Artur Weber Date: Wed, 13 Aug 2025 13:00:15 +0200 Subject: [PATCH v6 9/9] ARM: dts: bcm11351: Add corresponding bus clocks for peripheral clocks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250813-kona-bus-clock-v6-9-f5a63d4920a4@gmail.com> References: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> In-Reply-To: <20250813-kona-bus-clock-v6-0-f5a63d4920a4@gmail.com> To: Michael Turquette , Stephen Boyd , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Alex Elder , Stanislav Jakubek , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux-arm-kernel@lists.infradead.org, Artur Weber X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2485; i=aweber.kernel@gmail.com; h=from:subject:message-id; bh=zuGgg+KtKbX59cmwAVv8C3u2io11Muh9kIrEOlRf3fc=; b=owEBbQKS/ZANAwAKAbO7+KEToFFoAcsmYgBonHA+zA3eXsWGpqI/E+S4hxfwR/JJD0yngPm32 mRlhtef826JAjMEAAEKAB0WIQTmYwAOrB3szWrSiQ2zu/ihE6BRaAUCaJxwPgAKCRCzu/ihE6BR aIj5D/0cV/FmJu4x3Wi5+fJqoEK/plwBYfi2jRNtUW6oUV6vvYcUkIpOt7FqTvUfOoDEmADjsJo hrjjaKSa8GpqgtabK6sVleXRHbOUuiO/k3j0cZH8qO4HL6sH5f2OgisGwzDT5oO+SAhL2UqVhen j1z9bwwBgN7y5/xDRmC6ktPuQQX3YBeQ3ipbGhpvCdyc2XCVXKohiIYZKiy7CtKy5wlykh1nmLF 2w11m7ZbM8HhYXpWTHsBjBKtbfOcRJsroyB4gjhSz4UNBpP7fitkAkwZgVQ5qDjlClhpO9hIXdb d2jlGTo2AaJm9Q0DzboPvxpYMsD84YkjaT/zs3cRsXLAilYRE7Z4NxRUylxjNMdLWzx90Bfba10 hN/BGCuNLwv4l7/AY8FQYuf/1pUbbpuoTQfCI13qr7aLRsA341nMl9iAlaf5c4kfhzKUbJBMZwi SUoLZ82ZkN3ggO1qNjVgHuvKnNbTE+4/YNvbOOjMjrXjdBykAb2CR/Jwt+me4kPjVEZTu8+Tljp 4HgtcmXqjJK9dTx4+7ai5UTs67adDZxeV8CwgOvVAIEnYyclGXWdGhI9P9jnmesLUPidEDwOkMu ELA8OZcbKhGtFS7+v9eBL0qrs3h7Wz7b9TfudcNMR1TiBEtnfKwfHzHvQheMGWEgeaSx+XUzbpQ pfitsuvC2sGhu9w== X-Developer-Key: i=aweber.kernel@gmail.com; a=openpgp; fpr=E663000EAC1DECCD6AD2890DB3BBF8A113A05168 Following changes in the clock driver, add matching bus clocks for existing peripheral clocks. Replace the usb_otg_ahb fixed clock with the real bus clock. Signed-off-by: Artur Weber --- Changes in v2: - Add this patch (BCM281xx bus clocks) --- arch/arm/boot/dts/broadcom/bcm11351.dtsi | 33 ++++++++++++++++++++++------= ---- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/arch/arm/boot/dts/broadcom/bcm11351.dtsi b/arch/arm/boot/dts/b= roadcom/bcm11351.dtsi index 53857e572080d752732c512ed27f942756d59c46..fac5cf5a46bd9a4b7e09a2e65c3= e807d1b4ef960 100644 --- a/arch/arm/boot/dts/broadcom/bcm11351.dtsi +++ b/arch/arm/boot/dts/broadcom/bcm11351.dtsi @@ -233,7 +233,9 @@ aon_ccu: aon_ccu@35002000 { #clock-cells =3D <1>; clock-output-names =3D "hub_timer", "pmu_bsc", - "pmu_bsc_var"; + "pmu_bsc_var", + "hub_timer_apb", + "pmu_bsc_apb"; }; =20 master_ccu: master_ccu@3f001000 { @@ -246,7 +248,14 @@ master_ccu: master_ccu@3f001000 { "sdio4", "usb_ic", "hsic2_48m", - "hsic2_12m"; + "hsic2_12m", + "sdio1_ahb", + "sdio2_ahb", + "sdio3_ahb", + "sdio4_ahb", + "usb_ic_ahb", + "hsic2_ahb", + "usb_otg_ahb"; }; =20 slave_ccu: slave_ccu@3e011000 { @@ -262,7 +271,17 @@ slave_ccu: slave_ccu@3e011000 { "bsc1", "bsc2", "bsc3", - "pwm"; + "pwm", + "uartb_apb", + "uartb2_apb", + "uartb3_apb", + "uartb4_apb", + "ssp0_apb", + "ssp2_apb", + "bsc1_apb", + "bsc2_apb", + "bsc3_apb", + "pwm_apb"; }; =20 ref_1m_clk: ref_1m { @@ -325,12 +344,6 @@ var_52m_clk: var_52m { clock-frequency =3D <52000000>; }; =20 - usb_otg_ahb_clk: usb_otg_ahb { - compatible =3D "fixed-clock"; - clock-frequency =3D <52000000>; - #clock-cells =3D <0>; - }; - ref_96m_clk: ref_96m { #clock-cells =3D <0>; compatible =3D "fixed-clock"; @@ -396,7 +409,7 @@ usbotg: usb@3f120000 { compatible =3D "snps,dwc2"; reg =3D <0x3f120000 0x10000>; interrupts =3D ; - clocks =3D <&usb_otg_ahb_clk>; + clocks =3D <&master_ccu BCM281XX_MASTER_CCU_USB_OTG_AHB>; clock-names =3D "otg"; phys =3D <&usbphy>; phy-names =3D "usb2-phy"; --=20 2.50.1