On Fri, Apr 06 2018 at 17:23 -0600, Stephen Boyd wrote:
Quoting Lina Iyer (2018-04-06 08:13:55)
From: Mahesh Sivasubramanian <msiva...@codeaurora.org>

Command DB is a simple database in the shared memory of QCOM SoCs, that
provides information regarding shared resources. Some shared resources
in the SoC have properties that are probed dynamically at boot by the
remote processor. The information pertaining to the SoC and the platform
are made available in the shared memory. Drivers can query this
information using predefined strings.

Signed-off-by: Mahesh Sivasubramanian <msiva...@codeaurora.org>
Signed-off-by: Lina Iyer <il...@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.anders...@linaro.org>

I have this patch on top to fix the endian stuff. Care to test it out
and see if it still works?

From: Stephen Boyd <swb...@chromium.org>
Subject: soc: qcom: cmd-db: Make endian-agnostic

This driver deals with memory that is stored in little-endian format.
Update the structures with the proper little-endian types and then
do the proper conversions when reading the fields. Note that we compare
the ids with a memcmp() because we already pad out the string 'id' field
to exactly 8 bytes with the strncpy() onto the stack.

Signed-off-by: Stephen Boyd <swb...@chromium.org>

diff --git a/drivers/soc/qcom/cmd-db.c b/drivers/soc/qcom/cmd-db.c
index b5172049f608..a56dc9edab82 100644
--- a/drivers/soc/qcom/cmd-db.c
+++ b/drivers/soc/qcom/cmd-db.c
@@ -13,18 +13,10 @@

#define NUM_PRIORITY            2
#define MAX_SLV_ID              8
-#define CMD_DB_MAGIC           0x0C0330DBUL
+static const char CMD_DB_MAGIC[] = { 0xdb, 0x33, 0x03, 0x0c };
This has to be { 0xdb, 0x30, 0x03, 0x0c }

Otherwise it works.


Reply via email to