linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
       [not found] <20210308153703.23097-1-kabel@kernel.org>
@ 2021-04-29  8:36 ` Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
                     ` (5 more replies)
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
                   ` (2 subsequent siblings)
  3 siblings, 6 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

The status decoding function mox_get_status() currently contains a dead
code path: if the error status is not MBOX_STS_SUCCESS, it always
returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
we don't get the actual error code sent by the firmware.

Fix this.

Signed-off-by: Marek Behún <kabel@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 62f0d1a5dd32..f85acdb3130c 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -147,11 +147,14 @@ MOX_ATTR_RO(pubkey, "%s\n", pubkey);
 
 static int mox_get_status(enum mbox_cmd cmd, u32 retval)
 {
-	if (MBOX_STS_CMD(retval) != cmd ||
-	    MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+	if (MBOX_STS_CMD(retval) != cmd)
 		return -EIO;
 	else if (MBOX_STS_ERROR(retval) == MBOX_STS_FAIL)
 		return -(int)MBOX_STS_VALUE(retval);
+	else if (MBOX_STS_ERROR(retval) == MBOX_STS_BADCMD)
+		return -ENOSYS;
+	else if (MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+		return -EIO;
 	else
 		return MBOX_STS_VALUE(retval);
 }
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v2 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
@ 2021-04-29  8:36   ` Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

Report a notice level message if a command is not supported by the rWTM
firmware.

This should not be an error, merely a notice, because the firmware can
be used on non-CZ.NIC boards that do not have manufacturing information
burned.

Signed-off-by: Marek Behún <kabel@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index f85acdb3130c..d7e3489e4bf2 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -204,11 +204,14 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_BOARD_INFO, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev,
 			 "Board does not have manufacturing information burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the BOARD_INFO command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		rwtm->serial_number = reply->status[1];
 		rwtm->serial_number <<= 32;
@@ -237,10 +240,13 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_ECDSA_PUB_KEY, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev, "Board has no public key burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the ECDSA_PUB_KEY command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		u32 *s = reply->status;
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v2 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
@ 2021-04-29  8:36   ` Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

When Marvell's rWTM firmware, which does not support the GET_RANDOM
command, is used, kernel prints an error message
  hwrng: no data available
every 10 seconds.

Fail probing of this driver if the rWTM firmware does not support the
GET_RANDOM command.

This makes it possible to put this driver's compatible into generic
armada-37xx device tree, to be available for other Armada 3720 devices
besides Turris MOX. If they use the rWTM firmware from CZ.NIC, they will
have HWRNG available, and if not, the driver won't be complaining.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
Signed-off-by: Marek Behún <kabel@kernel.org>
---
 drivers/firmware/turris-mox-rwtm.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index d7e3489e4bf2..3ef9687dddca 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -260,6 +260,27 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 	return 0;
 }
 
+static int check_get_random_support(struct mox_rwtm *rwtm)
+{
+	struct armada_37xx_rwtm_tx_msg msg;
+	int ret;
+
+	msg.command = MBOX_CMD_GET_RANDOM;
+	msg.args[0] = 1;
+	msg.args[1] = rwtm->buf_phys;
+	msg.args[2] = 4;
+
+	ret = mbox_send_message(rwtm->mbox, &msg);
+	if (ret < 0)
+		return ret;
+
+	ret = wait_for_completion_timeout(&rwtm->cmd_done, HZ / 2);
+	if (ret < 0)
+		return ret;
+
+	return mox_get_status(MBOX_CMD_GET_RANDOM, rwtm->reply.retval);
+}
+
 static int mox_hwrng_read(struct hwrng *rng, void *data, size_t max, bool wait)
 {
 	struct mox_rwtm *rwtm = (struct mox_rwtm *) rng->priv;
@@ -497,6 +518,13 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 	if (ret < 0)
 		dev_warn(dev, "Cannot read board information: %i\n", ret);
 
+	ret = check_get_random_support(rwtm);
+	if (ret < 0) {
+		dev_notice(dev,
+			   "Firmware does not support the GET_RANDOM command\n");
+		goto free_channel;
+	}
+
 	rwtm->hwrng.name = DRIVER_NAME "_hwrng";
 	rwtm->hwrng.read = mox_hwrng_read;
 	rwtm->hwrng.priv = (unsigned long) rwtm;
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v2 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
@ 2021-04-29  8:36   ` Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Currently it is hard to determinate if on Armada 3720 device is HWRNG
by running kernel accessible or not. So print information message into
dmesg when HWRNG is available and registration was successful.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 3ef9687dddca..1cf4f1087492 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -542,6 +542,8 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 		goto free_channel;
 	}
 
+	dev_info(dev, "HWRNG successfully registered\n");
+
 	return 0;
 
 free_channel:
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v2 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
                     ` (2 preceding siblings ...)
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
@ 2021-04-29  8:36   ` Pali Rohár
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
  2021-05-03 12:22   ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Add more generic compatible string 'marvell,armada-3700-rwtm-firmware' for
this driver, since it can also be used on other Armada 3720 devices.

Current compatible string 'cznic,turris-mox-rwtm' is kept for backward
compatibility.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

---
We are also planning to work on extending this driver to support
accessing OTP, which will also work with Marvell's default WTMI
firmware.
---
 drivers/firmware/turris-mox-rwtm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 1cf4f1087492..c2d34dc8ba46 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -569,6 +569,7 @@ static int turris_mox_rwtm_remove(struct platform_device *pdev)
 
 static const struct of_device_id turris_mox_rwtm_match[] = {
 	{ .compatible = "cznic,turris-mox-rwtm", },
+	{ .compatible = "marvell,armada-3700-rwtm-firmware", },
 	{ },
 };
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v2 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
                     ` (3 preceding siblings ...)
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
@ 2021-04-29  8:36   ` Pali Rohár
  2021-05-03 12:22   ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-04-29  8:36 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
the generic armada-37xx.dtsi file and use the generic compatible string
'marvell,armada-3700-rwtm-firmware' instead of the current one.

The Turris MOX rWTM firmware can be used on any Armada 37xx device,
giving them access to the rWTM hardware random number generator, which
is otherwise unavailable.

This change allows Linux to load the turris-mox-rwtm.ko module on these
boards.

Tested on ESPRESSObin v5 with both default Marvell WTMI firmware and
CZ.NIC's firmware. With default WTMI firmware the turris-mox-rwtm fails
to probe, while with CZ.NIC's firmware it registers the HW random number
generator.

Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Cc: <stable@vger.kernel.org> # 5.4+: 46d2f6d0c99f ("arm64: dts: armada-3720-turris-mox: add firmware node")
---
 arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 8 --------
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 8 ++++++++
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
index 0753cc489638..ebb0ddf8d306 100644
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -107,14 +107,6 @@
 		/* enabled by U-Boot if SFP module is present */
 		status = "disabled";
 	};
-
-	firmware {
-		turris-mox-rwtm {
-			compatible = "cznic,turris-mox-rwtm";
-			mboxes = <&rwtm 0>;
-			status = "okay";
-		};
-	};
 };
 
 &i2c0 {
diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
index 1b7f43e27589..847a2d12a4be 100644
--- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
@@ -505,4 +505,12 @@
 			};
 		};
 	};
+
+	firmware {
+		armada-3700-rwtm {
+			compatible = "marvell,armada-3700-rwtm-firmware";
+			mboxes = <&rwtm 0>;
+			status = "okay";
+		};
+	};
 };
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
                     ` (4 preceding siblings ...)
  2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
@ 2021-05-03 12:22   ` Andrew Lunn
  2021-05-05 16:04     ` Marek Behún
  5 siblings, 1 reply; 40+ messages in thread
From: Andrew Lunn @ 2021-05-03 12:22 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, Apr 29, 2021 at 10:36:31AM +0200, Pali Rohár wrote:
> From: Marek Behún <kabel@kernel.org>
> 
> The status decoding function mox_get_status() currently contains a dead
> code path: if the error status is not MBOX_STS_SUCCESS, it always
> returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
> we don't get the actual error code sent by the firmware.
> 
> Fix this.
> 
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

You have put a fixes tag here, meaning you want it in stable? How does
dead code elimination fulfil the stable requirements?

Do any of these changes contain real fixes?

   Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-05-03 12:22   ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
@ 2021-05-05 16:04     ` Marek Behún
  2021-05-05 16:20       ` Andrew Lunn
  0 siblings, 1 reply; 40+ messages in thread
From: Marek Behún @ 2021-05-05 16:04 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Pali Rohár, Gregory CLEMENT, linux-arm-kernel, linux-kernel

On Mon, 3 May 2021 14:22:49 +0200
Andrew Lunn <andrew@lunn.ch> wrote:

> On Thu, Apr 29, 2021 at 10:36:31AM +0200, Pali Rohár wrote:
> > From: Marek Behún <kabel@kernel.org>
> > 
> > The status decoding function mox_get_status() currently contains a dead
> > code path: if the error status is not MBOX_STS_SUCCESS, it always
> > returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
> > we don't get the actual error code sent by the firmware.
> > 
> > Fix this.
> > 
> > Signed-off-by: Marek Behún <kabel@kernel.org>
> > Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")  
> 
> You have put a fixes tag here, meaning you want it in stable? How does
> dead code elimination fulfil the stable requirements?
> 
> Do any of these changes contain real fixes?
> 
>    Andrew

Andrew, this is not dead code elimination. Rather it is that there is
dead code path due to an incorrect check. By correcting the check, the
dead code path becomes alive and starts reporting errors correctly.
This fix is nedeed in stable so that stable will report errors
correctly.

Marek

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-05-05 16:04     ` Marek Behún
@ 2021-05-05 16:20       ` Andrew Lunn
  2021-05-11 21:46         ` Pali Rohár
  0 siblings, 1 reply; 40+ messages in thread
From: Andrew Lunn @ 2021-05-05 16:20 UTC (permalink / raw)
  To: Marek Behún
  Cc: Pali Rohár, Gregory CLEMENT, linux-arm-kernel, linux-kernel

On Wed, May 05, 2021 at 06:04:33PM +0200, Marek Behún wrote:
> On Mon, 3 May 2021 14:22:49 +0200
> Andrew Lunn <andrew@lunn.ch> wrote:
> 
> > On Thu, Apr 29, 2021 at 10:36:31AM +0200, Pali Rohár wrote:
> > > From: Marek Behún <kabel@kernel.org>
> > > 
> > > The status decoding function mox_get_status() currently contains a dead
> > > code path: if the error status is not MBOX_STS_SUCCESS, it always
> > > returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
> > > we don't get the actual error code sent by the firmware.
> > > 
> > > Fix this.
> > > 
> > > Signed-off-by: Marek Behún <kabel@kernel.org>
> > > Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")  
> > 
> > You have put a fixes tag here, meaning you want it in stable? How does
> > dead code elimination fulfil the stable requirements?
> > 
> > Do any of these changes contain real fixes?
> > 
> >    Andrew
> 
> Andrew, this is not dead code elimination.

Please word you commit message differently.

The status decoding function mox_get_status() currently contains an
incorrect check: ...

	  Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
       [not found] <20210308153703.23097-1-kabel@kernel.org>
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
@ 2021-05-06  9:07 ` Pali Rohár
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
                     ` (5 more replies)
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
  2021-05-20 11:38 ` [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string Pali Rohár
  3 siblings, 6 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:07 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

The status decoding function mox_get_status() currently contains an
incorrect check: if the error status is not MBOX_STS_SUCCESS, it always
returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
we don't get the actual error code sent by the firmware.

Fix this.

Signed-off-by: Marek Behún <kabel@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 62f0d1a5dd32..f85acdb3130c 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -147,11 +147,14 @@ MOX_ATTR_RO(pubkey, "%s\n", pubkey);
 
 static int mox_get_status(enum mbox_cmd cmd, u32 retval)
 {
-	if (MBOX_STS_CMD(retval) != cmd ||
-	    MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+	if (MBOX_STS_CMD(retval) != cmd)
 		return -EIO;
 	else if (MBOX_STS_ERROR(retval) == MBOX_STS_FAIL)
 		return -(int)MBOX_STS_VALUE(retval);
+	else if (MBOX_STS_ERROR(retval) == MBOX_STS_BADCMD)
+		return -ENOSYS;
+	else if (MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+		return -EIO;
 	else
 		return MBOX_STS_VALUE(retval);
 }
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
@ 2021-05-06  9:07   ` Pali Rohár
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:07 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

Report a notice level message if a command is not supported by the rWTM
firmware.

This should not be an error, merely a notice, because the firmware can
be used on non-CZ.NIC boards that do not have manufacturing information
burned.

Signed-off-by: Marek Behún <kabel@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index f85acdb3130c..d7e3489e4bf2 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -204,11 +204,14 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_BOARD_INFO, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev,
 			 "Board does not have manufacturing information burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the BOARD_INFO command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		rwtm->serial_number = reply->status[1];
 		rwtm->serial_number <<= 32;
@@ -237,10 +240,13 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_ECDSA_PUB_KEY, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev, "Board has no public key burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the ECDSA_PUB_KEY command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		u32 *s = reply->status;
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
@ 2021-05-06  9:07   ` Pali Rohár
  2021-05-12  0:56     ` Andrew Lunn
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
                     ` (3 subsequent siblings)
  5 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:07 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

When Marvell's rWTM firmware, which does not support the GET_RANDOM
command, is used, kernel prints an error message
  hwrng: no data available
every 10 seconds.

Fail probing of this driver if the rWTM firmware does not support the
GET_RANDOM command.

This makes it possible to put this driver's compatible into generic
armada-37xx device tree, to be available for other Armada 3720 devices
besides Turris MOX. If they use the rWTM firmware from CZ.NIC, they will
have HWRNG available, and if not, the driver won't be complaining.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
Signed-off-by: Marek Behún <kabel@kernel.org>
---
 drivers/firmware/turris-mox-rwtm.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index d7e3489e4bf2..3ef9687dddca 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -260,6 +260,27 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 	return 0;
 }
 
+static int check_get_random_support(struct mox_rwtm *rwtm)
+{
+	struct armada_37xx_rwtm_tx_msg msg;
+	int ret;
+
+	msg.command = MBOX_CMD_GET_RANDOM;
+	msg.args[0] = 1;
+	msg.args[1] = rwtm->buf_phys;
+	msg.args[2] = 4;
+
+	ret = mbox_send_message(rwtm->mbox, &msg);
+	if (ret < 0)
+		return ret;
+
+	ret = wait_for_completion_timeout(&rwtm->cmd_done, HZ / 2);
+	if (ret < 0)
+		return ret;
+
+	return mox_get_status(MBOX_CMD_GET_RANDOM, rwtm->reply.retval);
+}
+
 static int mox_hwrng_read(struct hwrng *rng, void *data, size_t max, bool wait)
 {
 	struct mox_rwtm *rwtm = (struct mox_rwtm *) rng->priv;
@@ -497,6 +518,13 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 	if (ret < 0)
 		dev_warn(dev, "Cannot read board information: %i\n", ret);
 
+	ret = check_get_random_support(rwtm);
+	if (ret < 0) {
+		dev_notice(dev,
+			   "Firmware does not support the GET_RANDOM command\n");
+		goto free_channel;
+	}
+
 	rwtm->hwrng.name = DRIVER_NAME "_hwrng";
 	rwtm->hwrng.read = mox_hwrng_read;
 	rwtm->hwrng.priv = (unsigned long) rwtm;
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
@ 2021-05-06  9:08   ` Pali Rohár
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:08 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Currently it is hard to determinate if on Armada 3720 device is HWRNG
by running kernel accessible or not. So print information message into
dmesg when HWRNG is available and registration was successful.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 3ef9687dddca..1cf4f1087492 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -542,6 +542,8 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 		goto free_channel;
 	}
 
+	dev_info(dev, "HWRNG successfully registered\n");
+
 	return 0;
 
 free_channel:
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
                     ` (2 preceding siblings ...)
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
@ 2021-05-06  9:08   ` Pali Rohár
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
  2021-05-12  0:49   ` [PATCH v3 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
  5 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:08 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Add more generic compatible string 'marvell,armada-3700-rwtm-firmware' for
this driver, since it can also be used on other Armada 3720 devices.

Current compatible string 'cznic,turris-mox-rwtm' is kept for backward
compatibility.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

---
We are also planning to work on extending this driver to support
accessing OTP, which will also work with Marvell's default WTMI
firmware.
---
 drivers/firmware/turris-mox-rwtm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 1cf4f1087492..c2d34dc8ba46 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -569,6 +569,7 @@ static int turris_mox_rwtm_remove(struct platform_device *pdev)
 
 static const struct of_device_id turris_mox_rwtm_match[] = {
 	{ .compatible = "cznic,turris-mox-rwtm", },
+	{ .compatible = "marvell,armada-3700-rwtm-firmware", },
 	{ },
 };
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
                     ` (3 preceding siblings ...)
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
@ 2021-05-06  9:08   ` Pali Rohár
  2021-05-12  0:59     ` Andrew Lunn
  2021-05-12  0:49   ` [PATCH v3 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
  5 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-05-06  9:08 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
the generic armada-37xx.dtsi file and use the generic compatible string
'marvell,armada-3700-rwtm-firmware' instead of the current one.

The Turris MOX rWTM firmware can be used on any Armada 37xx device,
giving them access to the rWTM hardware random number generator, which
is otherwise unavailable.

This change allows Linux to load the turris-mox-rwtm.ko module on these
boards.

Tested on ESPRESSObin v5 with both default Marvell WTMI firmware and
CZ.NIC's firmware. With default WTMI firmware the turris-mox-rwtm fails
to probe, while with CZ.NIC's firmware it registers the HW random number
generator.

Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Cc: <stable@vger.kernel.org> # 5.4+: 46d2f6d0c99f ("arm64: dts: armada-3720-turris-mox: add firmware node")
---
 arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 8 --------
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 8 ++++++++
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
index 0753cc489638..ebb0ddf8d306 100644
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -107,14 +107,6 @@
 		/* enabled by U-Boot if SFP module is present */
 		status = "disabled";
 	};
-
-	firmware {
-		turris-mox-rwtm {
-			compatible = "cznic,turris-mox-rwtm";
-			mboxes = <&rwtm 0>;
-			status = "okay";
-		};
-	};
 };
 
 &i2c0 {
diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
index 1b7f43e27589..847a2d12a4be 100644
--- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
@@ -505,4 +505,12 @@
 			};
 		};
 	};
+
+	firmware {
+		armada-3700-rwtm {
+			compatible = "marvell,armada-3700-rwtm-firmware";
+			mboxes = <&rwtm 0>;
+			status = "okay";
+		};
+	};
 };
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-05-05 16:20       ` Andrew Lunn
@ 2021-05-11 21:46         ` Pali Rohár
  0 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-11 21:46 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Marek Behún, Gregory CLEMENT, linux-arm-kernel, linux-kernel

On Wednesday 05 May 2021 18:20:46 Andrew Lunn wrote:
> On Wed, May 05, 2021 at 06:04:33PM +0200, Marek Behún wrote:
> > On Mon, 3 May 2021 14:22:49 +0200
> > Andrew Lunn <andrew@lunn.ch> wrote:
> > 
> > > On Thu, Apr 29, 2021 at 10:36:31AM +0200, Pali Rohár wrote:
> > > > From: Marek Behún <kabel@kernel.org>
> > > > 
> > > > The status decoding function mox_get_status() currently contains a dead
> > > > code path: if the error status is not MBOX_STS_SUCCESS, it always
> > > > returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
> > > > we don't get the actual error code sent by the firmware.
> > > > 
> > > > Fix this.
> > > > 
> > > > Signed-off-by: Marek Behún <kabel@kernel.org>
> > > > Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")  
> > > 
> > > You have put a fixes tag here, meaning you want it in stable? How does
> > > dead code elimination fulfil the stable requirements?
> > > 
> > > Do any of these changes contain real fixes?
> > > 
> > >    Andrew
> > 
> > Andrew, this is not dead code elimination.
> 
> Please word you commit message differently.
> 
> The status decoding function mox_get_status() currently contains an
> incorrect check: ...
> 
> 	  Andrew

Andrew, Marek has already updated commit message and I have sent a new
version v3 of this patch series with this update. It is OK now?

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v3 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
                     ` (4 preceding siblings ...)
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
@ 2021-05-12  0:49   ` Andrew Lunn
  5 siblings, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-12  0:49 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 06, 2021 at 11:07:57AM +0200, Pali Rohár wrote:
> From: Marek Behún <kabel@kernel.org>
> 
> The status decoding function mox_get_status() currently contains an
> incorrect check: if the error status is not MBOX_STS_SUCCESS, it always
> returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
> we don't get the actual error code sent by the firmware.
> 
> Fix this.
> 
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
@ 2021-05-12  0:56     ` Andrew Lunn
  2021-05-20 11:38       ` Pali Rohár
  0 siblings, 1 reply; 40+ messages in thread
From: Andrew Lunn @ 2021-05-12  0:56 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 06, 2021 at 11:07:59AM +0200, Pali Rohár wrote:
> When Marvell's rWTM firmware, which does not support the GET_RANDOM
> command, is used, kernel prints an error message
>   hwrng: no data available
> every 10 seconds.
> 
> Fail probing of this driver if the rWTM firmware does not support the
> GET_RANDOM command.
> 
> This makes it possible to put this driver's compatible into generic
> armada-37xx device tree, to be available for other Armada 3720 devices
> besides Turris MOX. If they use the rWTM firmware from CZ.NIC, they will
> have HWRNG available, and if not, the driver won't be complaining.

We start getting into questions of if this is relevant for stable.
Running Turris MOX with plain Marvell rWTM will spam the log. So i
would say it is a fix, for that situation.

However, i would drop the second part of the description. Making the
Turris MOX firmware work on none Turris MOX hardware is a new feature,
and so not applicable to stable.

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
@ 2021-05-12  0:59     ` Andrew Lunn
  2021-05-20 11:40       ` Pali Rohár
  0 siblings, 1 reply; 40+ messages in thread
From: Andrew Lunn @ 2021-05-12  0:59 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 06, 2021 at 11:08:02AM +0200, Pali Rohár wrote:
> Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
> the generic armada-37xx.dtsi file and use the generic compatible string
> 'marvell,armada-3700-rwtm-firmware' instead of the current one.
> 
> The Turris MOX rWTM firmware can be used on any Armada 37xx device,
> giving them access to the rWTM hardware random number generator, which
> is otherwise unavailable.

This is a new feature, not a fix. Please split this patchset up into
fixes, which get applied to stable, and new features which will get
merged during the next merge window.

Thanks
	Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups
       [not found] <20210308153703.23097-1-kabel@kernel.org>
  2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
  2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
@ 2021-05-20 11:35 ` Pali Rohár
  2021-05-20 11:35   ` [PATCH v4 mvebu 1/4] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
                     ` (4 more replies)
  2021-05-20 11:38 ` [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string Pali Rohár
  3 siblings, 5 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:35 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

These 4 patches are just fixups. Per Andrew's request I have split them
from V3 series, so they can be applied to stable.

Marek Behún (2):
  firmware: turris-mox-rwtm: fix reply status decoding function
  firmware: turris-mox-rwtm: report failures better

Pali Rohár (2):
  firmware: turris-mox-rwtm: fail probing when firmware does not support
    hwrng
  firmware: turris-mox-rwtm: show message about HWRNG registration

 drivers/firmware/turris-mox-rwtm.c | 55 +++++++++++++++++++++++++-----
 1 file changed, 47 insertions(+), 8 deletions(-)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu 1/4] firmware: turris-mox-rwtm: fix reply status decoding function
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
@ 2021-05-20 11:35   ` Pali Rohár
  2021-05-20 11:35   ` [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better Pali Rohár
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:35 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

The status decoding function mox_get_status() currently contains an
incorrect check: if the error status is not MBOX_STS_SUCCESS, it always
returns -EIO, so the comparison to MBOX_STS_FAIL is never executed and
we don't get the actual error code sent by the firmware.

Fix this.

Signed-off-by: Marek Behún <kabel@kernel.org>
Reviewed-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 62f0d1a5dd32..f85acdb3130c 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -147,11 +147,14 @@ MOX_ATTR_RO(pubkey, "%s\n", pubkey);
 
 static int mox_get_status(enum mbox_cmd cmd, u32 retval)
 {
-	if (MBOX_STS_CMD(retval) != cmd ||
-	    MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+	if (MBOX_STS_CMD(retval) != cmd)
 		return -EIO;
 	else if (MBOX_STS_ERROR(retval) == MBOX_STS_FAIL)
 		return -(int)MBOX_STS_VALUE(retval);
+	else if (MBOX_STS_ERROR(retval) == MBOX_STS_BADCMD)
+		return -ENOSYS;
+	else if (MBOX_STS_ERROR(retval) != MBOX_STS_SUCCESS)
+		return -EIO;
 	else
 		return MBOX_STS_VALUE(retval);
 }
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
  2021-05-20 11:35   ` [PATCH v4 mvebu 1/4] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
@ 2021-05-20 11:35   ` Pali Rohár
  2021-05-21  1:38     ` Andrew Lunn
  2021-05-20 11:35   ` [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
                     ` (2 subsequent siblings)
  4 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:35 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

From: Marek Behún <kabel@kernel.org>

Report a notice level message if a command is not supported by the rWTM
firmware.

This should not be an error, merely a notice, because the firmware can
be used on boards that do not have manufacturing information burned.

Signed-off-by: Marek Behún <kabel@kernel.org>
Reviewed-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index f85acdb3130c..d7e3489e4bf2 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -204,11 +204,14 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_BOARD_INFO, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev,
 			 "Board does not have manufacturing information burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the BOARD_INFO command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		rwtm->serial_number = reply->status[1];
 		rwtm->serial_number <<= 32;
@@ -237,10 +240,13 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 		return ret;
 
 	ret = mox_get_status(MBOX_CMD_ECDSA_PUB_KEY, reply->retval);
-	if (ret < 0 && ret != -ENODATA) {
-		return ret;
-	} else if (ret == -ENODATA) {
+	if (ret == -ENODATA) {
 		dev_warn(rwtm->dev, "Board has no public key burned!\n");
+	} else if (ret == -ENOSYS) {
+		dev_notice(rwtm->dev,
+			   "Firmware does not support the ECDSA_PUB_KEY command\n");
+	} else if (ret < 0) {
+		return ret;
 	} else {
 		u32 *s = reply->status;
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
  2021-05-20 11:35   ` [PATCH v4 mvebu 1/4] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
  2021-05-20 11:35   ` [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better Pali Rohár
@ 2021-05-20 11:35   ` Pali Rohár
  2021-05-21  1:39     ` Andrew Lunn
  2021-05-20 11:35   ` [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
  2021-06-17 13:06   ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Gregory CLEMENT
  4 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:35 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

When Marvell's rWTM firmware, which does not support the GET_RANDOM
command, is used, kernel prints an error message
  hwrng: no data available
every 10 seconds.

Fail probing of this driver if the rWTM firmware does not support the
GET_RANDOM command.

Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index d7e3489e4bf2..3ef9687dddca 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -260,6 +260,27 @@ static int mox_get_board_info(struct mox_rwtm *rwtm)
 	return 0;
 }
 
+static int check_get_random_support(struct mox_rwtm *rwtm)
+{
+	struct armada_37xx_rwtm_tx_msg msg;
+	int ret;
+
+	msg.command = MBOX_CMD_GET_RANDOM;
+	msg.args[0] = 1;
+	msg.args[1] = rwtm->buf_phys;
+	msg.args[2] = 4;
+
+	ret = mbox_send_message(rwtm->mbox, &msg);
+	if (ret < 0)
+		return ret;
+
+	ret = wait_for_completion_timeout(&rwtm->cmd_done, HZ / 2);
+	if (ret < 0)
+		return ret;
+
+	return mox_get_status(MBOX_CMD_GET_RANDOM, rwtm->reply.retval);
+}
+
 static int mox_hwrng_read(struct hwrng *rng, void *data, size_t max, bool wait)
 {
 	struct mox_rwtm *rwtm = (struct mox_rwtm *) rng->priv;
@@ -497,6 +518,13 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 	if (ret < 0)
 		dev_warn(dev, "Cannot read board information: %i\n", ret);
 
+	ret = check_get_random_support(rwtm);
+	if (ret < 0) {
+		dev_notice(dev,
+			   "Firmware does not support the GET_RANDOM command\n");
+		goto free_channel;
+	}
+
 	rwtm->hwrng.name = DRIVER_NAME "_hwrng";
 	rwtm->hwrng.read = mox_hwrng_read;
 	rwtm->hwrng.priv = (unsigned long) rwtm;
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
                     ` (2 preceding siblings ...)
  2021-05-20 11:35   ` [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
@ 2021-05-20 11:35   ` Pali Rohár
  2021-05-21  1:40     ` Andrew Lunn
  2021-06-17 13:06   ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Gregory CLEMENT
  4 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:35 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Currently it is hard to determinate if on Armada 3720 device is HWRNG
by running kernel accessible or not. So print information message into
dmesg when HWRNG is available and registration was successful.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 3ef9687dddca..1cf4f1087492 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -542,6 +542,8 @@ static int turris_mox_rwtm_probe(struct platform_device *pdev)
 		goto free_channel;
 	}
 
+	dev_info(dev, "HWRNG successfully registered\n");
+
 	return 0;
 
 free_channel:
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-05-12  0:56     ` Andrew Lunn
@ 2021-05-20 11:38       ` Pali Rohár
  0 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:38 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Wednesday 12 May 2021 02:56:09 Andrew Lunn wrote:
> However, i would drop the second part of the description. Making the
> Turris MOX firmware work on none Turris MOX hardware is a new feature,
> and so not applicable to stable.

Done in v4.

^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string
       [not found] <20210308153703.23097-1-kabel@kernel.org>
                   ` (2 preceding siblings ...)
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
@ 2021-05-20 11:38 ` Pali Rohár
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware " Pali Rohár
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
  3 siblings, 2 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:38 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

These two patches add support for using turris-mox-rwtm driver on any
Armada 3720 board. They are just adding a new compatible string.

Per Andrew's request I have split them from V3 series, so they can be
reviewed separately.

These patches are intended for next merge window.

I suppose that in future these patches may be backported into stable
kernel releases as in my opinion they match stable rules condition:
"New device IDs and quirks are also accepted". New compatible string
is basically new device id. Therefore I put into these patches also
Fixes/CC:stable tags. If you have different opinion on this, let me
know.

Pali Rohár (2):
  firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware
    compatible string
  arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi
    file

 arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 6 ++----
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 8 ++++++++
 drivers/firmware/turris-mox-rwtm.c                     | 1 +
 3 files changed, 11 insertions(+), 4 deletions(-)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  2021-05-20 11:38 ` [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string Pali Rohár
@ 2021-05-20 11:38   ` Pali Rohár
  2021-05-21  1:41     ` Andrew Lunn
  2021-06-17 13:07     ` Gregory CLEMENT
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
  1 sibling, 2 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:38 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Add more generic compatible string 'marvell,armada-3700-rwtm-firmware' for
this driver, since it can also be used on other Armada 3720 devices.

Current compatible string 'cznic,turris-mox-rwtm' is kept for backward
compatibility.

Signed-off-by: Pali Rohár <pali@kernel.org>
Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")
---
 drivers/firmware/turris-mox-rwtm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
index 1cf4f1087492..c2d34dc8ba46 100644
--- a/drivers/firmware/turris-mox-rwtm.c
+++ b/drivers/firmware/turris-mox-rwtm.c
@@ -569,6 +569,7 @@ static int turris_mox_rwtm_remove(struct platform_device *pdev)
 
 static const struct of_device_id turris_mox_rwtm_match[] = {
 	{ .compatible = "cznic,turris-mox-rwtm", },
+	{ .compatible = "marvell,armada-3700-rwtm-firmware", },
 	{ },
 };
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-20 11:38 ` [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string Pali Rohár
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware " Pali Rohár
@ 2021-05-20 11:38   ` Pali Rohár
  2021-05-21  1:42     ` Andrew Lunn
  2021-06-17 13:08     ` Gregory CLEMENT
  1 sibling, 2 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:38 UTC (permalink / raw)
  To: Gregory CLEMENT, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
the generic armada-37xx.dtsi file and use the generic compatible string
'marvell,armada-3700-rwtm-firmware' instead of the current one.

Turris MOX DTS file contains also old compatible string for backward
compatibility.

The Turris MOX rWTM firmware can be used on any Armada 37xx device,
giving them access to the rWTM hardware random number generator, which
is otherwise unavailable.

This change allows Linux to load the turris-mox-rwtm.ko module on these
boards.

Tested on ESPRESSObin v5 with both default Marvell WTMI firmware and
CZ.NIC's firmware. With default WTMI firmware the turris-mox-rwtm fails
to probe, while with CZ.NIC's firmware it registers the HW random number
generator.

Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Cc: <stable@vger.kernel.org> # 5.4+: 46d2f6d0c99f ("arm64: dts: armada-3720-turris-mox: add firmware node")
---
 arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 6 ++----
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 8 ++++++++
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
index 0753cc489638..6700f2212b61 100644
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -109,10 +109,8 @@
 	};
 
 	firmware {
-		turris-mox-rwtm {
-			compatible = "cznic,turris-mox-rwtm";
-			mboxes = <&rwtm 0>;
-			status = "okay";
+		armada-3700-rwtm {
+			compatible = "marvell,armada-3700-rwtm-firmware", "cznic,turris-mox-rwtm";
 		};
 	};
 };
diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
index 1b7f43e27589..847a2d12a4be 100644
--- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
@@ -505,4 +505,12 @@
 			};
 		};
 	};
+
+	firmware {
+		armada-3700-rwtm {
+			compatible = "marvell,armada-3700-rwtm-firmware";
+			mboxes = <&rwtm 0>;
+			status = "okay";
+		};
+	};
 };
-- 
2.20.1


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-12  0:59     ` Andrew Lunn
@ 2021-05-20 11:40       ` Pali Rohár
  0 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-05-20 11:40 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Wednesday 12 May 2021 02:59:24 Andrew Lunn wrote:
> On Thu, May 06, 2021 at 11:08:02AM +0200, Pali Rohár wrote:
> > Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
> > the generic armada-37xx.dtsi file and use the generic compatible string
> > 'marvell,armada-3700-rwtm-firmware' instead of the current one.
> > 
> > The Turris MOX rWTM firmware can be used on any Armada 37xx device,
> > giving them access to the rWTM hardware random number generator, which
> > is otherwise unavailable.
> 
> This is a new feature, not a fix. Please split this patchset up into
> fixes, which get applied to stable, and new features which will get
> merged during the next merge window.

Done, I have split patches into two patch series, so they can be
reviewed and merged separately.

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better
  2021-05-20 11:35   ` [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better Pali Rohár
@ 2021-05-21  1:38     ` Andrew Lunn
  0 siblings, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-21  1:38 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 20, 2021 at 01:35:18PM +0200, Pali Rohár wrote:
> From: Marek Behún <kabel@kernel.org>
> 
> Report a notice level message if a command is not supported by the rWTM
> firmware.
> 
> This should not be an error, merely a notice, because the firmware can
> be used on boards that do not have manufacturing information burned.
> 
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Reviewed-by: Pali Rohár <pali@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng
  2021-05-20 11:35   ` [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
@ 2021-05-21  1:39     ` Andrew Lunn
  0 siblings, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-21  1:39 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 20, 2021 at 01:35:19PM +0200, Pali Rohár wrote:
> When Marvell's rWTM firmware, which does not support the GET_RANDOM
> command, is used, kernel prints an error message
>   hwrng: no data available
> every 10 seconds.
> 
> Fail probing of this driver if the rWTM firmware does not support the
> GET_RANDOM command.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration
  2021-05-20 11:35   ` [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
@ 2021-05-21  1:40     ` Andrew Lunn
  0 siblings, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-21  1:40 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 20, 2021 at 01:35:20PM +0200, Pali Rohár wrote:
> Currently it is hard to determinate if on Armada 3720 device is HWRNG
> by running kernel accessible or not. So print information message into
> dmesg when HWRNG is available and registration was successful.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware " Pali Rohár
@ 2021-05-21  1:41     ` Andrew Lunn
  2021-06-17 13:07     ` Gregory CLEMENT
  1 sibling, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-21  1:41 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 20, 2021 at 01:38:43PM +0200, Pali Rohár wrote:
> Add more generic compatible string 'marvell,armada-3700-rwtm-firmware' for
> this driver, since it can also be used on other Armada 3720 devices.
> 
> Current compatible string 'cznic,turris-mox-rwtm' is kept for backward
> compatibility.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")

Since this is intended for the next merge window, it is clearly not a
fix. Please drop the fixes tag.

Otherwise:

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
@ 2021-05-21  1:42     ` Andrew Lunn
  2021-06-17 13:08     ` Gregory CLEMENT
  1 sibling, 0 replies; 40+ messages in thread
From: Andrew Lunn @ 2021-05-21  1:42 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Gregory CLEMENT, Marek Behún, linux-arm-kernel, linux-kernel

On Thu, May 20, 2021 at 01:38:44PM +0200, Pali Rohár wrote:
> Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
> the generic armada-37xx.dtsi file and use the generic compatible string
> 'marvell,armada-3700-rwtm-firmware' instead of the current one.
> 
> Turris MOX DTS file contains also old compatible string for backward
> compatibility.
> 
> The Turris MOX rWTM firmware can be used on any Armada 37xx device,
> giving them access to the rWTM hardware random number generator, which
> is otherwise unavailable.
> 
> This change allows Linux to load the turris-mox-rwtm.ko module on these
> boards.
> 
> Tested on ESPRESSObin v5 with both default Marvell WTMI firmware and
> CZ.NIC's firmware. With default WTMI firmware the turris-mox-rwtm fails
> to probe, while with CZ.NIC's firmware it registers the HW random number
> generator.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Cc: <stable@vger.kernel.org> # 5.4+: 46d2f6d0c99f ("arm64: dts: armada-3720-turris-mox: add firmware node")

Please drop stable. It is a new feature, not a fix.

Otherwise

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups
  2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
                     ` (3 preceding siblings ...)
  2021-05-20 11:35   ` [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
@ 2021-06-17 13:06   ` Gregory CLEMENT
  2021-07-07 18:14     ` Pali Rohár
  4 siblings, 1 reply; 40+ messages in thread
From: Gregory CLEMENT @ 2021-06-17 13:06 UTC (permalink / raw)
  To: Pali Rohár, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Hello,

Series applied on mvebu/fixes

Thanks,

Gregory

> These 4 patches are just fixups. Per Andrew's request I have split them
> from V3 series, so they can be applied to stable.
>
> Marek Behún (2):
>   firmware: turris-mox-rwtm: fix reply status decoding function
>   firmware: turris-mox-rwtm: report failures better
>
> Pali Rohár (2):
>   firmware: turris-mox-rwtm: fail probing when firmware does not support
>     hwrng
>   firmware: turris-mox-rwtm: show message about HWRNG registration
>
>  drivers/firmware/turris-mox-rwtm.c | 55 +++++++++++++++++++++++++-----
>  1 file changed, 47 insertions(+), 8 deletions(-)
>
> -- 
> 2.20.1
>

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware " Pali Rohár
  2021-05-21  1:41     ` Andrew Lunn
@ 2021-06-17 13:07     ` Gregory CLEMENT
  1 sibling, 0 replies; 40+ messages in thread
From: Gregory CLEMENT @ 2021-06-17 13:07 UTC (permalink / raw)
  To: Pali Rohár, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Hello,

> Add more generic compatible string 'marvell,armada-3700-rwtm-firmware' for
> this driver, since it can also be used on other Armada 3720 devices.
>
> Current compatible string 'cznic,turris-mox-rwtm' is kept for backward
> compatibility.
>
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Fixes: 389711b37493 ("firmware: Add Turris Mox rWTM firmware driver")


Applied on mvebu/drivers (I removed the Fixes line)

Thanks,

Gregory

> ---
>  drivers/firmware/turris-mox-rwtm.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/firmware/turris-mox-rwtm.c b/drivers/firmware/turris-mox-rwtm.c
> index 1cf4f1087492..c2d34dc8ba46 100644
> --- a/drivers/firmware/turris-mox-rwtm.c
> +++ b/drivers/firmware/turris-mox-rwtm.c
> @@ -569,6 +569,7 @@ static int turris_mox_rwtm_remove(struct platform_device *pdev)
>  
>  static const struct of_device_id turris_mox_rwtm_match[] = {
>  	{ .compatible = "cznic,turris-mox-rwtm", },
> +	{ .compatible = "marvell,armada-3700-rwtm-firmware", },
>  	{ },
>  };
>  
> -- 
> 2.20.1
>

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file
  2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
  2021-05-21  1:42     ` Andrew Lunn
@ 2021-06-17 13:08     ` Gregory CLEMENT
  1 sibling, 0 replies; 40+ messages in thread
From: Gregory CLEMENT @ 2021-06-17 13:08 UTC (permalink / raw)
  To: Pali Rohár, Andrew Lunn
  Cc: Marek Behún, linux-arm-kernel, linux-kernel

Hello,

> Move the turris-mox-rwtm firmware node from Turris MOX' device tree into
> the generic armada-37xx.dtsi file and use the generic compatible string
> 'marvell,armada-3700-rwtm-firmware' instead of the current one.
>
> Turris MOX DTS file contains also old compatible string for backward
> compatibility.
>
> The Turris MOX rWTM firmware can be used on any Armada 37xx device,
> giving them access to the rWTM hardware random number generator, which
> is otherwise unavailable.
>
> This change allows Linux to load the turris-mox-rwtm.ko module on these
> boards.
>
> Tested on ESPRESSObin v5 with both default Marvell WTMI firmware and
> CZ.NIC's firmware. With default WTMI firmware the turris-mox-rwtm fails
> to probe, while with CZ.NIC's firmware it registers the HW random number
> generator.
>
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Cc: <stable@vger.kernel.org> # 5.4+: 46d2f6d0c99f ("arm64: dts: armada-3720-turris-mox: add firmware node")

Applied on mvebu/dt64 (I removed the Fixes line)

Thanks,

Gregory
> ---
>  arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 6 ++----
>  arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 8 ++++++++
>  2 files changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
> index 0753cc489638..6700f2212b61 100644
> --- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
> +++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
> @@ -109,10 +109,8 @@
>  	};
>  
>  	firmware {
> -		turris-mox-rwtm {
> -			compatible = "cznic,turris-mox-rwtm";
> -			mboxes = <&rwtm 0>;
> -			status = "okay";
> +		armada-3700-rwtm {
> +			compatible = "marvell,armada-3700-rwtm-firmware", "cznic,turris-mox-rwtm";
>  		};
>  	};
>  };
> diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> index 1b7f43e27589..847a2d12a4be 100644
> --- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> +++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> @@ -505,4 +505,12 @@
>  			};
>  		};
>  	};
> +
> +	firmware {
> +		armada-3700-rwtm {
> +			compatible = "marvell,armada-3700-rwtm-firmware";
> +			mboxes = <&rwtm 0>;
> +			status = "okay";
> +		};
> +	};
>  };
> -- 
> 2.20.1
>

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups
  2021-06-17 13:06   ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Gregory CLEMENT
@ 2021-07-07 18:14     ` Pali Rohár
  2021-07-23 12:45       ` Gregory CLEMENT
  0 siblings, 1 reply; 40+ messages in thread
From: Pali Rohár @ 2021-07-07 18:14 UTC (permalink / raw)
  To: Gregory CLEMENT
  Cc: Andrew Lunn, Marek Behún, linux-arm-kernel, linux-kernel

Hello Gregory!

I see that you put this patch into mvebu/fixes branch and tagged it for
5.13 kernel:
https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git/tag/?h=mvebu-fixes-5.13-1

But it looks like it was not merged into 5.13. Are you going to re-send
all pending patches to 5.14?

On Thursday 17 June 2021 15:06:51 Gregory CLEMENT wrote:
> Hello,
> 
> Series applied on mvebu/fixes
> 
> Thanks,
> 
> Gregory
> 
> > These 4 patches are just fixups. Per Andrew's request I have split them
> > from V3 series, so they can be applied to stable.
> >
> > Marek Behún (2):
> >   firmware: turris-mox-rwtm: fix reply status decoding function
> >   firmware: turris-mox-rwtm: report failures better
> >
> > Pali Rohár (2):
> >   firmware: turris-mox-rwtm: fail probing when firmware does not support
> >     hwrng
> >   firmware: turris-mox-rwtm: show message about HWRNG registration
> >
> >  drivers/firmware/turris-mox-rwtm.c | 55 +++++++++++++++++++++++++-----
> >  1 file changed, 47 insertions(+), 8 deletions(-)
> >
> > -- 
> > 2.20.1
> >
> 
> -- 
> Gregory Clement, Bootlin
> Embedded Linux and Kernel engineering
> http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups
  2021-07-07 18:14     ` Pali Rohár
@ 2021-07-23 12:45       ` Gregory CLEMENT
  2021-07-23 12:47         ` Pali Rohár
  0 siblings, 1 reply; 40+ messages in thread
From: Gregory CLEMENT @ 2021-07-23 12:45 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Andrew Lunn, Marek Behún, linux-arm-kernel, linux-kernel

Hello Pali,

> Hello Gregory!
>
> I see that you put this patch into mvebu/fixes branch and tagged it for
> 5.13 kernel:
> https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git/tag/?h=mvebu-fixes-5.13-1
>
> But it looks like it was not merged into 5.13. Are you going to re-send
> all pending patches to 5.14?

They have been merged in 5.14 during merged windows and they are now
also in 5.13.4. So I think everything is OK now.

Gregory

>
> On Thursday 17 June 2021 15:06:51 Gregory CLEMENT wrote:
>> Hello,
>> 
>> Series applied on mvebu/fixes
>> 
>> Thanks,
>> 
>> Gregory
>> 
>> > These 4 patches are just fixups. Per Andrew's request I have split them
>> > from V3 series, so they can be applied to stable.
>> >
>> > Marek Behún (2):
>> >   firmware: turris-mox-rwtm: fix reply status decoding function
>> >   firmware: turris-mox-rwtm: report failures better
>> >
>> > Pali Rohár (2):
>> >   firmware: turris-mox-rwtm: fail probing when firmware does not support
>> >     hwrng
>> >   firmware: turris-mox-rwtm: show message about HWRNG registration
>> >
>> >  drivers/firmware/turris-mox-rwtm.c | 55 +++++++++++++++++++++++++-----
>> >  1 file changed, 47 insertions(+), 8 deletions(-)
>> >
>> > -- 
>> > 2.20.1
>> >
>> 
>> -- 
>> Gregory Clement, Bootlin
>> Embedded Linux and Kernel engineering
>> http://bootlin.com

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups
  2021-07-23 12:45       ` Gregory CLEMENT
@ 2021-07-23 12:47         ` Pali Rohár
  0 siblings, 0 replies; 40+ messages in thread
From: Pali Rohár @ 2021-07-23 12:47 UTC (permalink / raw)
  To: Gregory CLEMENT
  Cc: Andrew Lunn, Marek Behún, linux-arm-kernel, linux-kernel

On Friday 23 July 2021 14:45:56 Gregory CLEMENT wrote:
> Hello Pali,
> 
> > Hello Gregory!
> >
> > I see that you put this patch into mvebu/fixes branch and tagged it for
> > 5.13 kernel:
> > https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git/tag/?h=mvebu-fixes-5.13-1
> >
> > But it looks like it was not merged into 5.13. Are you going to re-send
> > all pending patches to 5.14?
> 
> They have been merged in 5.14 during merged windows and they are now
> also in 5.13.4. So I think everything is OK now.
> 
> Gregory

Yes! I already figured out. So everything is fine now.

> 
> >
> > On Thursday 17 June 2021 15:06:51 Gregory CLEMENT wrote:
> >> Hello,
> >> 
> >> Series applied on mvebu/fixes
> >> 
> >> Thanks,
> >> 
> >> Gregory
> >> 
> >> > These 4 patches are just fixups. Per Andrew's request I have split them
> >> > from V3 series, so they can be applied to stable.
> >> >
> >> > Marek Behún (2):
> >> >   firmware: turris-mox-rwtm: fix reply status decoding function
> >> >   firmware: turris-mox-rwtm: report failures better
> >> >
> >> > Pali Rohár (2):
> >> >   firmware: turris-mox-rwtm: fail probing when firmware does not support
> >> >     hwrng
> >> >   firmware: turris-mox-rwtm: show message about HWRNG registration
> >> >
> >> >  drivers/firmware/turris-mox-rwtm.c | 55 +++++++++++++++++++++++++-----
> >> >  1 file changed, 47 insertions(+), 8 deletions(-)
> >> >
> >> > -- 
> >> > 2.20.1
> >> >
> >> 
> >> -- 
> >> Gregory Clement, Bootlin
> >> Embedded Linux and Kernel engineering
> >> http://bootlin.com
> 
> -- 
> Gregory Clement, Bootlin
> Embedded Linux and Kernel engineering
> http://bootlin.com

^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2021-07-23 12:56 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20210308153703.23097-1-kabel@kernel.org>
2021-04-29  8:36 ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
2021-04-29  8:36   ` [PATCH v2 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
2021-05-03 12:22   ` [PATCH v2 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
2021-05-05 16:04     ` Marek Behún
2021-05-05 16:20       ` Andrew Lunn
2021-05-11 21:46         ` Pali Rohár
2021-05-06  9:07 ` [PATCH v3 " Pali Rohár
2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 2/6] firmware: turris-mox-rwtm: report failures better Pali Rohár
2021-05-06  9:07   ` [PATCH v3 mvebu + mvebu/dt64 3/6] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
2021-05-12  0:56     ` Andrew Lunn
2021-05-20 11:38       ` Pali Rohár
2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 4/6] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 5/6] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware compatible string Pali Rohár
2021-05-06  9:08   ` [PATCH v3 mvebu + mvebu/dt64 6/6] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
2021-05-12  0:59     ` Andrew Lunn
2021-05-20 11:40       ` Pali Rohár
2021-05-12  0:49   ` [PATCH v3 mvebu + mvebu/dt64 1/6] firmware: turris-mox-rwtm: fix reply status decoding function Andrew Lunn
2021-05-20 11:35 ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Pali Rohár
2021-05-20 11:35   ` [PATCH v4 mvebu 1/4] firmware: turris-mox-rwtm: fix reply status decoding function Pali Rohár
2021-05-20 11:35   ` [PATCH v4 mvebu 2/4] firmware: turris-mox-rwtm: report failures better Pali Rohár
2021-05-21  1:38     ` Andrew Lunn
2021-05-20 11:35   ` [PATCH v4 mvebu 3/4] firmware: turris-mox-rwtm: fail probing when firmware does not support hwrng Pali Rohár
2021-05-21  1:39     ` Andrew Lunn
2021-05-20 11:35   ` [PATCH v4 mvebu 4/4] firmware: turris-mox-rwtm: show message about HWRNG registration Pali Rohár
2021-05-21  1:40     ` Andrew Lunn
2021-06-17 13:06   ` [PATCH v4 mvebu 0/4] firmware: turris-mox-rwtm: fixups Gregory CLEMENT
2021-07-07 18:14     ` Pali Rohár
2021-07-23 12:45       ` Gregory CLEMENT
2021-07-23 12:47         ` Pali Rohár
2021-05-20 11:38 ` [PATCH v4 mvebu + mvebu/dt64 0/2] firmware: turris-mox-rwtm: new compatible string Pali Rohár
2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 1/2] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware " Pali Rohár
2021-05-21  1:41     ` Andrew Lunn
2021-06-17 13:07     ` Gregory CLEMENT
2021-05-20 11:38   ` [PATCH v4 mvebu + mvebu/dt64 2/2] arm64: dts: marvell: armada-37xx: move firmware node to generic dtsi file Pali Rohár
2021-05-21  1:42     ` Andrew Lunn
2021-06-17 13:08     ` Gregory CLEMENT

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).