# Failed to mount /boot ( PYNQ v2.6)

**URL:** <https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733>\
**Category:** Support\
**Created:** [June 8, 2021, 3:10pm UTC](https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733 "2021-06-08T15:10:36Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![rawuser](https://avatars.discourse-cdn.com/v4/letter/r/74df32/32.png) [@rawuser](https://discuss.pynq.io/u/rawuser)\
**Post date:** [June 8, 2021, 3:10pm UTC](https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733/1 "2021-06-08T15:10:36Z")

</div>

I built my own image (pynq v2.6) with prebuilt image ( PYNQ rootfs aarch64 v2.6 )  
for a custom board with Zynq Ultrascale device

The SD boot failed with the message: end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)  
The problem was the worng Kernel command line, thanks to @yunqu, I could modify Device tree to give correct Kernel command line:

> root=/dev/mmcblk1p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=1 uio\_pdrv\_genirq.of\_id=“generic-uio” clk\_ignore\_unused

(root=/dev/mmcblk0p2 to root=/dev/mmcblk1p2)

so now rootfs is mounted but I still get error:

> [FAILED] Failed to mount /boot

And I repetedly get the following msg:

> You are in emergency mode. After logging in, type "journalctl -xbGive root password for maintenance  
> (or press Control-D to continue):

How should I approch or what should I modify to boot up correctly?

Here is the boot log :

> Board: Xilinx ZynqMP  
> DRAM: 1023 MiB  
> PMUFW: v1.1  
> EL Level: EL2  
> Chip ID: zu2cg  
> NAND: 0 MiB  
> MMC: mmc@ff160000: 0, mmc@ff170000: 1  
> Loading Environment from FAT… \*\*\* Warning - bad CRC, using default environment
> 
> In: serial@ff000000  
> Out: serial@ff000000  
> Err: serial@ff000000  
> Bootmode: SD\_MODE1  
> Reset reason: EXTERNAL  
> Net:  
> ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 3, interface rgmii-id  
> eth0: ethernet@ff0e0000  
> Hit any key to stop autoboot: 0  
> switch to partitions #0, OK  
> mmc1 is current device  
> Scanning mmc 1:1…  
> Found U-Boot script /boot.scr  
> 1636 bytes read in 12 ms (132.8 KiB/s)  
> Executing script at 20000000  
> 17530740 bytes read in 1482 ms (11.3 MiB/s)  
> Loading kernel from FIT Image at 10000000 …  
> Using ‘conf@1’ configuration  
> Trying ‘kernel@0’ kernel subimage  
> Description: Linux Kernel  
> Type: Kernel Image  
> Compression: uncompressed  
> Data Start: 0x100000d4  
> Data Size: 17494528 Bytes = 16.7 MiB  
> Architecture: AArch64  
> OS: Linux  
> Load Address: 0x00080000  
> Entry Point: 0x00080000  
> Hash algo: sha1  
> Hash value: 200d617e01ef20d7474ee4736f29212ca4ab223e  
> Verifying Hash Integrity … sha1+ OK  
> Loading fdt from FIT Image at 10000000 …  
> Using ‘conf@1’ configuration  
> Trying ‘fdt@0’ fdt subimage  
> Description: Flattened Device Tree blob  
> Type: Flat Device Tree  
> Compression: uncompressed  
> Data Start: 0x110af3cc  
> Data Size: 34386 Bytes = 33.6 KiB  
> Architecture: AArch64  
> Hash algo: sha1  
> Hash value: f0b6c37888c6991417077c2fb7b26a09001d5b28  
> Verifying Hash Integrity … sha1+ OK  
> Booting using the fdt blob at 0x110af3cc  
> Loading Kernel Image  
> Loading Device Tree to 000000000fff4000, end 000000000ffff651 … OK
> 
> Starting kernel …
> 
> [0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]  
> [0.000000] Linux version 5.4.0-xilinx-v2020.1 (oe-user@oe-host) (gcc version 9.2.0 (GCC)) #1 SM P Mon May 31 07:50:48 UTC 2021  
> [0.000000] Machine model: Enclustra MA-XU3-2CG-1E-D10 SOM  
> [0.000000] efi: Getting EFI parameters from FDT:  
> [0.000000] efi: UEFI not found.  
> [0.000000] cma: Reserved 128 MiB at 0x0000000037c00000  
> [0.000000] psci: probing for conduit method from DT.  
> [0.000000] psci: PSCIv1.1 detected in firmware.  
> [0.000000] psci: Using standard PSCI v0.2 function IDs  
> [0.000000] psci: MIGRATE\_INFO\_TYPE not supported.  
> [0.000000] psci: SMC Calling Convention v1.1  
> [0.000000] percpu: Embedded 22 pages/cpu s50392 r8192 d31528 u90112  
> [0.000000] Detected VIPT I-cache on CPU0  
> [0.000000] CPU features: detected: ARM erratum 845719  
> [0.000000] Speculative Store Bypass Disable mitigation not required  
> [0.000000] Built 1 zonelists, mobility grouping on. Total pages: 257796  
> [0.000000] Kernel command line: root=/dev/mmcblk1p2 rw earlyprintk rootfstype=ext4 rootwait dev tmpfs.mount=1 uio\_pdrv\_genirq.of\_id=“generic-uio” clk\_ignore\_unused  
> [0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)  
> [0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)

.  
.  
.

> [5.755961] cdns-i2c ff020000.i2c: 100 kHz mmio ff020000 irq 31  
> [5.794283] mmc0: SDHCI controller on ff160000.mmc [ff160000.mmc] using ADMA 64-bit  
> [5.833753] mmc1: SDHCI controller on ff170000.mmc [ff170000.mmc] using ADMA 64-bit  
> [5.844488] rtc\_zynqmp ffa60000.rtc: setting system clock to 1970-01-01T00:00:39 UTC (39)  
> [5.852681] of\_cfs\_init  
> [5.855141] of\_cfs\_init: OK  
> [5.858082] cfg80211: Loading compiled-in X.509 certificates for regulatory database  
> [5.898914] mmc1: new high speed SDHC card at address 5048  
> [5.904975] mmcblk1: mmc1:5048 SD16G 14.4 GiB  
> [5.915540] mmcblk1: p1 p2  
> [5.918440] mmc0: new HS200 MMC card at address 0001  
> [5.924408] mmcblk0: mmc0:0001 IB2916 14.6 GiB  
> [5.929208] mmcblk0boot0: mmc0:0001 IB2916 partition 1 4.00 MiB  
> [5.935396] mmcblk0boot1: mmc0:0001 IB2916 partition 2 4.00 MiB  
> [5.941462] mmcblk0rpmb: mmc0:0001 IB2916 partition 3 4.00 MiB, chardev (244:0)  
> [5.949860] mmcblk0: p1  
> [6.003321] cfg80211: Loaded X.509 cert ‘sforshee: 00b28ddf47aef9cea7’  
> [6.009860] clk: Not disabling unused clocks  
> [6.014126] ALSA device list:  
> [6.017091] No soundcards found.  
> [6.020900] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2  
> [6.029513] cfg80211: failed to load regulatory.db  
> [6.084661] [drm] Cannot find any crtc or sizes  
> [6.137146] EXT4-fs (mmcblk1p2): recovery complete  
> [6.143025] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)  
> [6.151161] VFS: Mounted root (ext4 filesystem) on device 179:2.  
> [6.158393] devtmpfs: mounted  
> [6.161742] Freeing unused kernel memory: 768K  
> [6.166260] Run /sbin/init as init process  
> [7.138906] systemd[1]: System time before build time, advancing clock.  
> [7.170932] systemd[1]: systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMO D -IDN2 +IDN -PCRE2 default-hierarchy=hybrid)  
> [7.192503] systemd[1]: Detected architecture arm64.
> 
> ## Welcome to PYNQ Linux, based on Ubuntu 18.04!
> 
> [7.265020] systemd[1]: Set hostname to .  
> [8.245869] random: systemd: uninitialized urandom read (16 bytes read)  
> [8.252562] systemd[1]: Reached target System Time Synchronized.  
> [OK] Reached target System Time Synchronized.  
> [8.268770] random: systemd: uninitialized urandom read (16 bytes read)  
> [8.276069] systemd[1]: Created slice System Slice.  
> [OK] Created slice System Slice.  
> [8.292746] random: systemd: uninitialized urandom read (16 bytes read)  
> [8.299577] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.  
> [OK] Listening on /dev/initctl Compatibility Named Pipe.  
> [8.321151] systemd[1]: Created slice User and Session Slice.  
> [OK] Created slice User and Session Slice.  
> [8.337091] systemd[1]: Created slice system-serial\x2dgetty.slice.  
> [OK] Created slice system-serial\x2dgetty.slice.  
> [8.352686] systemd[1]: Reached target Remote File Systems.  
> [OK] Reached target Remote File Systems.  
> [8.368960] systemd[1]: Listening on Journal Socket (/dev/log).  
> [OK] Listening on Journal Socket (/dev/log).  
> [OK] Listening on udev Kernel Socket.  
> [OK] Listening on udev Control Socket.  
> [OK] Created slice system-getty.slice.  
> [OK] Reached target Swap.  
> [OK] Listening on Journal Audit Socket.  
> [OK] Reached target Slices.  
> [OK] Started Dispatch Password Requests to Console Directory Watch.  
> [OK] Listening on Syslog Socket.  
> [OK] Started Forward Password Requests to Wall Directory Watch.  
> [OK] Reached target Local Encrypted Volumes.  
> [OK] Listening on Journal Socket.  
> Mounting Huge Pages File System…  
> Starting Journal Service…  
> Starting Remount Root and Kernel File Systems…  
> Starting Restore / save the current clock…  
> Mounting Kernel Debug File System…  
> Starting Load Kernel Modules…  
> Starting Create Static Device Nodes in /dev…  
> Starting udev Coldplug all Devices…  
> Mounting POSIX Message Queue File System…  
> Starting Nameserver information manager…  
> [OK] Started ntp-systemd-netif.path.  
> [OK] Started Journal Service.  
> [OK] Mounted Huge Pages File System.  
> [OK] Started Remount Root and Kernel File Systems.  
> [OK] Started Restore / save the current clock.  
> [OK] Mounted Kernel Debug File System.  
> [OK] Started Load Kernel Modules.  
> [OK] Mounted POSIX Message Queue File System.  
> [OK] Started Create Static Device Nodes in /dev.  
> Starting Apply Kernel Variables…  
> Mounting Kernel Configuration File System…  
> [OK] Reached target Local File Systems (Pre).  
> Starting udev Kernel Device Manager…  
> Starting Load/Save Random Seed…  
> Starting Flush Journal to Persistent Storage…  
> [OK] Started Nameserver information manager.  
> [OK] Started Apply Kernel Variables.  
> [OK] Mounted Kernel Configuration File System.  
> [OK] Started Load/Save Random Seed.  
> [OK] Reached target Network (Pre).  
> [OK] Started udev Coldplug all Devices.  
> [OK] Started Flush Journal to Persistent Storage.  
> [OK] Started udev Kernel Device Manager.  
> [10.015586] zocl-drm amba:zyxclmm\_drm: IRQ index 0 not found  
> [OK] Found device /dev/ttyPS0.  
> [OK] Found device /dev/mmcblk0p1.  
> [OK] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.  
> Mounting /boot…  
> [11.189724] FAT-fs (mmcblk0p1): bogus number of reserved sectors  
> [FAILED] Failed to mount /boot.  
> See ‘systemctl status boot.mount’ for details.  
> [DEPEND] Dependency failed for Unattended Upgrades Shutdown.  
> [DEPEND] Dependency failed for Local File Systems.  
> [OK] Started ifup for eth0.  
> Starting Enable support for additional executable binary formats…  
> Starting Raise network interfaces…  
> [OK] Closed Syslog Socket.  
> [OK] Reached target Login Prompts.  
> [OK] Reached target Timers.  
> Starting Create Volatile Files and Directories…  
> [OK] Started Emergency Shell.  
> [OK] Reached target Emergency Mode.  
> [OK] Reached target Paths.  
> [OK] Reached target Sockets.  
> [OK] Started Enable support for additional executable binary formats.  
> [OK] Started Create Volatile Files and Directories.  
> Mounting /boot…  
> [11.473348] FAT-fs (mmcblk0p1): bogus number of reserved sectors  
> Starting Network Time Synchronization…  
> [OK] Stopped target Emergency Mode.  
> [OK] Started Entropy daemon using the HAVEGE algorithm.  
> Starting Network Name Resolution…  
> Starting Update UTMP about System Boot/Shutdown…  
> [OK] Stopped Emergency Shell.
> 
> ### [FAILED] Failed to mount /boot.
> 
> See ‘systemctl status boot.mount’ for details.  
> [DEPEND] Dependency failed for Local File Systems.  
> [OK] Started Emergency Shell.  
> [OK] Reached target Emergency Mode.  
> [OK] Started Update UTMP about System Boot/Shutdown.  
> Starting Update UTMP about System Runlevel Changes…  
> [OK] Started Update UTMP about System Runlevel Changes.  
> [OK] Started Network Time Synchronization.  
> [OK] Started Network Name Resolution.  
> [OK] Reached target Host and Network Name Lookups.  
> You are in emergency mode. After logging in, type “journalctl -xb” to view  
> system logs, “systemctl reboot” to reboot, “systemctl default” or “exit”  
> to boot into default mode.  
> Give root password for maintenance  
> (or press Control-D to continue): [22.796918] FAT-fs (mmcblk0p1): bogus number of reserved secto rs  
> [OK] Stopped Emergency Shell.
> 
> ### [FAILED] Failed to mount /boot.
> 
> See ‘systemctl status boot.mount’ for details.  
> [DEPEND] Dependency failed for Local File Systems.  
> [OK] Started Emergency Shell.  
> [OK] Reached target Emergency Mode.  
> Starting Network Name Resolution…  
> [OK] Started Network Name Resolution.  
> [OK] Started Raise network interfaces.  
> [OK] Reached target Network.  
> [OK] Reached target Network is Online.  
> You are in emergency mode. After logging in, type "journalctl -xbGive root password for maintenance  
> (or press Control-D to continue): [35.278377] FAT-fs (mmcblk0p1): bogus number of reserved secto rs  
> You are in emergency mode. After logging in, type "journalctl -xbGive root password for maintenance  
> (or press Control-D to continue):

_And here is additional information:_

> #### root@pynq:~# systemctl status boot.mount
> 
> ¡Ü boot.mount - /boot  
> Loaded: loaded (/etc/fstab; generated)  
> Active: failed (Result: exit-code) since Mon 2020-10-19 15:00:30 UTC; 7s ago  
> Where: /boot  
> What: /dev/mmcblk0p1  
> Docs: man:fstab(5)  
> man:systemd-fstab-generator(8)  
> Process: 491 ExecMount=/bin/mount /dev/mmcblk0p1 /boot -t vfat (code=exited, s
> 
> Oct 19 15:00:30 pynq systemd[1]: Mounting /boot…  
> Oct 19 15:00:30 pynq mount[491]: mount: /boot: wrong fs type, bad option, bad su  
> Oct 19 15:00:30 pynq systemd[1]: boot.mount: Mount process exited, code=exited s  
> Oct 19 15:00:30 pynq systemd[1]: boot.mount: Failed with result ‘exit-code’.  
> Oct 19 15:00:30 pynq systemd[1]: Failed to mount /boot.  
> lines 1-14/14 (END)[47.761425] FAT-fs (mmcblk0p1): bogus number of reserved sectors  
> You are in emergency mode. After logging in, type "journalctl -xbGive root password for maintenance  
> (or press Control-D to continue):

> #### ZynqMP\> mmc list
> 
> mmc@ff160000: 0 (eMMC)  
> mmc@ff170000: 1 (SD)

> #### ZynqMP\> mmcinfo
> 
> Device: mmc@ff160000  
> Manufacturer ID: 70  
> OEM: 100  
> Name: IB291  
> Bus Speed: 199999998  
> Mode: HS200 (200MHz)  
> Rd Block Len: 512  
> MMC version 5.1  
> High Capacity: Yes  
> Capacity: 14.6 GiB  
> Bus Width: 8-bit  
> Erase Group Size: 512 KiB  
> HC WP Group Size: 8 MiB  
> User Capacity: 14.6 GiB  
> Boot Capacity: 4 MiB ENH  
> RPMB Capacity: 4 MiB ENH

> #### root@pynq:~# mount -a
> 
> [611.309937] FAT-fs (mmcblk0p1): bogus number of reserved sectors  
> mount: /boot: wrong fs type, bad option, bad superblock on /dev/mmcblk0p1, missing codepage or helper program, or other error.

> #### root@pynq:~# lsblk
> 
> NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT  
> mtdblock0 31:0 0 1M 0 disk  
> mtdblock1 31:1 0 256K 0 disk  
> mtdblock2 31:2 0 22M 0 disk  
> mmcblk1 179:0 0 14.4G 0 disk  
> |-mmcblk1p1 179:1 0 100M 0 part  
> `-mmcblk1p2 179:2 0 6.6G 0 part / mmcblk0 179:8 0 14.6G 0 disk `-mmcblk0p1 179:9 0 14.6G 0 part  
> mmcblk0boot0 179:16 0 4M 1 disk  
> mmcblk0boot1 179:24 0 4M 1 disk  
> root@pynq:~# [658.450551] FAT-fs (mmcblk0p1): bogus number of reserved sectors

---

<div class="post-metadata">

**Author:** ![rawuser](https://avatars.discourse-cdn.com/v4/letter/r/74df32/32.png) [@rawuser](https://discuss.pynq.io/u/rawuser)\
**Post date:** [June 11, 2021, 7:26am UTC](https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733/2 "2021-06-11T07:26:32Z")

</div>

I solved the problem by modifing block argument in /etc/fstab 😊

---

<div class="post-metadata">

**Author:** ![vijaykumarvg1](https://avatars.discourse-cdn.com/v4/letter/v/b38774/32.png) [@vijaykumarvg1](https://discuss.pynq.io/u/vijaykumarvg1)\
**Post date:** [October 25, 2021, 10:33am UTC](https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733/3 "2021-10-25T10:33:23Z")

</div>

Hi,

Am having the same error, can you please tell me how did you solve this problem ?

---

<div class="post-metadata">

**Author:** ![lyx](https://avatars.discourse-cdn.com/v4/letter/l/3d9bf3/32.png) [@lyx](https://discuss.pynq.io/u/lyx)\
**Post date:** [March 30, 2022, 5:52pm UTC](https://discuss.pynq.io/t/failed-to-mount-boot-pynq-v2-6/2733/4 "2022-03-30T17:52:56Z")

</div>

In case someone still needs the solution, just modify the file “/etc/fstab” in the SD card ( you can open the SD card ext4 filesystem on your linux-based computer, the file /etc/fstab will be there), change the “mmcblk0p1” to “mmcblk1p1”
