Lines Matching full:fpga
3 * FPGA Manager Core
12 #include <linux/fpga/fpga-mgr.h>
25 * fpga_image_info_alloc - Allocate a FPGA image info struct
49 * fpga_image_info_free - Free a FPGA image info struct
50 * @info: FPGA image info struct to free
70 * device-specific things to get the FPGA into the state where it is ready to
71 * receive an FPGA image. The low level driver only gets to see the first
88 dev_err(&mgr->dev, "Error preparing FPGA for writing\n"); in fpga_mgr_write_init_buf()
137 * After all the FPGA image has been written, do the device specific steps to
138 * finish and set the FPGA into operating mode.
148 dev_err(&mgr->dev, "Error after writing image data to FPGA\n"); in fpga_mgr_write_complete()
158 * fpga_mgr_buf_load_sg - load fpga from image in buffer from a scatter list
159 * @mgr: fpga manager
160 * @info: fpga image specific information
163 * Step the low level fpga manager through the device-specific steps of getting
164 * an FPGA ready to be configured, writing the image to it, then doing whatever
169 * This is the preferred entry point for FPGA programming, it does not require
184 /* Write the FPGA image to the FPGA. */ in fpga_mgr_buf_load_sg()
201 dev_err(&mgr->dev, "Error while writing image data to FPGA\n"); in fpga_mgr_buf_load_sg()
220 * Write the FPGA image to the FPGA. in fpga_mgr_buf_load_mapped()
225 dev_err(&mgr->dev, "Error while writing image data to FPGA\n"); in fpga_mgr_buf_load_mapped()
234 * fpga_mgr_buf_load - load fpga from image in buffer
235 * @mgr: fpga manager
236 * @info: fpga image info
237 * @buf: buffer contain fpga image
240 * Step the low level fpga manager through the device-specific steps of getting
241 * an FPGA ready to be configured, writing the image to it, then doing whatever
306 * fpga_mgr_firmware_load - request firmware and load to fpga
307 * @mgr: fpga manager
308 * @info: fpga image specific information
311 * Request an FPGA image using the firmware class, then write out to the FPGA.
346 * fpga_mgr_load - load FPGA from scatter/gather table, buffer, or firmware
347 * @mgr: fpga manager
348 * @info: fpga image information.
350 * Load the FPGA from an image which is indicated in @info. If successful, the
351 * FPGA ends up in operating mode.
373 /* requesting FPGA image from firmware */
377 /* Preparing FPGA to receive image */
381 /* Writing image to FPGA */
389 /* FPGA reports to be in normal operating mode */
469 * fpga_mgr_get - Given a device, get a reference to a fpga mgr.
470 * @dev: parent device that fpga mgr was registered with
472 * Return: fpga manager struct or IS_ERR() condition containing error code.
486 * of_fpga_mgr_get - Given a device node, get a reference to a fpga mgr.
490 * Return: fpga manager struct or IS_ERR() condition containing error code.
505 * fpga_mgr_put - release a reference to a fpga manager
506 * @mgr: fpga manager structure
516 * fpga_mgr_lock - Lock FPGA manager for exclusive use
517 * @mgr: fpga manager
519 * Given a pointer to FPGA Manager (from fpga_mgr_get() or
522 * program the FPGA. Likewise, the user should call fpga_mgr_unlock
523 * when done programming the FPGA.
530 dev_err(&mgr->dev, "FPGA manager is in use.\n"); in fpga_mgr_lock()
539 * fpga_mgr_unlock - Unlock FPGA manager after done programming
540 * @mgr: fpga manager
549 * fpga_mgr_create - create and initialize a FPGA manager struct
550 * @dev: fpga manager device from pdev
551 * @name: fpga manager name
552 * @mops: pointer to structure of fpga manager ops
553 * @priv: fpga manager private data
600 ret = dev_set_name(&mgr->dev, "fpga%d", id); in fpga_mgr_create()
616 * fpga_mgr_free - free a FPGA manager created with fpga_mgr_create()
617 * @mgr: fpga manager struct
634 * devm_fpga_mgr_create - create and initialize a managed FPGA manager struct
635 * @dev: fpga manager device from pdev
636 * @name: fpga manager name
637 * @mops: pointer to structure of fpga manager ops
638 * @priv: fpga manager private data
640 * This function is intended for use in a FPGA manager driver's probe function.
673 * fpga_mgr_register - register a FPGA manager
674 * @mgr: fpga manager struct
684 * from device. FPGA may be in reset mode or may have been programmed in fpga_mgr_register()
705 * fpga_mgr_unregister - unregister a FPGA manager
706 * @mgr: fpga manager struct
708 * This function is intended for use in a FPGA manager driver's remove function.
715 * If the low level driver provides a method for putting fpga into in fpga_mgr_unregister()
731 pr_info("FPGA manager framework\n"); in fpga_mgr_class_init()
750 MODULE_DESCRIPTION("FPGA manager framework");