29ea3386 | 01-Jul-2025 |
Ulf Hansson <ulf.hansson@linaro.org> |
firmware: xilinx: Use of_genpd_sync_state()
To make sure genpd tries to power off unused PM domains, let's call of_genpd_sync_state() from our own ->sync_state() callback.
Cc: Michal Simek <michal.
firmware: xilinx: Use of_genpd_sync_state()
To make sure genpd tries to power off unused PM domains, let's call of_genpd_sync_state() from our own ->sync_state() callback.
Cc: Michal Simek <michal.simek@amd.com> Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Colibri iMX8X Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> # TI AM62A,Xilinx ZynqMP ZCU106 Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20250701114733.636510-17-ulf.hansson@linaro.org
show more ...
|
10086a4f | 01-Jul-2025 |
Ulf Hansson <ulf.hansson@linaro.org> |
firmware: xilinx: Don't share zynqmp_pm_init_finalize()
As there no longer any users outside the zynqmp firmware driver of zynqmp_pm_init_finalize(), let's turn into a local static function.
Cc: Mi
firmware: xilinx: Don't share zynqmp_pm_init_finalize()
As there no longer any users outside the zynqmp firmware driver of zynqmp_pm_init_finalize(), let's turn into a local static function.
Cc: Michal Simek <michal.simek@amd.com> Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Colibri iMX8X Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> # TI AM62A,Xilinx ZynqMP ZCU106 Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20250701114733.636510-16-ulf.hansson@linaro.org
show more ...
|
55ed774d | 20-Sep-2024 |
Ronak Jain <ronak.jain@amd.com> |
firmware: xilinx: fix feature check logic for TF-A specific APIs
Currently, Linux is passing only API ID for feature of TF-A specific APIs but for feature check of TF-A specific APIs, TF-A is checki
firmware: xilinx: fix feature check logic for TF-A specific APIs
Currently, Linux is passing only API ID for feature of TF-A specific APIs but for feature check of TF-A specific APIs, TF-A is checking for Module ID + API ID as a result incorrect version is received for all TF-A specific APIs. So, fix feature check logic to pass valid arguments to get correct version.
Signed-off-by: Ronak Jain <ronak.jain@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20240920055546.2658783-1-ronak.jain@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
92fb7133 | 20-Sep-2024 |
Ronak Jain <ronak.jain@amd.com> |
firmware: xilinx: add support for new SMC call format
Added zynqmp_pm_invoke_fw_fn() to use new SMC format in which lower 12 bits of SMC id are fixed and firmware header is moved to subsequent SMC a
firmware: xilinx: add support for new SMC call format
Added zynqmp_pm_invoke_fw_fn() to use new SMC format in which lower 12 bits of SMC id are fixed and firmware header is moved to subsequent SMC arguments. The new SMC format supports full request and response buffers.
Added zynqmp_pm_get_sip_svc_version() to get SiP SVC version number to check if TF-A is newer or older and use the SMC format accordingly to handle backward compatibility.
Used new SMC format for PM_QUERY_DATA API as more response values are required in it.
Signed-off-by: Ronak Jain <ronak.jain@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20240920055501.2658642-1-ronak.jain@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
e8415a8a | 20-Sep-2024 |
Ronak Jain <ronak.jain@amd.com> |
firmware: xilinx: add a warning print for unsupported feature
As per the current code base, feature check API is used to check the version in zynqmp_pm_pinctrl_set_config() before requesting the fir
firmware: xilinx: add a warning print for unsupported feature
As per the current code base, feature check API is used to check the version in zynqmp_pm_pinctrl_set_config() before requesting the firmware, and if the expected version is not found then it will return an error. So now when the latest kernel tries to access the tri-state functionality with older firmware, observe failure prints during booting.
The failure prints, [ 1.204850] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: failed to set: pin 37 param 2 value 0 [ 2.699455] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: failed to set: pin 44 param 2 value 0 [ 2.708424] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: failed to set: pin 46 param 2 value 0 [ 2.717387] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: failed to set: pin 48 param 2 value 0
Now, these error prints mislead the user whether it is an actual failure or the feature itself is not there in the firmware. So, just to avoid confusion around this, add some debug prints before returning an error code. With that, it is easier to know whether it is an actual failure or the feature is unsupported.
Signed-off-by: Ronak Jain <ronak.jain@amd.com> Link: https://lore.kernel.org/r/20240920055410.2658465-1-ronak.jain@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
f33d6099 | 30-Aug-2024 |
Ronak Jain <ronak.jain@amd.com> |
firmware: xilinx: use u32 for reset ID in reset APIs
Refactors the reset handling mechanisms by replacing the reset ID's enum type with a u32. This update improves flexibility, allowing the reset ID
firmware: xilinx: use u32 for reset ID in reset APIs
Refactors the reset handling mechanisms by replacing the reset ID's enum type with a u32. This update improves flexibility, allowing the reset ID to accommodate a broader range of values, including those that may not fit into predefined enum values.
The use of u32 for reset ID enhances extensibility, especially for hardware platforms or features where more granular control of reset operations is required. By shifting to a general integer type, this change reduces constraints and simplifies integration with other system components that rely on non-enum-based reset IDs.
Signed-off-by: Ronak Jain <ronak.jain@amd.com> Link: https://lore.kernel.org/r/20240830100042.3163511-1-ronak.jain@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
show more ...
|
0c4b2255 | 19-Dec-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
firmware: xilinx: Export function to use in other module
Export zynqmp_pm_get_family_info() to access and find family information in other module.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@
firmware: xilinx: Export function to use in other module
Export zynqmp_pm_get_family_info() to access and find family information in other module.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231219055025.27570-2-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
b9ae9962 | 14-Dec-2023 |
Michal Simek <michal.simek@amd.com> |
firmware: xilinx: Remove zynqmp_pm_pinctrl_get_function()
There is no user for this interface that's why remove it.
Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/
firmware: xilinx: Remove zynqmp_pm_pinctrl_get_function()
There is no user for this interface that's why remove it.
Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/e52a415a004e28a43e6d08e9e22d9e8fef3737df.1702565618.git.michal.simek@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
5dac2a98 | 29-Nov-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
firmware: zynqmp: Add support to handle IPI CRC failure
Added new PM error code XST_PM_INVALID_CRC to handle CRC validation failure during IPI communication.
Co-developed-by: Naman Trivedi Manojbha
firmware: zynqmp: Add support to handle IPI CRC failure
Added new PM error code XST_PM_INVALID_CRC to handle CRC validation failure during IPI communication.
Co-developed-by: Naman Trivedi Manojbhai <naman.trivedimanojbhai@amd.com> Signed-off-by: Naman Trivedi Manojbhai <naman.trivedimanojbhai@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231129112713.22718-6-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
8c016c80 | 29-Nov-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
drivers: soc: xilinx: Fix error message on SGI registration failure
Failure to register SGI for firmware event notification is non-fatal error when feature is not supported by other modules such as
drivers: soc: xilinx: Fix error message on SGI registration failure
Failure to register SGI for firmware event notification is non-fatal error when feature is not supported by other modules such as Xen and TF-A. Add _info level log message for such special case.
Also add XST_PM_INVALID_VERSION error code and map it to -EOPNOSUPP Linux kernel error code. If feature is not supported or EEMI API version is mismatch, firmware can return XST_PM_INVALID_VERSION = 4 or XST_PM_NO_FEATURE = 19 error code.
Co-developed-by: Tanmay Shah <tanmay.shah@amd.com> Signed-off-by: Tanmay Shah <tanmay.shah@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231129112713.22718-5-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
a9d06184 | 29-Nov-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
firmware: xilinx: Register event manager driver
Use family code in order to register event manager driver for Versal and Versal NET platforms, instead of using compatible string.
Signed-off-by: Jay
firmware: xilinx: Register event manager driver
Use family code in order to register event manager driver for Versal and Versal NET platforms, instead of using compatible string.
Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231129112713.22718-4-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
f689a0ca | 29-Nov-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
firmware: xilinx: Expand feature check to support all PLM modules
To support feature check for all modules, append the module id of the API that is being checked to the feature check API so it could
firmware: xilinx: Expand feature check to support all PLM modules
To support feature check for all modules, append the module id of the API that is being checked to the feature check API so it could be routed to the target module for processing.
There is no need to check compatible string because the board information is taken via firmware interface.
Co-developed-by: Saeed Nowshadi <saeed.nowshadi@amd.com> Signed-off-by: Saeed Nowshadi <saeed.nowshadi@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231129112713.22718-3-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
f922b16a | 29-Nov-2023 |
Jay Buddhabhatti <jay.buddhabhatti@amd.com> |
firmware: xilinx: Update firmware call interface to support additional args
System-level platform management layer (do_fw_call()) has support for maximum of 5 arguments as of now (1 EEMI API ID + 4
firmware: xilinx: Update firmware call interface to support additional args
System-level platform management layer (do_fw_call()) has support for maximum of 5 arguments as of now (1 EEMI API ID + 4 command arguments). In order to support new EEMI PM_IOCTL IDs (Secure Read/Write), this support must be extended to support one additional argument, which results in a configuration of - 1 EEMI API ID + 5 command arguments.
Update zynqmp_pm_invoke_fn() and do_fw_call() with this new definition containing variable arguments. As a result, update all the references to pm invoke function with the updated definition.
Co-developed-by: Izhar Ameer Shaikh <izhar.ameer.shaikh@amd.com> Signed-off-by: Izhar Ameer Shaikh <izhar.ameer.shaikh@amd.com> Signed-off-by: Jay Buddhabhatti <jay.buddhabhatti@amd.com> Link: https://lore.kernel.org/r/20231129112713.22718-2-jay.buddhabhatti@amd.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|