All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Álvaro Fernández Rojas" <noltari@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 2/6] dm: cpu: bmips: add BCM6348 support
Date: Tue, 16 May 2017 18:39:00 +0200	[thread overview]
Message-ID: <1494952744-27078-3-git-send-email-noltari@gmail.com> (raw)
In-Reply-To: <1494952744-27078-1-git-send-email-noltari@gmail.com>

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
 v3: no changes.
 v2: no changes.

 drivers/cpu/bmips_cpu.c | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/drivers/cpu/bmips_cpu.c b/drivers/cpu/bmips_cpu.c
index 6087163..2381081 100644
--- a/drivers/cpu/bmips_cpu.c
+++ b/drivers/cpu/bmips_cpu.c
@@ -30,6 +30,14 @@ DECLARE_GLOBAL_DATA_PTR;
 #define STRAPBUS_6328_FCVO_SHIFT	7
 #define STRAPBUS_6328_FCVO_MASK		(0x1f << STRAPBUS_6328_FCVO_SHIFT)
 
+#define REG_BCM6348_PERF_MIPSPLLCFG	0x34
+#define MIPSPLLCFG_6348_M1CPU_SHIFT	6
+#define MIPSPLLCFG_6348_M1CPU_MASK	(0x7 << MIPSPLLCFG_6348_M1CPU_SHIFT)
+#define MIPSPLLCFG_6348_N2_SHIFT	15
+#define MIPSPLLCFG_6348_N2_MASK		(0x1F << MIPSPLLCFG_6348_N2_SHIFT)
+#define MIPSPLLCFG_6348_N1_SHIFT	20
+#define MIPSPLLCFG_6348_N1_MASK		(0x7 << MIPSPLLCFG_6348_N1_SHIFT)
+
 #define REG_BCM6358_DDR_DMIPSPLLCFG	0x12b8
 #define DMIPSPLLCFG_6358_M1_SHIFT	0
 #define DMIPSPLLCFG_6358_M1_MASK	(0xff << DMIPSPLLCFG_6358_M1_SHIFT)
@@ -115,6 +123,18 @@ static ulong bcm6328_get_cpu_freq(struct bmips_cpu_priv *priv)
 	}
 }
 
+static ulong bcm6348_get_cpu_freq(struct bmips_cpu_priv *priv)
+{
+	unsigned int tmp, n1, n2, m1;
+
+	tmp = readl_be(priv->regs + REG_BCM6348_PERF_MIPSPLLCFG);
+	n1 = (tmp & MIPSPLLCFG_6348_N1_MASK) >> MIPSPLLCFG_6348_N1_SHIFT;
+	n2 = (tmp & MIPSPLLCFG_6348_N2_MASK) >> MIPSPLLCFG_6348_N2_SHIFT;
+	m1 = (tmp & MIPSPLLCFG_6348_M1CPU_MASK) >> MIPSPLLCFG_6348_M1CPU_SHIFT;
+
+	return (16 * 1000000 * (n1 + 1) * (n2 + 2)) / (m1 + 1);
+}
+
 static ulong bcm6358_get_cpu_freq(struct bmips_cpu_priv *priv)
 {
 	unsigned int tmp, n1, n2, m1;
@@ -160,6 +180,11 @@ static int bcm6328_get_cpu_count(struct bmips_cpu_priv *priv)
 		return 2;
 }
 
+static int bcm6345_get_cpu_count(struct bmips_cpu_priv *priv)
+{
+	return 1;
+}
+
 static int bcm6358_get_cpu_count(struct bmips_cpu_priv *priv)
 {
 	return 2;
@@ -171,6 +196,12 @@ static const struct bmips_cpu_hw bmips_cpu_bcm6328 = {
 	.get_cpu_count = bcm6328_get_cpu_count,
 };
 
+static const struct bmips_cpu_hw bmips_cpu_bcm6348 = {
+	.get_cpu_desc = bmips_short_cpu_desc,
+	.get_cpu_freq = bcm6348_get_cpu_freq,
+	.get_cpu_count = bcm6345_get_cpu_count,
+};
+
 static const struct bmips_cpu_hw bmips_cpu_bcm6358 = {
 	.get_cpu_desc = bmips_short_cpu_desc,
 	.get_cpu_freq = bcm6358_get_cpu_freq,
@@ -262,6 +293,9 @@ static const struct udevice_id bmips_cpu_ids[] = {
 		.compatible = "brcm,bcm6328-cpu",
 		.data = (ulong)&bmips_cpu_bcm6328,
 	}, {
+		.compatible = "brcm,bcm6348-cpu",
+		.data = (ulong)&bmips_cpu_bcm6348,
+	}, {
 		.compatible = "brcm,bcm6358-cpu",
 		.data = (ulong)&bmips_cpu_bcm6358,
 	}, {
-- 
2.1.4

  parent reply	other threads:[~2017-05-16 16:39 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-12 23:23 [U-Boot] [PATCH 0/6] mips: bmips: add BCM6348 SoC support Álvaro Fernández Rojas
2017-05-12 23:23 ` [U-Boot] [PATCH 1/6] dm: cpu: bmips: rename cpu_desc specific functions Álvaro Fernández Rojas
2017-05-16  0:18   ` Simon Glass
2017-05-12 23:23 ` [U-Boot] [PATCH 2/6] dm: cpu: bmips: add BCM6348 support Álvaro Fernández Rojas
2017-05-12 23:23 ` [U-Boot] [PATCH 3/6] dm: ram: bmips: split bcm6358_get_ram_size Álvaro Fernández Rojas
2017-05-12 23:23 ` [U-Boot] [PATCH 4/6] dm: cpu: bmips: add BCM6338/BCM6348 support Álvaro Fernández Rojas
2017-05-16  0:18   ` Simon Glass
2017-05-12 23:23 ` [U-Boot] [PATCH 5/6] MIPS: add support for Broadcom MIPS BCM6348 SoC family Álvaro Fernández Rojas
2017-05-12 23:23 ` [U-Boot] [PATCH 6/6] MIPS: add BMIPS Comtrend CT-5361 board Álvaro Fernández Rojas
2017-05-15 17:13 ` [U-Boot] [PATCH v2 0/6] mips: bmips: add BCM6348 SoC support Álvaro Fernández Rojas
2017-05-15 17:13   ` [U-Boot] [PATCH v2 1/6] dm: cpu: bmips: rename cpu_desc specific functions Álvaro Fernández Rojas
2017-05-15 17:13   ` [U-Boot] [PATCH v2 2/6] dm: cpu: bmips: add BCM6348 support Álvaro Fernández Rojas
2017-05-16  0:18     ` Simon Glass
2017-05-15 17:13   ` [U-Boot] [PATCH v2 3/6] dm: ram: bmips: split bcm6358_get_ram_size Álvaro Fernández Rojas
2017-05-16  0:18     ` Simon Glass
2017-05-15 17:13   ` [U-Boot] [PATCH v2 4/6] dm: ram: bmips: add BCM6338/BCM6348 support Álvaro Fernández Rojas
2017-05-15 17:13   ` [U-Boot] [PATCH v2 5/6] MIPS: add support for Broadcom MIPS BCM6348 SoC family Álvaro Fernández Rojas
2017-05-16  0:18     ` Simon Glass
2017-05-15 17:13   ` [U-Boot] [PATCH v2 6/6] MIPS: add BMIPS Comtrend CT-5361 board Álvaro Fernández Rojas
2017-05-16  0:18     ` Simon Glass
2017-05-16 16:38 ` [U-Boot] [PATCH v3 0/6] mips: bmips: add BCM6348 SoC support* Álvaro Fernández Rojas
2017-05-16 16:38   ` [U-Boot] [PATCH v3 1/6] dm: cpu: bmips: rename cpu_desc specific functions Álvaro Fernández Rojas
2017-05-16 16:39   ` Álvaro Fernández Rojas [this message]
2017-05-16 16:39   ` [U-Boot] [PATCH v3 3/6] dm: ram: bmips: split bcm6358_get_ram_size Álvaro Fernández Rojas
2017-05-16 16:39   ` [U-Boot] [PATCH v3 4/6] dm: ram: bmips: add BCM6338/BCM6348 support Álvaro Fernández Rojas
2017-05-16 16:39   ` [U-Boot] [PATCH v3 5/6] MIPS: add support for Broadcom MIPS BCM6348 SoC family Álvaro Fernández Rojas
2017-05-16 16:39   ` [U-Boot] [PATCH v3 6/6] MIPS: add BMIPS Comtrend CT-5361 board Álvaro Fernández Rojas
2017-05-20 16:08   ` [U-Boot] [PATCH v3 0/6] mips: bmips: add BCM6348 SoC support* Daniel Schwierzeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1494952744-27078-3-git-send-email-noltari@gmail.com \
    --to=noltari@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.