165 lines
4.9 KiB
Diff
165 lines
4.9 KiB
Diff
From 7921dacbe23c5430c8a6e12a7d3201eb55372297 Mon Sep 17 00:00:00 2001
|
|
From: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
|
|
Date: Thu, 14 Dec 2017 12:09:07 +0100
|
|
Subject: [PATCH 01/15] spmi: msm: display the PMIC Arb version (debug)
|
|
|
|
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
|
|
---
|
|
drivers/spmi/spmi-msm.c | 13 +++++++++++++
|
|
1 file changed, 13 insertions(+)
|
|
|
|
diff --git a/drivers/spmi/spmi-msm.c b/drivers/spmi/spmi-msm.c
|
|
index c226913f9e..e9bfbb0203 100644
|
|
--- a/drivers/spmi/spmi-msm.c
|
|
+++ b/drivers/spmi/spmi-msm.c
|
|
@@ -17,6 +17,11 @@
|
|
|
|
DECLARE_GLOBAL_DATA_PTR;
|
|
|
|
+
|
|
+/* PMIC Arbiter configuration registers */
|
|
+#define PMIC_ARB_VERSION 0x0000
|
|
+#define PMIC_ARB_VERSION_V2_MIN 0x20010000
|
|
+
|
|
#define ARB_CHANNEL_OFFSET(n) (0x4 * (n))
|
|
#define SPMI_CH_OFFSET(chnl) ((chnl) * 0x8000)
|
|
|
|
@@ -148,6 +153,8 @@ static int msm_spmi_probe(struct udevice *dev)
|
|
struct udevice *parent = dev->parent;
|
|
struct msm_spmi_priv *priv = dev_get_priv(dev);
|
|
int node = dev_of_offset(dev);
|
|
+ u32 hw_ver;
|
|
+ bool is_v1;
|
|
int i;
|
|
|
|
priv->arb_chnl = devfdt_get_addr(dev);
|
|
@@ -155,6 +162,12 @@ static int msm_spmi_probe(struct udevice *dev)
|
|
dev_of_offset(parent), node, "reg", 1, NULL, false);
|
|
priv->spmi_obs = fdtdec_get_addr_size_auto_parent(gd->fdt_blob,
|
|
dev_of_offset(parent), node, "reg", 2, NULL, false);
|
|
+
|
|
+ hw_ver = readl(priv->arb_chnl + PMIC_ARB_VERSION - 0x800);
|
|
+ is_v1 = (hw_ver < PMIC_ARB_VERSION_V2_MIN);
|
|
+
|
|
+ dev_dbg(dev, "PMIC Arb Version-%d (0x%x)\n", (is_v1 ? 1 : 2), hw_ver);
|
|
+
|
|
if (priv->arb_chnl == FDT_ADDR_T_NONE ||
|
|
priv->spmi_core == FDT_ADDR_T_NONE ||
|
|
priv->spmi_obs == FDT_ADDR_T_NONE)
|
|
--
|
|
2.14.3
|
|
|
|
From e254dae128f67bf46fd651570edd2d139306e0af Mon Sep 17 00:00:00 2001
|
|
From: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
|
|
Date: Tue, 19 Dec 2017 10:17:31 +0100
|
|
Subject: [PATCH 02/15] poplar: configs: increase gunzip buffer size for the
|
|
kernel
|
|
|
|
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
|
|
---
|
|
include/configs/poplar.h | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/include/configs/poplar.h b/include/configs/poplar.h
|
|
index 1c39ed153f..8a12b526a8 100644
|
|
--- a/include/configs/poplar.h
|
|
+++ b/include/configs/poplar.h
|
|
@@ -18,7 +18,7 @@
|
|
#define CONFIG_NR_DRAM_BANKS 2
|
|
|
|
/* SYS */
|
|
-#define CONFIG_SYS_BOOTM_LEN 0x1400000
|
|
+#define CONFIG_SYS_BOOTM_LEN SZ_64M
|
|
#define CONFIG_SYS_INIT_SP_ADDR 0x200000
|
|
#define CONFIG_SYS_LOAD_ADDR 0x800000
|
|
#define CONFIG_SYS_MALLOC_LEN SZ_32M
|
|
--
|
|
2.14.3
|
|
|
|
From 85f2939d2130decf299bceb94086eb3fcbb2a5f1 Mon Sep 17 00:00:00 2001
|
|
From: Rob Clark <robdclark@gmail.com>
|
|
Date: Fri, 23 Jun 2017 15:36:33 -0400
|
|
Subject: [PATCH 03/15] dm: core: parse chosen node
|
|
|
|
This is the node that would contain, for example, the framebuffer setup
|
|
by an earlier stage.
|
|
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
---
|
|
arch/sandbox/dts/test.dts | 7 +++++++
|
|
drivers/core/root.c | 12 ++++++++++++
|
|
test/dm/bus.c | 2 +-
|
|
test/dm/test-fdt.c | 2 +-
|
|
4 files changed, 21 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
|
|
index e67d428eb2..3f9e788e6c 100644
|
|
--- a/arch/sandbox/dts/test.dts
|
|
+++ b/arch/sandbox/dts/test.dts
|
|
@@ -478,6 +478,13 @@
|
|
wdt0: wdt@0 {
|
|
compatible = "sandbox,wdt";
|
|
};
|
|
+
|
|
+ chosen {
|
|
+ chosen-test {
|
|
+ compatible = "denx,u-boot-fdt-test";
|
|
+ reg = <9 1>;
|
|
+ };
|
|
+ };
|
|
};
|
|
|
|
#include "sandbox_pmic.dtsi"
|
|
diff --git a/drivers/core/root.c b/drivers/core/root.c
|
|
index 976e2c4fdd..5a1c5994f6 100644
|
|
--- a/drivers/core/root.c
|
|
+++ b/drivers/core/root.c
|
|
@@ -266,6 +266,18 @@ static int dm_scan_fdt_node(struct udevice *parent, const void *blob,
|
|
for (offset = fdt_first_subnode(blob, offset);
|
|
offset > 0;
|
|
offset = fdt_next_subnode(blob, offset)) {
|
|
+
|
|
+ /* "chosen" node isn't a device itself but may contain some: */
|
|
+ if (!strcmp(fdt_get_name(blob, offset, NULL), "chosen")) {
|
|
+ pr_debug("parsing subnodes of \"chosen\"\n");
|
|
+
|
|
+ err = dm_scan_fdt_node(parent, blob, offset,
|
|
+ pre_reloc_only);
|
|
+ if (err && !ret)
|
|
+ ret = err;
|
|
+ continue;
|
|
+ }
|
|
+
|
|
if (pre_reloc_only &&
|
|
!dm_fdt_pre_reloc(blob, offset))
|
|
continue;
|
|
diff --git a/test/dm/bus.c b/test/dm/bus.c
|
|
index 7006d4163d..1da398ae3a 100644
|
|
--- a/test/dm/bus.c
|
|
+++ b/test/dm/bus.c
|
|
@@ -105,7 +105,7 @@ UCLASS_DRIVER(testbus) = {
|
|
/* Test that we can probe for children */
|
|
static int dm_test_bus_children(struct unit_test_state *uts)
|
|
{
|
|
- int num_devices = 6;
|
|
+ int num_devices = 7;
|
|
struct udevice *bus;
|
|
struct uclass *uc;
|
|
|
|
diff --git a/test/dm/test-fdt.c b/test/dm/test-fdt.c
|
|
index dcc2ef8b65..920ccbf016 100644
|
|
--- a/test/dm/test-fdt.c
|
|
+++ b/test/dm/test-fdt.c
|
|
@@ -167,7 +167,7 @@ int dm_check_devices(struct unit_test_state *uts, int num_devices)
|
|
/* Test that FDT-based binding works correctly */
|
|
static int dm_test_fdt(struct unit_test_state *uts)
|
|
{
|
|
- const int num_devices = 6;
|
|
+ const int num_devices = 7;
|
|
struct udevice *dev;
|
|
struct uclass *uc;
|
|
int ret;
|
|
--
|
|
2.14.3
|
|
|