2020-04-16 10:15:28 +02:00
|
|
|
# Copyright (C) 2017-2020 The Project X-Ray Authors.
|
|
|
|
|
#
|
|
|
|
|
# Use of this source code is governed by a ISC-style
|
|
|
|
|
# license that can be found in the LICENSE file or at
|
|
|
|
|
# https://opensource.org/licenses/ISC
|
|
|
|
|
#
|
|
|
|
|
# SPDX-License-Identifier: ISC
|
2018-12-03 21:00:06 +01:00
|
|
|
FUZDIR=$(shell pwd)
|
2020-02-18 18:00:34 +01:00
|
|
|
BUILD_FOLDER=build_${XRAY_PART}
|
|
|
|
|
BUILD_DIR=$(FUZDIR)/$(BUILD_FOLDER)
|
2019-01-25 19:37:23 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES=
|
2020-02-18 18:00:34 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES += iob/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += iob_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += ioi/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += monitor/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += bram/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += bram_block/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += bram_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += clb/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += clb_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += cfg/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += dsp/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += fifo_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += cfg_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += monitor_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += clk_hrow/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += clk_bufg/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += hclk_cmt/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += pll/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
|
|
|
|
TILEGRID_TDB_DEPENDENCIES += hclk_ioi/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
2019-01-15 11:16:01 +01:00
|
|
|
GENERATE_FULL_ARGS=
|
2019-01-08 19:03:44 +01:00
|
|
|
|
2019-01-09 14:22:38 +01:00
|
|
|
ifeq (${XRAY_DATABASE}, zynq7)
|
2019-01-28 07:30:53 +01:00
|
|
|
# Zynq7 only
|
2020-02-18 18:00:34 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES += ps7_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
2019-01-28 07:30:53 +01:00
|
|
|
else
|
|
|
|
|
# Artix7/Kintex7 only
|
2020-02-18 18:00:34 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES += mmcm/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
2019-01-08 19:03:44 +01:00
|
|
|
endif
|
2018-12-03 21:00:06 +01:00
|
|
|
|
2019-01-28 07:52:52 +01:00
|
|
|
ifeq (${XRAY_DATABASE}, kintex7)
|
2020-02-18 18:00:34 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES += orphan_int_column/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
2019-01-28 07:52:52 +01:00
|
|
|
else
|
|
|
|
|
# Disable DSP INT fuzzer on kintex7. It doesn't work, and isn't required.
|
2020-02-18 18:00:34 +01:00
|
|
|
TILEGRID_TDB_DEPENDENCIES += dsp_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
|
2019-01-28 07:52:52 +01:00
|
|
|
endif
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
BASICDB_TILEGRID=$(BUILD_FOLDER)/basicdb/${XRAY_PART}/tilegrid.json
|
2020-01-17 12:16:18 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
database: $(BUILD_FOLDER)/tilegrid.json
|
2017-10-17 13:20:40 +02:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
pushdb: $(BUILD_FOLDER)/tilegrid.json
|
|
|
|
|
cp $(BUILD_FOLDER)/tilegrid.json ${XRAY_FAMILY_DIR}/${XRAY_PART}/tilegrid.json
|
2018-10-24 08:23:13 +02:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
$(BUILD_FOLDER)/tiles/tiles.txt:
|
|
|
|
|
bash generate.sh $(BUILD_FOLDER)/tiles tiles
|
2018-12-03 21:00:06 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
${BASICDB_TILEGRID}: generate.py $(BUILD_FOLDER)/tiles/tiles.txt
|
|
|
|
|
mkdir -p $(BUILD_FOLDER)/basicdb/${XRAY_PART}
|
|
|
|
|
cd $(BUILD_FOLDER) && python3 ${FUZDIR}/generate.py \
|
|
|
|
|
--tiles $(BUILD_DIR)/tiles/tiles.txt \
|
|
|
|
|
--pin_func $(BUILD_DIR)/tiles/pin_func.txt \
|
2020-01-16 12:11:22 +01:00
|
|
|
--out ${BUILD_DIR}/basicdb/${XRAY_PART}/tilegrid.json
|
2018-12-03 21:00:06 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
clb/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-25 19:37:23 +01:00
|
|
|
cd clb && $(MAKE)
|
2018-12-03 21:00:06 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
clb_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-25 19:37:23 +01:00
|
|
|
cd clb_int && $(MAKE)
|
2018-12-12 23:39:29 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
cfg/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-05-30 11:10:10 +02:00
|
|
|
cd cfg && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
iob/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2018-12-12 23:39:29 +01:00
|
|
|
cd iob && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
iob_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-25 22:01:34 +01:00
|
|
|
cd iob_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
ioi/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-06-25 09:17:11 +02:00
|
|
|
cd ioi && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
mmcm/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2018-12-19 00:42:23 +01:00
|
|
|
cd mmcm && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
pll/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2018-12-19 01:06:41 +01:00
|
|
|
cd pll && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
ps7_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-10 10:00:49 +01:00
|
|
|
cd ps7_int && $(MAKE)
|
2019-01-08 19:03:44 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
monitor/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2018-12-29 17:05:16 +01:00
|
|
|
cd monitor && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
monitor_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-02-07 18:35:22 +01:00
|
|
|
cd monitor_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
bram/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-25 19:37:23 +01:00
|
|
|
cd bram && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
bram_block/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-25 19:37:23 +01:00
|
|
|
cd bram_block && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
bram_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-26 05:07:39 +01:00
|
|
|
cd bram_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
dsp/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-26 16:59:40 +01:00
|
|
|
cd dsp && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
dsp_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-27 15:57:50 +01:00
|
|
|
cd dsp_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
fifo_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-01-28 01:17:31 +01:00
|
|
|
cd fifo_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
cfg_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-02-07 18:35:22 +01:00
|
|
|
cd cfg_int && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
orphan_int_column/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-02-08 00:00:00 +01:00
|
|
|
cd orphan_int_column && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
clk_hrow/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-02-08 22:00:54 +01:00
|
|
|
cd clk_hrow && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
clk_bufg/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-02-12 19:54:09 +01:00
|
|
|
cd clk_bufg && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
hclk_cmt/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-03-15 14:47:46 +01:00
|
|
|
cd hclk_cmt && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
hclk_ioi/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
|
2019-06-27 14:14:07 +02:00
|
|
|
cd hclk_ioi && $(MAKE)
|
|
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
$(BUILD_FOLDER)/tilegrid_tdb.json: add_tdb.py $(TILEGRID_TDB_DEPENDENCIES)
|
2019-01-25 19:37:23 +01:00
|
|
|
python3 add_tdb.py \
|
2020-01-17 12:16:18 +01:00
|
|
|
--fn-in ${BASICDB_TILEGRID} \
|
2020-02-18 18:00:34 +01:00
|
|
|
--fn-out $(BUILD_FOLDER)/tilegrid_tdb.json
|
2019-01-25 19:37:23 +01:00
|
|
|
|
2020-02-18 18:00:34 +01:00
|
|
|
$(BUILD_FOLDER)/tilegrid.json: generate_full.py $(BUILD_FOLDER)/tilegrid_tdb.json
|
|
|
|
|
cd $(BUILD_FOLDER) && python3 ${FUZDIR}/generate_full.py \
|
2019-01-28 07:30:53 +01:00
|
|
|
--json-in tilegrid_tdb.json --json-out ${BUILD_DIR}/tilegrid.json
|
2018-01-04 13:49:50 +01:00
|
|
|
run:
|
2020-02-18 20:53:01 +01:00
|
|
|
find -name $(BUILD_FOLDER) -exec rm -rf {} \;
|
|
|
|
|
find -name run.${XRAY_PART}.ok -delete
|
2018-01-04 13:49:50 +01:00
|
|
|
$(MAKE) database
|
|
|
|
|
$(MAKE) pushdb
|
2020-02-18 18:00:34 +01:00
|
|
|
touch run.${XRAY_PART}.ok
|
2018-01-04 13:49:50 +01:00
|
|
|
|
2017-10-16 01:20:16 +02:00
|
|
|
clean:
|
2020-02-18 18:00:34 +01:00
|
|
|
rm -rf build_* run.*.ok
|
2019-01-25 19:37:23 +01:00
|
|
|
cd clb && $(MAKE) clean
|
|
|
|
|
cd clb_int && $(MAKE) clean
|
2019-05-30 11:10:10 +02:00
|
|
|
cd cfg && $(MAKE) clean
|
2018-12-18 03:38:49 +01:00
|
|
|
cd iob && $(MAKE) clean
|
2019-01-25 22:01:34 +01:00
|
|
|
cd iob_int && $(MAKE) clean
|
2019-06-25 09:17:11 +02:00
|
|
|
cd ioi && $(MAKE) clean
|
2018-12-19 00:42:23 +01:00
|
|
|
cd mmcm && $(MAKE) clean
|
2018-12-19 01:06:41 +01:00
|
|
|
cd pll && $(MAKE) clean
|
2019-01-10 10:00:49 +01:00
|
|
|
cd ps7_int && $(MAKE) clean
|
2019-01-25 19:37:23 +01:00
|
|
|
cd bram && $(MAKE) clean
|
|
|
|
|
cd bram_block && $(MAKE) clean
|
2019-01-26 05:07:39 +01:00
|
|
|
cd bram_int && $(MAKE) clean
|
2019-01-26 16:59:40 +01:00
|
|
|
cd dsp && $(MAKE) clean
|
2019-01-27 15:57:50 +01:00
|
|
|
cd dsp_int && $(MAKE) clean
|
2019-01-28 01:17:31 +01:00
|
|
|
cd fifo_int && $(MAKE) clean
|
2019-01-25 19:37:23 +01:00
|
|
|
cd monitor && $(MAKE) clean
|
2019-02-07 18:35:22 +01:00
|
|
|
cd monitor_int && $(MAKE) clean
|
|
|
|
|
cd cfg_int && $(MAKE) clean
|
2019-02-08 00:00:00 +01:00
|
|
|
cd orphan_int_column && $(MAKE) clean
|
2019-02-08 22:00:54 +01:00
|
|
|
cd clk_hrow && $(MAKE) clean
|
2019-02-12 19:54:09 +01:00
|
|
|
cd clk_bufg && $(MAKE) clean
|
2019-03-15 14:47:46 +01:00
|
|
|
cd hclk_cmt && $(MAKE) clean
|
2019-06-27 14:14:07 +02:00
|
|
|
cd hclk_ioi && $(MAKE) clean
|
2017-10-16 01:20:16 +02:00
|
|
|
|
2018-01-04 13:49:50 +01:00
|
|
|
.PHONY: database pushdb clean run
|
2017-10-16 01:20:16 +02:00
|
|
|
|