diff options
author | Tom Rini <trini@ti.com> | 2014-05-22 18:38:19 (GMT) |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-05-22 18:38:19 (GMT) |
commit | 4d16f67e7ba1a69929b55852f1a274c457a0db27 (patch) | |
tree | df2e1e39cd0a9b9d73c8ecf203c45b7e993d18dd /include | |
parent | f6ed9d50949eb290744bf7606e30763582e2d44b (diff) | |
parent | 1a897668ac33c57ca76f47cb940ec32b405e90dd (diff) | |
download | u-boot-fsl-qoriq-4d16f67e7ba1a69929b55852f1a274c457a0db27.tar.xz |
Merge branch 'fpga' of git://www.denx.de/git/u-boot-microblaze
Diffstat (limited to 'include')
-rw-r--r-- | include/configs/GEN860T.h | 1 | ||||
-rw-r--r-- | include/configs/MVBC_P.h | 1 | ||||
-rw-r--r-- | include/configs/MVBLM7.h | 1 | ||||
-rw-r--r-- | include/configs/MVSMR.h | 1 | ||||
-rw-r--r-- | include/configs/alpr.h | 1 | ||||
-rw-r--r-- | include/configs/astro_mcf5373l.h | 1 | ||||
-rw-r--r-- | include/configs/balloon3.h | 1 | ||||
-rw-r--r-- | include/configs/coreboot.h | 1 | ||||
-rw-r--r-- | include/configs/grsim.h | 1 | ||||
-rw-r--r-- | include/configs/grsim_leon2.h | 1 | ||||
-rw-r--r-- | include/configs/iocon.h | 3 | ||||
-rw-r--r-- | include/configs/mt_ventoux.h | 1 | ||||
-rw-r--r-- | include/configs/omap3_mvblx.h | 1 | ||||
-rw-r--r-- | include/configs/x600.h | 1 | ||||
-rw-r--r-- | include/configs/zynq-common.h | 4 | ||||
-rw-r--r-- | include/fpga.h | 20 | ||||
-rw-r--r-- | include/xilinx.h | 8 |
17 files changed, 43 insertions, 5 deletions
diff --git a/include/configs/GEN860T.h b/include/configs/GEN860T.h index 2822a08..fd6c976 100644 --- a/include/configs/GEN860T.h +++ b/include/configs/GEN860T.h @@ -219,6 +219,7 @@ #define CONFIG_CMD_ELF #define CONFIG_CMD_DATE #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_MII #define CONFIG_CMD_BEDBUG diff --git a/include/configs/MVBC_P.h b/include/configs/MVBC_P.h index 036396c..1ab2b3d 100644 --- a/include/configs/MVBC_P.h +++ b/include/configs/MVBC_P.h @@ -89,6 +89,7 @@ #define CONFIG_CMD_SDRAM #define CONFIG_CMD_PCI #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_I2C #undef CONFIG_WATCHDOG diff --git a/include/configs/MVBLM7.h b/include/configs/MVBLM7.h index 27c2fa0..1ee4d7c 100644 --- a/include/configs/MVBLM7.h +++ b/include/configs/MVBLM7.h @@ -267,6 +267,7 @@ #define CONFIG_CMD_PCI #define CONFIG_CMD_I2C #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_USB #define CONFIG_DOS_PARTITION diff --git a/include/configs/MVSMR.h b/include/configs/MVSMR.h index ad15506..27f730d 100644 --- a/include/configs/MVSMR.h +++ b/include/configs/MVSMR.h @@ -74,6 +74,7 @@ #define CONFIG_CMD_CACHE #define CONFIG_CMD_DHCP #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_I2C #define CONFIG_CMD_MII #define CONFIG_CMD_NET diff --git a/include/configs/alpr.h b/include/configs/alpr.h index 7849b22..2782e55 100644 --- a/include/configs/alpr.h +++ b/include/configs/alpr.h @@ -222,6 +222,7 @@ #define CONFIG_CMD_DHCP #define CONFIG_CMD_EEPROM #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_I2C #undef CONFIG_CMD_LOADB #undef CONFIG_CMD_LOADS diff --git a/include/configs/astro_mcf5373l.h b/include/configs/astro_mcf5373l.h index d875753..fa64a68 100644 --- a/include/configs/astro_mcf5373l.h +++ b/include/configs/astro_mcf5373l.h @@ -88,6 +88,7 @@ #define CONFIG_CMD_LOADS #define CONFIG_CMD_LOADB #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMDLINE_EDITING #define CONFIG_SYS_HUSH_PARSER diff --git a/include/configs/balloon3.h b/include/configs/balloon3.h index 5228ba6..2f5a660 100644 --- a/include/configs/balloon3.h +++ b/include/configs/balloon3.h @@ -54,6 +54,7 @@ #undef CONFIG_CMD_IMLS #define CONFIG_CMD_USB #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #undef CONFIG_LCD /* diff --git a/include/configs/coreboot.h b/include/configs/coreboot.h index d1d732f..a1a63a0 100644 --- a/include/configs/coreboot.h +++ b/include/configs/coreboot.h @@ -167,6 +167,7 @@ #define CONFIG_CMD_ECHO #undef CONFIG_CMD_FLASH #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_GPIO #define CONFIG_CMD_IMI #undef CONFIG_CMD_IMLS diff --git a/include/configs/grsim.h b/include/configs/grsim.h index 556c749..1e089a9 100644 --- a/include/configs/grsim.h +++ b/include/configs/grsim.h @@ -53,6 +53,7 @@ #define CONFIG_CMD_DIAG #define CONFIG_CMD_ECHO /* echo arguments */ #define CONFIG_CMD_FPGA /* FPGA configuration Support */ +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_IRQ #define CONFIG_CMD_ITEST /* Integer (and string) test */ #define CONFIG_CMD_LOADB /* loadb */ diff --git a/include/configs/grsim_leon2.h b/include/configs/grsim_leon2.h index 8be9898..66194a8 100644 --- a/include/configs/grsim_leon2.h +++ b/include/configs/grsim_leon2.h @@ -51,6 +51,7 @@ #define CONFIG_CMD_DIAG #define CONFIG_CMD_ECHO /* echo arguments */ #define CONFIG_CMD_FPGA /* FPGA configuration Support */ +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_IRQ #define CONFIG_CMD_ITEST /* Integer (and string) test */ #define CONFIG_CMD_LOADB /* loadb */ diff --git a/include/configs/iocon.h b/include/configs/iocon.h index f36c2a3..79c4736 100644 --- a/include/configs/iocon.h +++ b/include/configs/iocon.h @@ -62,7 +62,8 @@ * Commands additional to the ones defined in amcc-common.h */ #define CONFIG_CMD_CACHE -#define CONFIG_CMD_FPGAD +#define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #undef CONFIG_CMD_EEPROM /* diff --git a/include/configs/mt_ventoux.h b/include/configs/mt_ventoux.h index e7afd07..01e395a 100644 --- a/include/configs/mt_ventoux.h +++ b/include/configs/mt_ventoux.h @@ -49,6 +49,7 @@ * FPGA */ #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_FPGA #define CONFIG_FPGA_XILINX #define CONFIG_FPGA_SPARTAN3 diff --git a/include/configs/omap3_mvblx.h b/include/configs/omap3_mvblx.h index 8d11010..a3dcb15 100644 --- a/include/configs/omap3_mvblx.h +++ b/include/configs/omap3_mvblx.h @@ -127,6 +127,7 @@ #define CONFIG_CMD_DHCP #define CONFIG_CMD_PING #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_SYS_I2C #define CONFIG_SYS_OMAP24_I2C_SPEED 100000 diff --git a/include/configs/x600.h b/include/configs/x600.h index 7405419..eae85d6 100644 --- a/include/configs/x600.h +++ b/include/configs/x600.h @@ -107,6 +107,7 @@ #define CONFIG_CMD_DHCP #define CONFIG_CMD_ENV #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK #define CONFIG_CMD_GPIO #define CONFIG_CMD_I2C #define CONFIG_CMD_MEMORY diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h index 731e69b..9763245 100644 --- a/include/configs/zynq-common.h +++ b/include/configs/zynq-common.h @@ -191,6 +191,10 @@ #define CONFIG_FPGA_XILINX #define CONFIG_FPGA_ZYNQPL #define CONFIG_CMD_FPGA +#define CONFIG_CMD_FPGA_LOADMK +#define CONFIG_CMD_FPGA_LOADP +#define CONFIG_CMD_FPGA_LOADBP +#define CONFIG_CMD_FPGA_LOADFS /* Open Firmware flat tree */ #define CONFIG_OF_LIBFDT diff --git a/include/fpga.h b/include/fpga.h index 15e603a..914024c 100644 --- a/include/fpga.h +++ b/include/fpga.h @@ -35,13 +35,29 @@ typedef struct { /* typedef fpga_desc */ void *devdesc; /* real device descriptor */ } fpga_desc; /* end, typedef fpga_desc */ +typedef struct { /* typedef fpga_desc */ + unsigned int blocksize; + char *interface; + char *dev_part; + char *filename; + int fstype; +} fpga_fs_info; + +typedef enum { + BIT_FULL = 0, + BIT_PARTIAL, +} bitstream_type; /* root function definitions */ extern void fpga_init(void); extern int fpga_add(fpga_type devtype, void *desc); extern int fpga_count(void); -extern int fpga_load(int devnum, const void *buf, size_t bsize); -extern int fpga_loadbitstream(int devnum, char *fpgadata, size_t size); +extern int fpga_load(int devnum, const void *buf, size_t bsize, + bitstream_type bstype); +extern int fpga_fsload(int devnum, const void *buf, size_t size, + fpga_fs_info *fpga_fsinfo); +extern int fpga_loadbitstream(int devnum, char *fpgadata, size_t size, + bitstream_type bstype); extern int fpga_dump(int devnum, const void *buf, size_t bsize); extern int fpga_info(int devnum); extern const fpga_desc *const fpga_validate(int devnum, const void *buf, diff --git a/include/xilinx.h b/include/xilinx.h index 9801267..aebcb3b 100644 --- a/include/xilinx.h +++ b/include/xilinx.h @@ -45,16 +45,20 @@ typedef struct { /* typedef xilinx_desc */ } xilinx_desc; /* end, typedef xilinx_desc */ struct xilinx_fpga_op { - int (*load)(xilinx_desc *, const void *, size_t); + int (*load)(xilinx_desc *, const void *, size_t, bitstream_type); + int (*loadfs)(xilinx_desc *, const void *, size_t, fpga_fs_info *); int (*dump)(xilinx_desc *, const void *, size_t); int (*info)(xilinx_desc *); }; /* Generic Xilinx Functions *********************************************************************/ -int xilinx_load(xilinx_desc *desc, const void *image, size_t size); +int xilinx_load(xilinx_desc *desc, const void *image, size_t size, + bitstream_type bstype); int xilinx_dump(xilinx_desc *desc, const void *buf, size_t bsize); int xilinx_info(xilinx_desc *desc); +int xilinx_loadfs(xilinx_desc *desc, const void *buf, size_t bsize, + fpga_fs_info *fpga_fsinfo); /* Board specific implementation specific function types *********************************************************************/ |