blob: 9c63c016f504591dfd88c88a030b3d084844239d [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Michal Simek15d654c2013-04-22 15:43:02 +02002/*
3 * (C) Copyright 2012-2013, Xilinx, Michal Simek
4 *
5 * (C) Copyright 2012
6 * Joe Hershberger <joe.hershberger@ni.com>
Michal Simek15d654c2013-04-22 15:43:02 +02007 */
8
9#ifndef _ZYNQPL_H_
10#define _ZYNQPL_H_
11
12#include <xilinx.h>
13
Michal Simek88dae412014-07-16 10:47:13 +020014#if defined(CONFIG_FPGA_ZYNQPL)
Michal Simek75fafac2014-03-13 13:07:57 +010015extern struct xilinx_fpga_op zynq_op;
Michal Simek88dae412014-07-16 10:47:13 +020016# define FPGA_ZYNQPL_OPS &zynq_op
17#else
18# define FPGA_ZYNQPL_OPS NULL
19#endif
Michal Simek15d654c2013-04-22 15:43:02 +020020
Michal Simek82c97022016-10-18 16:10:25 +020021#define XILINX_ZYNQ_7007S 0x3
Michal Simek15d654c2013-04-22 15:43:02 +020022#define XILINX_ZYNQ_7010 0x2
Michal Simek82c97022016-10-18 16:10:25 +020023#define XILINX_ZYNQ_7012S 0x1c
24#define XILINX_ZYNQ_7014S 0x8
Michal Simek0e91d3a2013-09-26 16:39:03 +020025#define XILINX_ZYNQ_7015 0x1b
Michal Simek15d654c2013-04-22 15:43:02 +020026#define XILINX_ZYNQ_7020 0x7
27#define XILINX_ZYNQ_7030 0xc
Siva Durga Prasad Paladugu77fc12c2014-11-25 15:29:54 +053028#define XILINX_ZYNQ_7035 0x12
Michal Simek15d654c2013-04-22 15:43:02 +020029#define XILINX_ZYNQ_7045 0x11
Michal Simek52f91b52013-06-17 13:54:07 +020030#define XILINX_ZYNQ_7100 0x16
Michal Simek15d654c2013-04-22 15:43:02 +020031
32/* Device Image Sizes */
Michal Simek82c97022016-10-18 16:10:25 +020033#define XILINX_XC7Z007S_SIZE 16669920/8
Michal Simek15d654c2013-04-22 15:43:02 +020034#define XILINX_XC7Z010_SIZE 16669920/8
Michal Simek82c97022016-10-18 16:10:25 +020035#define XILINX_XC7Z012S_SIZE 28085344/8
36#define XILINX_XC7Z014S_SIZE 32364512/8
Michal Simek0e91d3a2013-09-26 16:39:03 +020037#define XILINX_XC7Z015_SIZE 28085344/8
Michal Simek15d654c2013-04-22 15:43:02 +020038#define XILINX_XC7Z020_SIZE 32364512/8
39#define XILINX_XC7Z030_SIZE 47839328/8
Siva Durga Prasad Paladugu77fc12c2014-11-25 15:29:54 +053040#define XILINX_XC7Z035_SIZE 106571232/8
Michal Simek15d654c2013-04-22 15:43:02 +020041#define XILINX_XC7Z045_SIZE 106571232/8
Michal Simek52f91b52013-06-17 13:54:07 +020042#define XILINX_XC7Z100_SIZE 139330784/8
Michal Simek15d654c2013-04-22 15:43:02 +020043
44/* Descriptor Macros */
Michal Simek82c97022016-10-18 16:10:25 +020045#define XILINX_XC7Z007S_DESC(cookie) \
46{ xilinx_zynq, devcfg, XILINX_XC7Z007S_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
47 "7z007s" }
48
Michal Simek15d654c2013-04-22 15:43:02 +020049#define XILINX_XC7Z010_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020050{ xilinx_zynq, devcfg, XILINX_XC7Z010_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
51 "7z010" }
Michal Simek15d654c2013-04-22 15:43:02 +020052
Michal Simek82c97022016-10-18 16:10:25 +020053#define XILINX_XC7Z012S_DESC(cookie) \
54{ xilinx_zynq, devcfg, XILINX_XC7Z012S_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
55 "7z012s" }
56
57#define XILINX_XC7Z014S_DESC(cookie) \
58{ xilinx_zynq, devcfg, XILINX_XC7Z014S_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
59 "7z014s" }
60
Michal Simek0e91d3a2013-09-26 16:39:03 +020061#define XILINX_XC7Z015_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020062{ xilinx_zynq, devcfg, XILINX_XC7Z015_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
63 "7z015" }
Michal Simek0e91d3a2013-09-26 16:39:03 +020064
Michal Simek15d654c2013-04-22 15:43:02 +020065#define XILINX_XC7Z020_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020066{ xilinx_zynq, devcfg, XILINX_XC7Z020_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
67 "7z020" }
Michal Simek15d654c2013-04-22 15:43:02 +020068
69#define XILINX_XC7Z030_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020070{ xilinx_zynq, devcfg, XILINX_XC7Z030_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
71 "7z030" }
Michal Simek15d654c2013-04-22 15:43:02 +020072
Siva Durga Prasad Paladugu77fc12c2014-11-25 15:29:54 +053073#define XILINX_XC7Z035_DESC(cookie) \
74{ xilinx_zynq, devcfg, XILINX_XC7Z035_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
75 "7z035" }
76
Michal Simek15d654c2013-04-22 15:43:02 +020077#define XILINX_XC7Z045_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020078{ xilinx_zynq, devcfg, XILINX_XC7Z045_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
79 "7z045" }
Michal Simek15d654c2013-04-22 15:43:02 +020080
Michal Simek52f91b52013-06-17 13:54:07 +020081#define XILINX_XC7Z100_DESC(cookie) \
Michal Simek88dae412014-07-16 10:47:13 +020082{ xilinx_zynq, devcfg, XILINX_XC7Z100_SIZE, NULL, cookie, FPGA_ZYNQPL_OPS, \
83 "7z100" }
Michal Simek52f91b52013-06-17 13:54:07 +020084
Michal Simek15d654c2013-04-22 15:43:02 +020085#endif /* _ZYNQPL_H_ */