diff options
Diffstat (limited to 'drivers/firmware')
-rw-r--r-- | drivers/firmware/arm-ffa/arm-ffa-uclass.c | 1 | ||||
-rw-r--r-- | drivers/firmware/arm-ffa/arm-ffa.c | 1 | ||||
-rw-r--r-- | drivers/firmware/arm-ffa/ffa-emul-uclass.c | 1 | ||||
-rw-r--r-- | drivers/firmware/arm-ffa/sandbox_ffa.c | 1 | ||||
-rw-r--r-- | drivers/firmware/firmware-sandbox.c | 1 | ||||
-rw-r--r-- | drivers/firmware/firmware-uclass.c | 1 | ||||
-rw-r--r-- | drivers/firmware/firmware-zynqmp.c | 1 | ||||
-rw-r--r-- | drivers/firmware/psci.c | 42 | ||||
-rw-r--r-- | drivers/firmware/scmi/base.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/mailbox_agent.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/optee_agent.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/sandbox-scmi_agent.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/sandbox-scmi_devices.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/scmi_agent-uclass.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/smccc_agent.c | 1 | ||||
-rw-r--r-- | drivers/firmware/scmi/smt.c | 1 | ||||
-rw-r--r-- | drivers/firmware/ti_sci.c | 10 | ||||
-rw-r--r-- | drivers/firmware/ti_sci_static_data.h | 2 |
18 files changed, 49 insertions, 20 deletions
diff --git a/drivers/firmware/arm-ffa/arm-ffa-uclass.c b/drivers/firmware/arm-ffa/arm-ffa-uclass.c index f1e91d151ea..e0767fc7551 100644 --- a/drivers/firmware/arm-ffa/arm-ffa-uclass.c +++ b/drivers/firmware/arm-ffa/arm-ffa-uclass.c @@ -5,7 +5,6 @@ * Authors: * Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> */ -#include <common.h> #include <arm_ffa.h> #include <arm_ffa_priv.h> #include <dm.h> diff --git a/drivers/firmware/arm-ffa/arm-ffa.c b/drivers/firmware/arm-ffa/arm-ffa.c index ee0bf9a55b4..94e6105cb38 100644 --- a/drivers/firmware/arm-ffa/arm-ffa.c +++ b/drivers/firmware/arm-ffa/arm-ffa.c @@ -6,7 +6,6 @@ * Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> */ -#include <common.h> #include <arm_ffa.h> #include <arm_ffa_priv.h> #include <dm.h> diff --git a/drivers/firmware/arm-ffa/ffa-emul-uclass.c b/drivers/firmware/arm-ffa/ffa-emul-uclass.c index 4bf9f6041fe..1521d9b66ac 100644 --- a/drivers/firmware/arm-ffa/ffa-emul-uclass.c +++ b/drivers/firmware/arm-ffa/ffa-emul-uclass.c @@ -5,7 +5,6 @@ * Authors: * Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> */ -#include <common.h> #include <dm.h> #include <mapmem.h> #include <string.h> diff --git a/drivers/firmware/arm-ffa/sandbox_ffa.c b/drivers/firmware/arm-ffa/sandbox_ffa.c index 11142429c09..44b32a829dd 100644 --- a/drivers/firmware/arm-ffa/sandbox_ffa.c +++ b/drivers/firmware/arm-ffa/sandbox_ffa.c @@ -5,7 +5,6 @@ * Authors: * Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> */ -#include <common.h> #include <arm_ffa.h> #include <dm.h> #include <log.h> diff --git a/drivers/firmware/firmware-sandbox.c b/drivers/firmware/firmware-sandbox.c index d970d75f781..226b5cfc191 100644 --- a/drivers/firmware/firmware-sandbox.c +++ b/drivers/firmware/firmware-sandbox.c @@ -5,7 +5,6 @@ * Copyright (C) 2018 Xilinx, Inc. */ -#include <common.h> #include <dm.h> static const struct udevice_id generic_sandbox_firmware_ids[] = { diff --git a/drivers/firmware/firmware-uclass.c b/drivers/firmware/firmware-uclass.c index e83a147a000..84caf25548b 100644 --- a/drivers/firmware/firmware-uclass.c +++ b/drivers/firmware/firmware-uclass.c @@ -2,7 +2,6 @@ #define LOG_CATEGORY UCLASS_FIRMWARE -#include <common.h> #include <dm.h> /* Firmware access is platform-dependent. No generic code in uclass */ diff --git a/drivers/firmware/firmware-zynqmp.c b/drivers/firmware/firmware-zynqmp.c index dfad798a2e7..f99507d86c6 100644 --- a/drivers/firmware/firmware-zynqmp.c +++ b/drivers/firmware/firmware-zynqmp.c @@ -5,7 +5,6 @@ * Copyright (C) 2018-2019 Xilinx, Inc. */ -#include <common.h> #include <cpu_func.h> #include <dm.h> #include <dm/device_compat.h> diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c index 03544d76ed4..2e3223e1c32 100644 --- a/drivers/firmware/psci.c +++ b/drivers/firmware/psci.c @@ -6,7 +6,6 @@ * Copyright (C) 2015 ARM Limited */ -#include <common.h> #include <command.h> #include <dm.h> #include <efi_loader.h> @@ -23,6 +22,7 @@ #include <linux/libfdt.h> #include <linux/printk.h> #include <linux/psci.h> +#include <power-domain-uclass.h> #define DRIVER_NAME "psci" @@ -172,6 +172,10 @@ static int bind_smccc_features(struct udevice *dev, int psci_method) static int psci_bind(struct udevice *dev) { +#if IS_ENABLED(CONFIG_POWER_DOMAIN) + ofnode node; +#endif + /* No SYSTEM_RESET support for PSCI 0.1 */ if (device_is_compatible(dev, "arm,psci-0.2") || device_is_compatible(dev, "arm,psci-1.0")) { @@ -188,6 +192,16 @@ static int psci_bind(struct udevice *dev) if (IS_ENABLED(CONFIG_ARM_SMCCC_FEATURES) && device_is_compatible(dev, "arm,psci-1.0")) dev_or_flags(dev, DM_FLAG_PROBE_AFTER_BIND); + /* Bind power-domain subnodes */ +#if IS_ENABLED(CONFIG_POWER_DOMAIN) + dev_for_each_subnode(node, dev) { + if (device_bind_driver_to_node(dev, "psci_power_domain", + ofnode_get_name(node), + node, NULL)) + pr_warn("failed to bind %s\n", ofnode_get_name(node)); + } +#endif + return 0; } @@ -324,3 +338,29 @@ U_BOOT_DRIVER(psci) = { #endif .flags = DM_FLAG_PRE_RELOC, }; + +#if IS_ENABLED(CONFIG_POWER_DOMAIN) +/* Accept #power-domain-cells == 0 */ +static int psci_power_domain_xlate(struct power_domain *power_domain, + struct ofnode_phandle_args *args) +{ + return args->args_count == 0 ? 0 : -EINVAL; +} + +static const struct power_domain_ops psci_power_ops = { + .of_xlate = psci_power_domain_xlate, +}; + +static int psci_power_domain_probe(struct udevice *dev) +{ + return 0; +} + +U_BOOT_DRIVER(psci_power_domain) = { + .name = "psci_power_domain", + .id = UCLASS_POWER_DOMAIN, + .ops = &psci_power_ops, + .probe = psci_power_domain_probe, + .flags = DM_FLAG_PRE_RELOC, +}; +#endif diff --git a/drivers/firmware/scmi/base.c b/drivers/firmware/scmi/base.c index 1d41a8a98fc..f4e3974ff5b 100644 --- a/drivers/firmware/scmi/base.c +++ b/drivers/firmware/scmi/base.c @@ -6,7 +6,6 @@ * author: AKASHI Takahiro <takahiro.akashi@linaro.org> */ -#include <common.h> #include <dm.h> #include <scmi_agent.h> #include <scmi_protocols.h> diff --git a/drivers/firmware/scmi/mailbox_agent.c b/drivers/firmware/scmi/mailbox_agent.c index 7ad3e8da9f0..6d4497f4b92 100644 --- a/drivers/firmware/scmi/mailbox_agent.c +++ b/drivers/firmware/scmi/mailbox_agent.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <dm.h> #include <errno.h> #include <mailbox.h> diff --git a/drivers/firmware/scmi/optee_agent.c b/drivers/firmware/scmi/optee_agent.c index 48dbb88a3fb..631625d715b 100644 --- a/drivers/firmware/scmi/optee_agent.c +++ b/drivers/firmware/scmi/optee_agent.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <dm.h> #include <errno.h> #include <scmi_agent.h> diff --git a/drivers/firmware/scmi/sandbox-scmi_agent.c b/drivers/firmware/scmi/sandbox-scmi_agent.c index cc9011c7312..19be280ec44 100644 --- a/drivers/firmware/scmi/sandbox-scmi_agent.c +++ b/drivers/firmware/scmi/sandbox-scmi_agent.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <dm.h> #include <malloc.h> #include <scmi_agent.h> diff --git a/drivers/firmware/scmi/sandbox-scmi_devices.c b/drivers/firmware/scmi/sandbox-scmi_devices.c index 603e2bb40af..96c2922b067 100644 --- a/drivers/firmware/scmi/sandbox-scmi_devices.c +++ b/drivers/firmware/scmi/sandbox-scmi_devices.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_MISC -#include <common.h> #include <clk.h> #include <dm.h> #include <log.h> diff --git a/drivers/firmware/scmi/scmi_agent-uclass.c b/drivers/firmware/scmi/scmi_agent-uclass.c index 0f1003e167e..8c907c3b032 100644 --- a/drivers/firmware/scmi/scmi_agent-uclass.c +++ b/drivers/firmware/scmi/scmi_agent-uclass.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <dm.h> #include <errno.h> #include <scmi_agent.h> diff --git a/drivers/firmware/scmi/smccc_agent.c b/drivers/firmware/scmi/smccc_agent.c index 972c6addde2..ac35d07ebaf 100644 --- a/drivers/firmware/scmi/smccc_agent.c +++ b/drivers/firmware/scmi/smccc_agent.c @@ -5,7 +5,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <dm.h> #include <errno.h> #include <scmi_agent.h> diff --git a/drivers/firmware/scmi/smt.c b/drivers/firmware/scmi/smt.c index 509ed618a99..67d2f450024 100644 --- a/drivers/firmware/scmi/smt.c +++ b/drivers/firmware/scmi/smt.c @@ -6,7 +6,6 @@ #define LOG_CATEGORY UCLASS_SCMI_AGENT -#include <common.h> #include <cpu_func.h> #include <dm.h> #include <dm/device_compat.h> diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c index 6c581b9df9c..719cfa771b4 100644 --- a/drivers/firmware/ti_sci.c +++ b/drivers/firmware/ti_sci.c @@ -7,7 +7,6 @@ * Lokesh Vutla <lokeshvutla@ti.com> */ -#include <common.h> #include <dm.h> #include <errno.h> #include <log.h> @@ -140,7 +139,6 @@ static struct ti_sci_xfer *ti_sci_setup_one_xfer(struct ti_sci_info *info, return ERR_PTR(-ERANGE); } - info->seq = ~info->seq; xfer->tx_message.buf = buf; xfer->tx_message.len = tx_message_size; @@ -2452,6 +2450,12 @@ fail: return ret; } +static int ti_sci_cmd_rm_udmap_rx_flow_cfg_noop(const struct ti_sci_handle *handle, + const struct ti_sci_msg_rm_udmap_flow_cfg *params) +{ + return 0; +} + /** * ti_sci_cmd_set_fwl_region() - Request for configuring a firewall region * @handle: pointer to TI SCI handle @@ -2897,7 +2901,7 @@ static __maybe_unused int ti_sci_dm_probe(struct udevice *dev) udmap_ops = &ops->rm_udmap_ops; udmap_ops->tx_ch_cfg = ti_sci_cmd_rm_udmap_tx_ch_cfg; udmap_ops->rx_ch_cfg = ti_sci_cmd_rm_udmap_rx_ch_cfg; - udmap_ops->rx_flow_cfg = ti_sci_cmd_rm_udmap_rx_flow_cfg; + udmap_ops->rx_flow_cfg = ti_sci_cmd_rm_udmap_rx_flow_cfg_noop; return ret; } diff --git a/drivers/firmware/ti_sci_static_data.h b/drivers/firmware/ti_sci_static_data.h index 9662bd95f28..3370f80231d 100644 --- a/drivers/firmware/ti_sci_static_data.h +++ b/drivers/firmware/ti_sci_static_data.h @@ -85,7 +85,7 @@ static struct ti_sci_resource_static_data rm_static_data[] = { #endif /* CONFIG_SOC_K3_J721S2 */ #if IS_ENABLED(CONFIG_SOC_K3_AM625) || IS_ENABLED(CONFIG_SOC_K3_AM62A7) || \ - IS_ENABLED(CONFIG_SOC_K3_AM62P5) + IS_ENABLED(CONFIG_SOC_K3_AM62P5) || IS_ENABLED(CONFIG_SOC_K3_J722S) static struct ti_sci_resource_static_data rm_static_data[] = { /* BC channels */ { |