diff options
Diffstat (limited to 'drivers/fpga/fpga-mgr.c')
-rw-r--r-- | drivers/fpga/fpga-mgr.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/fpga/fpga-mgr.c b/drivers/fpga/fpga-mgr.c index 79ce2eea44db..f0a69d3e60a5 100644 --- a/drivers/fpga/fpga-mgr.c +++ b/drivers/fpga/fpga-mgr.c | |||
@@ -53,10 +53,12 @@ int fpga_mgr_buf_load(struct fpga_manager *mgr, struct fpga_image_info *info, | |||
53 | /* | 53 | /* |
54 | * Call the low level driver's write_init function. This will do the | 54 | * Call the low level driver's write_init function. This will do the |
55 | * device-specific things to get the FPGA into the state where it is | 55 | * device-specific things to get the FPGA into the state where it is |
56 | * ready to receive an FPGA image. | 56 | * ready to receive an FPGA image. The low level driver only gets to |
57 | * see the first initial_header_size bytes in the buffer. | ||
57 | */ | 58 | */ |
58 | mgr->state = FPGA_MGR_STATE_WRITE_INIT; | 59 | mgr->state = FPGA_MGR_STATE_WRITE_INIT; |
59 | ret = mgr->mops->write_init(mgr, info, buf, count); | 60 | ret = mgr->mops->write_init(mgr, info, buf, |
61 | min(mgr->mops->initial_header_size, count)); | ||
60 | if (ret) { | 62 | if (ret) { |
61 | dev_err(dev, "Error preparing FPGA for writing\n"); | 63 | dev_err(dev, "Error preparing FPGA for writing\n"); |
62 | mgr->state = FPGA_MGR_STATE_WRITE_INIT_ERR; | 64 | mgr->state = FPGA_MGR_STATE_WRITE_INIT_ERR; |