ZedBoard Quick start

https://media.githubusercontent.com/media/analogdevicesinc/documentation/main/docs/solutions/reference-designs/ad9467_fmc_250ebz/images/ad9467_zedboard_setup.png

All the products described on this page include ESD (electrostatic discharge) sensitive devices. Electrostatic charges as high as 4000V readily accumulate on the human body or test equipment and can discharge without detection. Although the boards feature ESD protection circuitry, permanent damage may occur on devices subjected to high-energy electrostatic discharges. Therefore, proper ESD precautions are recommended to avoid performance degradation or loss of functionality. This includes removing static charge on external equipment, cables, or antennas before connecting to the device.

This guide provides quick instructions on how to setup the EVAL-AD9467 on:

Using Linux as software

Necessary files

The following files are needed for the system to boot:

  • HDL boot image: BOOT.BIN

  • Linux Kernel image: uImage

  • Linux device tree: devicetree.dtb

They can either be taken from the SD card – already generated by us, or you can build them manually.

In the following sections, we explain how to take them from the SD card.

Instructions on how to manually build the boot files from source can be found here:

Required Software

  • SD Card 16GB imaged with Kuiper (check out that guide on how to do it, then come back to this section)

  • A UART terminal (Putty/Tera Term/Minicom, etc.) with baud rate 115200 (8N1)

  • Scopy v2.0 or later (must contain the IIO plugin)

Required Hardware

  • AMD Xilinx ZedBoard

  • EVAL-AD9467 FMC evaluation board

  • SD card with at least 16GB of memory

  • Micro-USB cable (UART)

  • LAN cable (Ethernet, optional)

  • (Optional) USB keyboard & mouse and a HDMI compatible monitor

  • Clock source (250 MHz, 16 dBm, 50 Ω)

  • Analog signal source with appropriate filter

More details as to why you need these, can be found at Prerequisites.

Testing

Creating the setup

Follow the steps in this order, to avoid damaging the components:

  1. On the ZedBoard, set the boot mode jumpers to SD card boot

    https://media.githubusercontent.com/media/analogdevicesinc/documentation/main/docs/solutions/reference-designs/images/zed_sw.png https://media.githubusercontent.com/media/analogdevicesinc/documentation/main/docs/solutions/reference-designs/ad9467_fmc_250ebz/images/ad9467_table1.png
  2. Insert the SD Card into ZedBoard SD Card Interface Connector (J12)

  3. Plug the AD9467-FMC-250EBZ to ZedBoard FMC Connector (J1)

  4. On the AD9467-FMC-250EBZ board:

    • Provide a clean, low jitter 250 MHz clock source to connector J201 (set amplitude to 16 dBm)

    • Use SMA male cable for connecting the clock source

    • Provide an analog input signal to connector J100

    https://media.githubusercontent.com/media/analogdevicesinc/documentation/main/docs/solutions/reference-designs/ad9467_fmc_250ebz/images/ad9467_connections.jpg
  5. Connect a Micro-USB cable from your PC to the ZedBoard UART port (J14)

  6. Connect Ethernet cable from your router/switch to the Ethernet port on the FPGA board.

  7. Connect a 12V power supply to ZedBoard barrel jack (J20)

  8. Turn on the power switch on the ZedBoard (SW8) - Green Power LED (LD13) should illuminate - After several seconds, the blue Done LED (LD12) should illuminate

  9. Open a terminal emulator (PuTTY, Tera Term, etc.) with the following settings:

    • Serial line: <ZedBoard COM Port Number>

    • Speed (baud): 115200

    https://media.githubusercontent.com/media/analogdevicesinc/documentation/main/docs/solutions/reference-designs/images/putty_connect.png
  • For finding the COM port of your device Device Manager -> Ports(COM & LPT)

Boot messages

The following is what is printed in the serial console after boot:

::

[ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.12.0-27098-g298669e57d37 (serban@HYB-dxRedMxsORC) (arm-amd-linux-gnueabi-gcc.real (GCC) 13.3.0, GNU ld (GNU Binutils) 2.42.0.20240723) #8 SMP PREEMPT Mon Mar 16 09:45:44 EET 2026 [ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: Xilinx Zynq ZED [ 0.000000] OF: fdt: earlycon: stdout-path /amba@0/uart@E0001000 not found [ 0.000000] Memory policy: Data cache writealloc [ 0.000000] cma: Reserved 128 MiB at 0x16800000 on node -1 [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] HighMem empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] percpu: Embedded 12 pages/cpu s17356 r8192 d23604 u49152 [ 0.000000] pcpu-alloc: s17356 r8192 d23604 u49152 alloc=12*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [ 0.000000] Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlycon rootfstype=ext4 rootwait clk_ignore_unused cpuidle.off=1 [ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear) [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 131072 [ 0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1 [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2 [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] efuse mapped to (ptrval) [ 0.000000] slcr mapped to (ptrval) [ 0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000 [ 0.000000] L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000 [ 0.000000] L2C-310 erratum 769419 enabled [ 0.000000] L2C-310 enabling early BRESP for Cortex-A9 [ 0.000000] L2C-310 full line of zeros enabled for Cortex-A9 [ 0.000000] L2C-310 ID prefetch enabled, offset 1 lines [ 0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled [ 0.000000] L2C-310 cache controller enabled, 8 ways, 512 kB [ 0.000000] L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001 [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. [ 0.000000] zynq_clock_init: clkc starts at (ptrval) [ 0.000000] Zynq clock init [ 0.000002] sched_clock: 64 bits at 167MHz, resolution 6ns, wraps every 4398046511103ns [ 0.000023] clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x26703d7dd8, max_idle_ns: 440795208065 ns [ 0.000055] Switching to timer-based delay loop, resolution 6ns [ 0.000447] Console: colour dummy device 80x30 [ 0.000482] Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666) [ 0.000498] CPU: Testing write buffer coherency: ok [ 0.000539] CPU0: Spectre v2: using BPIALL workaround [ 0.000547] pid_max: default: 32768 minimum: 301 [ 0.000720] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.000737] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.001527] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 [ 0.070373] Setting up static identity map for 0x100000 - 0x100060 [ 0.070609] rcu: Hierarchical SRCU implementation. [ 0.070616] rcu: Max phase no-delay instances is 1000. [ 0.080222] smp: Bringing up secondary CPUs … [ 0.120558] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 [ 0.120579] CPU1: Spectre v2: using BPIALL workaround [ 0.120742] smp: Brought up 1 node, 2 CPUs [ 0.120756] SMP: Total of 2 processors activated (666.66 BogoMIPS). [ 0.120767] CPU: All CPU(s) started in SVC mode. [ 0.120909] Memory: 359492K/524288K available (13312K kernel code, 907K rwdata, 10948K rodata, 1024K init, 496K bss, 32460K reserved, 131072K cma-reserved, 0K highmem) [ 0.121457] devtmpfs: initialized [ 0.126574] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 [ 0.126835] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.126860] futex hash table entries: 512 (order: 3, 32768 bytes, linear) [ 0.133136] pinctrl core: initialized pinctrl subsystem [ 0.134456] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.136649] DMA: preallocated 256 KiB pool for atomic coherent allocations [ 0.137800] thermal_sys: Registered thermal governor ‘step_wise’ [ 0.142197] platform axi: Fixed dependency cycle(s) with /axi/interrupt-controller@f8f01000 [ 0.145843] platform replicator: Fixed dependency cycle(s) with /axi/etb@f8801000 [ 0.145956] amba f8801000.etb: Fixed dependency cycle(s) with /replicator [ 0.146206] platform replicator: Fixed dependency cycle(s) with /axi/tpiu@f8803000 [ 0.146327] amba f8803000.tpiu: Fixed dependency cycle(s) with /replicator [ 0.146591] platform replicator: Fixed dependency cycle(s) with /axi/funnel@f8804000 [ 0.146686] amba f8804000.funnel: Fixed dependency cycle(s) with /axi/ptm@f889d000 [ 0.146708] amba f8804000.funnel: Fixed dependency cycle(s) with /axi/ptm@f889c000 [ 0.146727] amba f8804000.funnel: Fixed dependency cycle(s) with /replicator [ 0.146986] amba f8804000.funnel: Fixed dependency cycle(s) with /axi/ptm@f889c000 [ 0.147082] amba f889c000.ptm: Fixed dependency cycle(s) with /axi/funnel@f8804000 [ 0.147335] amba f8804000.funnel: Fixed dependency cycle(s) with /axi/ptm@f889d000 [ 0.147430] amba f889d000.ptm: Fixed dependency cycle(s) with /axi/funnel@f8804000 [ 0.149455] platform 70e00000.lcd-controller: Fixed dependency cycle(s) with /fpga-axi@0/i2c@41600000/hdmi@39 [ 0.151993] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. [ 0.152008] hw-breakpoint: maximum watchpoint size is 4 bytes. [ 0.152989] e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 26, base_baud = 3125000) is a xuartps [ 0.153072] printk: legacy console [ttyPS0] enabled [ 0.617154] SCSI subsystem initialized [ 0.619876] usbcore: registered new interface driver usbfs [ 0.624151] usbcore: registered new interface driver hub [ 0.628198] usbcore: registered new device driver usb [ 0.632378] mc: Linux media interface: v0.10 [ 0.635400] videodev: Linux video capture interface: v2.00 [ 0.639660] pps_core: LinuxPPS API ver. 1 registered [ 0.643336] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.651192] PTP clock support registered [ 0.654136] jesd204: found 0 devices and 0 topologies [ 0.657968] FPGA manager framework [ 0.660335] Advanced Linux Sound Architecture Driver Initialized. [ 0.666853] clocksource: Switched to clocksource arm_global_timer [ 0.683860] NET: Registered PF_INET protocol family [ 0.687675] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.694851] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.701992] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.708493] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear) [ 0.715011] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear) [ 0.720990] TCP: Hash tables configured (established 4096 bind 4096) [ 0.726120] UDP hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.731393] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.737216] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 0.742189] RPC: Registered named UNIX socket transport module. [ 0.746838] RPC: Registered udp transport module. [ 0.750230] RPC: Registered tcp transport module. [ 0.753675] RPC: Registered tcp-with-tls transport module. [ 0.757851] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.764176] workingset: timestamp_bits=30 max_order=17 bucket_order=0 [ 0.770025] NFS: Registering the id_resolver key type [ 0.773840] Key type id_resolver registered [ 0.776713] Key type id_legacy registered [ 0.779451] nfs4filelayout_init: NFSv4 File Layout Driver Registering… [ 0.784861] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering… [ 0.791000] fuse: init (API version 7.41) [ 0.794143] io scheduler mq-deadline registered [ 0.797374] io scheduler kyber registered [ 0.800097] io scheduler bfq registered [ 0.803770] zynq-pinctrl 700.pinctrl: zynq pinctrl initialized [ 0.811131] ledtrig-cpu: registered to indicate activity on CPUs [ 0.819968] dma-pl330 f8003000.dma-controller: Loaded driver for PL330 DMAC-241330 [ 0.826318] dma-pl330 f8003000.dma-controller: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16 [ 0.845656] brd: module loaded [ 0.854456] loop: module loaded [ 0.856713] Registered mathworks_ip class [ 0.863051] spi-nor spi1.0: found s25fl256s1, expected n25q128a11 [ 0.868051] 5 fixed-partitions partitions found on MTD device spi1.0 [ 0.873133] Creating 5 MTD partitions on “spi1.0”: [ 0.876622] 0x000000000000-0x000000500000 : “boot” [ 0.881833] 0x000000500000-0x000000520000 : “bootenv” [ 0.887154] 0x000000520000-0x000000540000 : “config” [ 0.892397] 0x000000540000-0x000000fc0000 : “image” [ 0.897524] 0x000000fc0000-0x000002000000 : “spare” [ 0.903109] MACsec IEEE 802.1AE [ 0.906381] tun: Universal TUN/TAP device driver, 1.6 [ 0.930957] hwmon hwmon0: temp1_input not attached to any thermal zone [ 1.031175] macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 41 (00:0a:35:00:01:22) [ 1.040205] usbcore: registered new interface driver asix [ 1.044379] usbcore: registered new interface driver ax88179_178a [ 1.049197] usbcore: registered new interface driver cdc_ether [ 1.053770] usbcore: registered new interface driver net1080 [ 1.058153] usbcore: registered new interface driver cdc_subset [ 1.062813] usbcore: registered new interface driver zaurus [ 1.067113] usbcore: registered new interface driver cdc_ncm [ 1.071515] usbcore: registered new interface driver r8153_ecm [ 1.077638] usbcore: registered new interface driver uas [ 1.081716] usbcore: registered new interface driver usb-storage [ 1.086501] usbcore: registered new interface driver usbserial_generic [ 1.091763] usbserial: USB Serial support registered for generic [ 1.096490] usbcore: registered new interface driver ftdi_sio [ 1.100976] usbserial: USB Serial support registered for FTDI USB Serial Device [ 1.107020] usbcore: registered new interface driver upd78f0730 [ 1.111673] usbserial: USB Serial support registered for upd78f0730 [ 1.117500] ULPI transceiver vendor/product ID 0x0451/0x1507 [ 1.121881] Found TI TUSB1210 ULPI transceiver. [ 1.125032] ULPI integrity check: passed. [ 1.127905] ci_hdrc ci_hdrc.0: EHCI Host Controller [ 1.131531] ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 [ 1.150181] ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 [ 1.154499] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.12 [ 1.161498] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.167419] usb usb1: Product: EHCI Host Controller [ 1.171007] usb usb1: Manufacturer: Linux 6.12.0-27098-g298669e57d37 ehci_hcd [ 1.176837] usb usb1: SerialNumber: ci_hdrc.0 [ 1.180736] hub 1-0:1.0: USB hub found [ 1.183228] hub 1-0:1.0: 1 port detected [ 1.188617] i2c_dev: i2c /dev entries driver [ 1.192805] platform 70e00000.lcd-controller: Fixed dependency cycle(s) with /fpga-axi@0/i2c@41600000/hdmi@39 [ 1.201580] i2c 0-0039: Fixed dependency cycle(s) with /fpga-axi@0/lcd-controller@70e00000 [ 1.208814] adv7511 0-0039: supply avdd not found, using dummy regulator [ 1.214402] adv7511 0-0039: supply dvdd not found, using dummy regulator [ 1.219884] adv7511 0-0039: supply pvdd not found, using dummy regulator [ 1.225356] adv7511 0-0039: supply bgvdd not found, using dummy regulator [ 1.230914] adv7511 0-0039: supply dvdd-3v not found, using dummy regulator [ 1.245850] at24 1-0050: supply vcc not found, using dummy regulator [ 1.251771] at24 1-0050: 256 byte 24c02 EEPROM, writable, 1 bytes/write [ 1.258162] gspca_main: v2.14.0 registered [ 1.261086] usbcore: registered new interface driver uvcvideo [ 1.268706] cdns-wdt f8005000.watchdog: Xilinx Watchdog Timer with timeout 10s [ 1.274976] Xilinx Zynq CpuIdle Driver started [ 1.278115] failed to register cpuidle driver [ 1.281459] sdhci: Secure Digital Host Controller Interface driver [ 1.286333] sdhci: Copyright(c) Pierre Ossman [ 1.289380] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.294274] clocksource: ttc_clocksource: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 537538477 ns [ 1.302447] timer #0 at (ptrval), irq=47 [ 1.305372] hid: raw HID events driver (C) Jiri Kosina [ 1.312139] usbcore: registered new interface driver usbhid [ 1.316449] usbhid: USB HID core driver [ 1.319397] SPI driver fb_seps525 has no spi_device_id for syncoam,seps525 [ 1.337851] ad9517 spi0.1: AD9517 successfully initialized [ 1.339469] mmc0: SDHCI controller on e0100000.mmc [e0100000.mmc] using ADMA [ 1.346326] armv7-pmu f8891000.pmu: hw perfevents: no interrupt-affinity property, guessing. [ 1.355382] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 (8000003f) counters available [ 1.363626] axi_sysid 45000000.sysid: AXI System ID core version (1.01.a) found [ 1.369818] axi_sysid 45000000.sysid: [ad9467_fmc] on [zed] git branch <main> git <28f0bcb19e7f1bc7e0d0056954fd3251194b387c> clean [2026-03-16 07:56:29] UTC [ 1.383476] fpga_manager fpga0: Xilinx Zynq FPGA Manager registered [ 1.389482] usbcore: registered new interface driver snd-usb-audio [ 1.397707] axi-i2s 77600000.i2s: probed, capture enabled, playback enabled [ 1.404244] NET: Registered PF_INET6 protocol family [ 1.409391] Segment Routing with IPv6 [ 1.411819] In-situ OAM (IOAM) with IPv6 [ 1.414523] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.419953] NET: Registered PF_PACKET protocol family [ 1.424012] NET: Registered PF_IEEE802154 protocol family [ 1.428201] Key type dns_resolver registered [ 1.431441] Registering SWP/SWPB emulation handler [ 1.441726] mmc0: new high speed SDHC card at address 0001 [ 1.456802] mmcblk0: mmc0:0001 00000 29.1 GiB [ 1.462286] mmcblk0: p1 p2 p3 [ 1.463416] of-fpga-region fpga-region: FPGA Region probed [ 1.469337] [drm] Initialized axi_hdmi_drm 1.0.0 for 70e00000.lcd-controller on minor 0 [ 1.478323] axi-hdmi 70e00000.lcd-controller: [drm] Cannot find any crtc or sizes [ 1.486361] axi-hdmi 70e00000.lcd-controller: [drm] Cannot find any crtc or sizes [ 1.577928] - [ 1.577940] - [ 1.578207] - [ 1.578475] - [ 1.578744] - [ 1.579004] - [ 1.579265] - [ 1.579525] - [ 1.579786] - [ 1.580046] - [ 1.580307] - [ 1.580567] - [ 1.580827] - [ 1.581088] - [ 1.581348] - [ 1.581608] - [ 1.581869] - [ 1.582129] - [ 1.582390] - [ 1.582650] - [ 1.582910] - [ 1.583171] - [ 1.583431] - [ 1.583692] - [ 1.583952] - [ 1.584212] - [ 1.584473] - [ 1.584733] - [ 1.584994] - [ 1.585254] o [ 1.585514] o [ 1.585697] o [ 1.586478] - [ 1.586482] - [ 1.586747] - [ 1.587019] - [ 1.587285] - [ 1.587554] o [ 1.587815] o [ 1.588075] o [ 1.588336] o [ 1.588596] o [ 1.588856] o [ 1.589117] o [ 1.589377] o [ 1.589637] | [ 1.589907] o [ 1.590167] o [ 1.590427] o [ 1.590688] o [ 1.590948] o [ 1.591209] o [ 1.591469] o [ 1.591729] o [ 1.591990] - [ 1.592250] - [ 1.592432] - [ 1.592771] - [ 1.593031] - [ 1.593292] - [ 1.593552] - [ 1.593812] - [ 1.594073] - [ 1.594333] - [ 1.594594] INVERT IDELAY 0xd [ 1.597582] cf_axi_adc 44a00000.cf-ad9467-core-lpc: ADI AIM (10.03.x00) probed ADC AD9467 as MASTER [ 1.608986] debugfs: File ‘Capture’ in directory ‘dapm’ already present! [ 1.636832] input: gpio-keys as /devices/soc0/gpio-keys/input/input0 [ 1.642463] of_cfs_init [ 1.643639] of_cfs_init: OK [ 1.645388] clk: Not disabling unused clocks [ 1.648452] ALSA device list: [ 1.650131] #0: HDMI monitor [ 1.651883] #1: ZED ADAU1761 [ 1.962423] EXT4-fs (mmcblk0p2): recovery complete [ 1.967254] EXT4-fs (mmcblk0p2): mounted filesystem 675b84e0-16af-4fea-97ce-a01fc7c7f005 r/w with ordered data mode. Quota mode: disabled. [ 1.978478] VFS: Mounted root (ext4 filesystem) on device 179:2. [ 1.984257] devtmpfs: mounted [ 1.987560] Freeing unused kernel image (initmem) memory: 1024K [ 1.992933] Run /sbin/init as init process [ 1.995724] with arguments: [ 1.995732] /sbin/init [ 1.995739] with environment: [ 1.995747] HOME=/ [ 1.995754] TERM=linux [ 2.526915] systemd[1]: System time before build time, advancing clock. [ 2.564963] systemd[1]: Failed to look up module alias ‘autofs4’: Function not implemented [ 2.608632] systemd[1]: systemd 247.3-7+rpi1+deb11u6 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified) [ 2.631390] systemd[1]: Detected architecture arm. [ 2.658032] systemd[1]: Set hostname to <analog>. [ 4.559342] systemd[1]: /lib/systemd/system/plymouth-start.service:16: Unit configured to use KillMode=none. This is unsafe, as it disables systemd’s process lifecycle management for the service. Please update your service to use a safer KillMode=, such as ‘mixed’ or ‘control-group’. Support for KillMode=none is deprecated and will eventually be removed. [ 4.903747] systemd[1]: Queued start job for default target Graphical Interface. [ 6.896884] random: crng init done [ 6.899353] systemd[1]: system-getty.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling. [ 6.910439] systemd[1]: (This warning is only shown for the first unit using IP firewalling.) [ 6.918846] systemd[1]: Created slice system-getty.slice. [ 6.957974] systemd[1]: Created slice system-modprobe.slice. [ 6.987924] systemd[1]: Created slice system-serialx2dgetty.slice. [ 7.017903] systemd[1]: Created slice system-systemdx2dfsck.slice. [ 7.047601] systemd[1]: Created slice User and Session Slice. [ 7.077530] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 7.107483] systemd[1]: Condition check resulted in Arbitrary Executable File Formats File System Automount Point being skipped. [ 7.119213] systemd[1]: Reached target Slices. [ 7.137262] systemd[1]: Reached target Swap. [ 7.175299] systemd[1]: Listening on Syslog Socket. [ 7.207801] systemd[1]: Listening on fsck to fsckd communication Socket. [ 7.237429] systemd[1]: Listening on initctl Compatibility Named Pipe. [ 7.299676] systemd[1]: Condition check resulted in Journal Audit Socket being skipped. [ 7.310138] systemd[1]: Listening on Journal Socket (/dev/log). [ 7.338073] systemd[1]: Listening on Journal Socket. [ 7.407148] systemd[1]: Listening on udev Control Socket. [ 7.437815] systemd[1]: Listening on udev Kernel Socket. [ 7.478024] systemd[1]: Condition check resulted in Huge Pages File System being skipped. [ 7.485557] systemd[1]: Condition check resulted in POSIX Message Queue File System being skipped. [ 7.537401] systemd[1]: Mounting RPC Pipe File System… [ 7.560751] systemd[1]: Mounting Kernel Debug File System… [ 7.587669] systemd[1]: Condition check resulted in Kernel Trace File System being skipped. [ 7.595335] systemd[1]: Condition check resulted in Kernel Module supporting RPCSEC_GSS being skipped. [ 7.657778] systemd[1]: Starting Restore / save the current clock… [ 7.694658] systemd[1]: Starting Set the console keyboard layout… [ 7.727353] systemd[1]: Condition check resulted in Create list of static device nodes for the current kernel being skipped. [ 7.797944] systemd[1]: Starting Load Kernel Module configfs… [ 7.824538] systemd[1]: Starting Load Kernel Module drm… [ 7.867659] systemd[1]: Starting Load Kernel Module fuse… [ 7.891078] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped. [ 7.899377] systemd[1]: Condition check resulted in File System Check on Root Device being skipped. [ 7.913140] systemd[1]: Starting Journal Service… [ 7.962173] systemd[1]: Starting Load Kernel Modules… [ 7.999514] systemd[1]: Starting Remount Root and Kernel File Systems… [ 8.049520] systemd[1]: Starting Coldplug All udev Devices… [ 8.118981] systemd[1]: Mounted RPC Pipe File System. [ 8.141395] systemd[1]: Mounted Kernel Debug File System. [ 8.169444] systemd[1]: Finished Restore / save the current clock. [ 8.224818] systemd[1]: modprobe@configfs.service: Succeeded. [ 8.248139] systemd[1]: Finished Load Kernel Module configfs. [ 8.268835] systemd[1]: modprobe@drm.service: Succeeded. [ 8.273925] systemd[1]: Finished Load Kernel Module drm. [ 8.328764] systemd[1]: modprobe@fuse.service: Succeeded. [ 8.333930] systemd[1]: Finished Load Kernel Module fuse. [ 8.358216] systemd[1]: systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE [ 8.377583] systemd[1]: systemd-modules-load.service: Failed with result ‘exit-code’. [ 8.385208] systemd[1]: Failed to start Load Kernel Modules. [ 8.447769] systemd[1]: Started Journal Service. [ 8.957774] EXT4-fs (mmcblk0p2): re-mounted 675b84e0-16af-4fea-97ce-a01fc7c7f005 r/w. Quota mode: disabled. [ 9.156326] systemd-journald[96]: Received client request to flush runtime journal. [ 9.188521] systemd-journald[96]: File /var/log/journal/e78604e8422c4dab8f361c14d26f7cb2/system.journal corrupted or uncleanly shut down, renaming and replacing. [ 17.180219] Adding 102396k swap on /var/swap. Priority:-2 extents:1 across:102396k SS [ 17.487406] macb e000b000.ethernet eth0: PHY [e000b000.ethernet-ffffffff:00] driver [Marvell 88E1510] (irq=POLL) [ 17.487441] macb e000b000.ethernet eth0: configuring for phy/rgmii-id link mode [ 19.238709] systemd-journald[96]: File /var/log/journal/e78604e8422c4dab8f361c14d26f7cb2/user-1000.journal corrupted or uncleanly shut down, renaming and replacing. [ 19.331061] ————[ cut here ]———— [ 19.331085] WARNING: CPU: 0 PID: 469 at drivers/gpu/drm/drm_file.c:312 drm_open_helper+0x144/0x148 [ 19.331127] Modules linked in: [ 19.331145] CPU: 0 UID: 0 PID: 469 Comm: Xorg Not tainted 6.12.0-27098-g298669e57d37 #8 [ 19.331165] Hardware name: Xilinx Zynq Platform [ 19.331175] Call trace: [ 19.331189] unwind_backtrace from show_stack+0x10/0x14 [ 19.331251] show_stack from dump_stack_lvl+0x54/0x68 [ 19.331286] dump_stack_lvl from __warn+0x7c/0xe0 [ 19.331322] __warn from warn_slowpath_fmt+0x1b4/0x1bc [ 19.331359] warn_slowpath_fmt from drm_open_helper+0x144/0x148 [ 19.331395] drm_open_helper from drm_open+0x8c/0x130 [ 19.331422] drm_open from drm_stub_open+0xa4/0xc4 [ 19.331464] drm_stub_open from chrdev_open+0xac/0x1f4 [ 19.331497] chrdev_open from do_dentry_open+0x1cc/0x4b0 [ 19.331523] do_dentry_open from vfs_open+0x24/0xe4 [ 19.331549] vfs_open from path_openat+0xa24/0xf70 [ 19.331572] path_openat from do_filp_open+0x90/0x12c [ 19.331591] do_filp_open from do_sys_openat2+0xb4/0xe8 [ 19.331613] do_sys_openat2 from sys_openat+0x78/0xc4 [ 19.331640] sys_openat from ret_fast_syscall+0x0/0x54 [ 19.331664] Exception stack(0xe0c39fa8 to 0xe0c39ff0) [ 19.331683] 9fa0: 00273158 b6f4e2c0 ffffff9c 00262b38 000a0002 00000000 [ 19.331700] 9fc0: 00273158 b6f4e2c0 00262b18 00000142 00262b38 00000000 0020c000 00273400 [ 19.331715] 9fe0: b69fb000 beeeaad0 b69e5944 b69e5964 [ 19.331726] —[ end trace 0000000000000000 ]— [ 21.718170] macb e000b000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off [ 3451.142695] macb e000b000.ethernet eth0: Link is Down [ 3493.624793] macb e000b000.ethernet eth0: PHY [e000b000.ethernet-ffffffff:00] driver [Marvell 88E1510] (irq=POLL) [ 3493.624833] macb e000b000.ethernet eth0: configuring for phy/rgmii-id link mode [ 3495.725787] macb e000b000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off

Useful commands for the serial terminal

The below commands are to be run in the serial terminal connected to the FPGA.

To find out the IP of the FPGA board, run:

ifconfig

To see the IIO devices detected, run:

iio_info | grep iio:device
iio:device0: xadc
iio:device1: ad9517-4
iio:device2: cf-ad9467-core-lpc (buffer capable)

To power off the system, run:

poweroff

To reboot the system, run:

reboot

Important

Even though this is Linux, it uses a persistent file system. Care should be taken not to corrupt the file system – please shut down properly rather than just turning off the power switch.

About the IIO devices

The AD9467 ADC is handled by the cf-ad9467-core-lpc IIO device.