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: Alan Tull <atull@opensource.altera.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
061c97d13f
Коммит
42d5ec9547
|
@ -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 {
|
||||||
* @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;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Загрузка…
Ссылка в новой задаче