mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Rouven Czerwinski <r.czerwinski@pengutronix.de>
To: barebox@lists.infradead.org
Cc: Rouven Czerwinski <r.czerwinski@pengutronix.de>
Subject: [PATCH v6 3/9] ARM: rpi: retrieve miniuart clock from firmware
Date: Tue, 15 Jan 2019 06:44:03 +0100	[thread overview]
Message-ID: <39d36e54718c9c5c75175e3836de5425b1f73fb3.1547530950.git-series.r.czerwinski@pengutronix.de> (raw)
In-Reply-To: <cover.cea99e013da63859278229c6e1566362a1800ff4.1547530950.git-series.r.czerwinski@pengutronix.de>

The miniuart uses the core clock as the clock source. This clock is fixed by the
firmware to 250Mhz if enable_uart=1 is set in the config.txt file.
However a user could still choose to overclock the core frequency,
which would result in wrong baudrates computed by barebox.
Retrieve the core clock frequency from the firmware to allow all potential
firmware configurations to work with barebox.

Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de>
---
 arch/arm/boards/raspberry-pi/rpi-common.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/arch/arm/boards/raspberry-pi/rpi-common.c b/arch/arm/boards/raspberry-pi/rpi-common.c
index 490aeef..e29177d 100644
--- a/arch/arm/boards/raspberry-pi/rpi-common.c
+++ b/arch/arm/boards/raspberry-pi/rpi-common.c
@@ -309,6 +309,13 @@ static int rpi_console_clock_init(void)
 	clkdev_add_physbase(clk, 0x20201000, NULL);
 	clkdev_add_physbase(clk, 0x3f201000, NULL);
 
+	clk = rpi_register_firmware_clock(BCM2835_MBOX_CLOCK_ID_CORE,
+					  "uart1-8250");
+	if (IS_ERR(clk))
+		return PTR_ERR(clk);
+
+	clkdev_add_physbase(clk, 0x3f215040, NULL);
+
 	clk = clk_fixed("bcm2835-cs", 1 * 1000 * 1000);
 	clk_register_clkdev(clk, NULL, "bcm2835-cs");
 
-- 
git-series 0.9.1

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  parent reply	other threads:[~2019-01-15  5:44 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-15  5:44 [PATCH v6 0/9] Raspberry Pi miniuart support Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 1/9] ARM: rpi: fix typo in rpi-common.c Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 2/9] ARM: rpi: move clks into board specific rpi-common Rouven Czerwinski
2019-01-15  5:44 ` Rouven Czerwinski [this message]
2019-01-15  5:44 ` [PATCH v6 4/9] serial_ns16550: handle default reg-io-width Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 5/9] serial_ns16550: add raspberry pi compatible and init Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 6/9] ARM: rpi: add NS16550 support Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 7/9] ARM: rpi: choose miniuart as stdout Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 8/9] doc: bcm283x: remove miniuart overlay instruction Rouven Czerwinski
2019-01-15  5:44 ` [PATCH v6 9/9] ARM: rpi: use defines for uart bases Rouven Czerwinski
2019-01-15 11:01 ` [PATCH v6 0/9] Raspberry Pi miniuart support Roland Hieber
2019-01-15 12:51   ` Rouven Czerwinski
2019-01-15 13:19     ` Roland Hieber
2019-01-15 23:47     ` Roland Hieber
2019-01-15 23:48 ` Roland Hieber
2019-01-16  7:46 ` Sascha Hauer

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=39d36e54718c9c5c75175e3836de5425b1f73fb3.1547530950.git-series.r.czerwinski@pengutronix.de \
    --to=r.czerwinski@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox