AD4630-24
Recommended for New Designs
The AD4630-24/AD4632-24 are two-channel, simultaneous sampling, Easy Driveâ„¢, 2 MSPS or 500 kSPS successive approximation register (SAR) analog-to-digital...
Datasheet
AD4630-24 on Analog.com
NathanT - Moved from Precision ADCs to FPGA Reference Designs. Post date updated from Thursday, May 30, 2024 9:16 PM UTC to Monday, June 10, 2024 10:43 AM UTC to reflect the move.
Hi chaii ,
Can you give us more details on what exactly is not working, and what & how you tested? To have an overall idea of what has been done so far.
What branch did you use? I'm asking for both repos.
What files did you upload onto the SD card?
Also if you can post the contents that the command dmesg is printing. This command should be run in the terminal connected to your Zedboard.
Best regards,
Iulia
Hi,
If you are using the main branch from hdl. You should also use the main from Linux.
Andrei
Hi,
Here is a guide on how to build the HDL system_top.xsa, needed by the build_zynq_boot_bin.sh build_boot_bin.sh script to generate the BOOT.BIN.
https://analogdevicesinc.github.io/hdl/user_guide/build_hdl.html#building-an-amd-project
As my colleague said, if you used the main branch from HDL, you should use the main branch on Linux as well. This means you need to build the uImage from main branch, like this: https://wiki.analog.com/resources/tools-software/linux-build/generic/zynq. You don't take it from zynq-common folder from SD card.
If you changed the device tree, then that one you need to build as well, to create the .dtb file. Here is an example: https://wiki.analog.com/resources/tools-software/linux-build/generic/zynq#build_the_devicetree_fcmomms2345
Best regards,
iulia
I also didn't see where the build_zynq_boot_bin.sh script is that was referenced. I'm using Vivado/Vitis v2021.2
You're right; the name is build_boot_bin.sh. I got a bit confused and mixed the name (because for Zynq UltraScale is build_zynqmp_boot_bin.sh). I corrected my previous reply.
The steps you're describing, they're good, except for steps 4 and 7.
4. Download u-boot-xlnx
Did you use our repo? https://github.com/analogdevicesinc/u-boot-xlnx
7. continue running commands to build u-boot.elf- make distclean- make xilinx_zynq_virt_defconfig- export DEVICE_TREE="zync-zc702"- make
Replace the commands you said, with these:
make distclean
make zynq_zc702_defconfig
make
What FPGA are you using? Because if you use Zedboard, you need to replace the above command with make zynq_zed_defconfig
About the Linux files (devicetree.dtb and uImage) where did you take them from?
And I want to mention again this:
As my colleague said, if you used the main branch from HDL, you should use the main branch on Linux as well. This means you need to build the uImage from main branch, like this: https://wiki.analog.com/resources/tools-software/linux-build/generic/zynq. You don't take it from zynq-common folder from SD card.
If you changed the device tree, then that one you need to build as well, to create the .dtb file. Here is an example: https://wiki.analog.com/resources/tools-software/linux-build/generic/zynq#build_the_devicetree_fcmomms2345
Best regards,
Iulia
Yes, I'm using your repo here: https://github.com/analogdevicesinc/u-boot-xlnx
I am using a Zedboard. But when I run "make zynq_zed_deconfig" I get the following error:
***
*** Can't find default configuration "arch/../configs/zynq_zed_deconfig"!
***
make[1]: *** [scripts/kconfig/Makefile:96: zynq_zed_deconfig] Error 1
make: *** [Makefile:586: zynq_zed_deconfig] Error 2
For the uImage, I was following the steps at the top of this page: https://wiki.analog.com/resources/tools-software/linux-build/generic/zynq
Can you please confirm how I should be generating the .dtb and uImage files?
Thanks
But when I run "make zynq_zed_deconfig"
It is defconfig. You missed the F.
See the below screenshot on how I built the defconfig file:
Then when running "make", it succeeds for me, after printing lots of messages which I can't upload in a screenshot here.
git clone https://github.com/analogdevicesinc/linux.git
cd linux/
source $PATH_to_Xilinx/Xilinx/Vitis/$Vitis_version/settings64.sh
export ARCH=arm
export CROSS_COMPILE="arm-linux-gnueabihf-"
make zynq_xcomm_adv7511_defconfig
make -j5 UIMAGE_LOADADDR=0x8000 uImage
make zynq-zed-adv7511-ad4630-24.dtb (if this is how your dts file is named)
Then as you said, copy the uImage (and not Image!) from arch/arm/boot and .dtb file from arch/arm/boot/dts into the BOOT partition of the SD card. The .dtb file you rename it as devicetree.dtb
Did you do these steps?
I did add the source and export lines to my .bashrc and ran source in the terminal for those to take effect.
I ran without the typo and get the following results.
make distclean
CLEAN scripts/basic
CLEAN scripts/kconfig
make zynq_zed_defconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
YACC scripts/kconfig/zconf.tab.c
LEX scripts/kconfig/zconf.lex.c
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
***
*** Can't find default configuration "arch/../configs/zynq_zed_defconfig"!
***
make[1]: *** [scripts/kconfig/Makefile:96: zynq_zed_defconfig] Error 1
make: *** [Makefile:586: zynq_zed_defconfig] Error 2
I also reran "make distclean" and tried rerunning with "zynq_xcomm_adv7511_defconfig", here's the output:
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
YACC scripts/kconfig/zconf.tab.c
LEX scripts/kconfig/zconf.lex.c
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
***
*** Can't find default configuration "arch/../configs/zynq_zed_defconfig"!
***
make[1]: *** [scripts/kconfig/Makefile:96: zynq_zed_defconfig] Error 1
make: *** [Makefile:586: zynq_zed_defconfig] Error 2
I looked at the config files here: https://github.com/analogdevicesinc/u-boot-xlnx/tree/master/configs
I don't see anything that mentions zed or xcomm. Is there a branch other than the main branch that I should be using? Or another config?
Ok, I see you're mixing up the repos and commands.
I'm sorry for not being clear enough, I confused you with the other make command of a defconfig file.
I edited my response above for clarity, and added a screenshot.
I don't see anything that mentions zed or xcomm.
Best regards,
Iulia
Ok, thanks for clarifying. I think I'm on the right track.
I was able to run the following commands without any errors, "make zynq_zed_defconfig", "make"
However, I don't see the boot folder in the path /arc/arm/boot generated. I do get some warnings on running both commands, so I'm not sure if that is having an impact. for example when I run "make zynq_zed_defconfig" I get:
In file included from scripts/kconfig/zconf.tab.c:2468:
scripts/kconfig/confdata.c:774:20: warning: ‘.tmpconfig.’ directive writing 11 bytes into a region of size between 1 and 4097 [-Wformat-overflow=]
774 | sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid());
| ^~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:867,
from scripts/kconfig/zconf.tab.c:82:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output between 13 and 4119 bytes into a destination of size 4097
36 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37 | __bos (__s), __fmt, __va_arg_pack ());
And when running "make" I get:
include/linux/log2.h:19:1: warning: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Wattributes]
19 | int ____ilog2_NaN(void);
Do I need to run additional steps to generate the uImage nad dtb file?
Do I need to run additional steps to generate the uImage nad dtb file?
No. Exactly those steps that I have showed you.