aboutsummaryrefslogtreecommitdiff
path: root/drivers/pinctrl/intel
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pinctrl/intel')
-rw-r--r--drivers/pinctrl/intel/pinctrl.c11
-rw-r--r--drivers/pinctrl/intel/pinctrl_apl.c18
2 files changed, 11 insertions, 18 deletions
diff --git a/drivers/pinctrl/intel/pinctrl.c b/drivers/pinctrl/intel/pinctrl.c
index 9f96505dd5..987a56b715 100644
--- a/drivers/pinctrl/intel/pinctrl.c
+++ b/drivers/pinctrl/intel/pinctrl.c
@@ -274,7 +274,9 @@ static int pinctrl_configure_itss(struct udevice *dev,
irq = pcr_read32(dev, PAD_CFG1_OFFSET(pad_cfg_offset));
irq &= PAD_CFG1_IRQ_MASK;
if (!irq) {
- log_err("GPIO %u doesn't support APIC routing\n", cfg->pad);
+ if (spl_phase() > PHASE_TPL)
+ log_err("GPIO %u doesn't support APIC routing\n",
+ cfg->pad);
return -EPROTONOSUPPORT;
}
@@ -314,7 +316,8 @@ static int pinctrl_pad_reset_config_override(const struct pad_community *comm,
return config_value;
}
}
- log_err("Logical-to-Chipset mapping not found\n");
+ if (spl_phase() > PHASE_TPL)
+ log_err("Logical-to-Chipset mapping not found\n");
return -ENOENT;
}
@@ -620,7 +623,9 @@ int intel_pinctrl_of_to_plat(struct udevice *dev,
struct intel_pinctrl_priv *priv = dev_get_priv(dev);
if (!comm) {
- log_err("Cannot find community for pid %d\n", pplat->pid);
+ if (spl_phase() > PHASE_TPL)
+ log_err("Cannot find community for pid %d\n",
+ pplat->pid);
return -EDOM;
}
priv->comm = comm;
diff --git a/drivers/pinctrl/intel/pinctrl_apl.c b/drivers/pinctrl/intel/pinctrl_apl.c
index 48b0e9a161..acaa55d2e7 100644
--- a/drivers/pinctrl/intel/pinctrl_apl.c
+++ b/drivers/pinctrl/intel/pinctrl_apl.c
@@ -17,18 +17,6 @@
#include <asm-generic/gpio.h>
#include <asm/intel_pinctrl_defs.h>
-/**
- * struct apl_gpio_plat - platform data for each device
- *
- * @dtplat: of-platdata data from C struct
- */
-struct apl_gpio_plat {
-#if CONFIG_IS_ENABLED(OF_PLATDATA)
- /* Put this first since driver model will copy the data here */
- struct dtd_intel_apl_pinctrl dtplat;
-#endif
-};
-
static const struct reset_mapping rst_map[] = {
{ .logical = PAD_CFG0_LOGICAL_RESET_PWROK, .chipset = 0U << 30 },
{ .logical = PAD_CFG0_LOGICAL_RESET_DEEP, .chipset = 1U << 30 },
@@ -152,8 +140,6 @@ static int apl_pinctrl_of_to_plat(struct udevice *dev)
* linker list (i.e. alphabetical order by driver name). So the GPIO
* device may well be bound before its parent (p2sb), and this call
* will fail if p2sb is not bound yet.
- *
- * TODO(sjg@chromium.org): Add a parent pointer to child devices in dtoc
*/
ret = p2sb_set_port_id(dev, plat->dtplat.intel_p2sb_port_id);
if (ret)
@@ -169,15 +155,17 @@ static int apl_pinctrl_of_to_plat(struct udevice *dev)
return intel_pinctrl_of_to_plat(dev, comm, 2);
}
+#if !CONFIG_IS_ENABLED(OF_PLATDATA)
static const struct udevice_id apl_gpio_ids[] = {
{ .compatible = "intel,apl-pinctrl"},
{ }
};
+#endif
U_BOOT_DRIVER(intel_apl_pinctrl) = {
.name = "intel_apl_pinctrl",
.id = UCLASS_PINCTRL,
- .of_match = apl_gpio_ids,
+ .of_match = of_match_ptr(apl_gpio_ids),
.probe = intel_pinctrl_probe,
.ops = &intel_pinctrl_ops,
#if !CONFIG_IS_ENABLED(OF_PLATDATA)