Commit 42d5ec95 authored by Alan Tull's avatar Alan Tull Committed by Greg Kroah-Hartman

fpga: add config complete timeout

Adding timeout for maximum allowed time for FPGA to go to
operating mode after a FPGA region has been programmed.
Signed-off-by: default avatarAlan Tull <atull@opensource.altera.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 061c97d1
...@@ -385,6 +385,9 @@ static int fpga_region_notify_pre_apply(struct fpga_region *region, ...@@ -385,6 +385,9 @@ static int fpga_region_notify_pre_apply(struct fpga_region *region,
of_property_read_u32(nd->overlay, "region-freeze-timeout-us", of_property_read_u32(nd->overlay, "region-freeze-timeout-us",
&info->disable_timeout_us); &info->disable_timeout_us);
of_property_read_u32(nd->overlay, "config-complete-timeout-us",
&info->config_complete_timeout_us);
/* If FPGA was externally programmed, don't specify firmware */ /* If FPGA was externally programmed, don't specify firmware */
if ((info->flags & FPGA_MGR_EXTERNAL_CONFIG) && firmware_name) { if ((info->flags & FPGA_MGR_EXTERNAL_CONFIG) && firmware_name) {
pr_err("error: specified firmware and external-fpga-config"); pr_err("error: specified firmware and external-fpga-config");
......
...@@ -77,11 +77,14 @@ enum fpga_mgr_states { ...@@ -77,11 +77,14 @@ enum fpga_mgr_states {
* @flags: boolean flags as defined above * @flags: boolean flags as defined above
* @enable_timeout_us: maximum time to enable traffic through bridge (uSec) * @enable_timeout_us: maximum time to enable traffic through bridge (uSec)
* @disable_timeout_us: maximum time to disable traffic through bridge (uSec) * @disable_timeout_us: maximum time to disable traffic through bridge (uSec)
* @config_complete_timeout_us: maximum time for FPGA to switch to operating
* status in the write_complete op.
*/ */
struct fpga_image_info { struct fpga_image_info {
u32 flags; u32 flags;
u32 enable_timeout_us; u32 enable_timeout_us;
u32 disable_timeout_us; u32 disable_timeout_us;
u32 config_complete_timeout_us;
}; };
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment