Sorgelig wrote:I don't know exact answer since it needs source exploring first which is on virtual machine.
I can give you direction to find the answer:
1) do not manually edit .config file - it has many dependencies between options. Always use config menu - find required option there.
Good to know. I was editing manually the
.config file because I was having problems with the
make menuconfig command. Then I discovered my Debian was lacking ncurses, so after
sudo apt-get install libncurses5-dev
sudo apt-get install libncursesw5-dev
I successfully launched
make menuconfig.
Adding exFAT support through menuconfig led to the same configuration I wrote manually, so, again no luck with kernel compilation, but…
Sorgelig wrote:2) use file search with content loop_max_part to find where it defined and then look around to find if there any conditional compilation near this definition. So probably you've missed some config settings.
Here’s the culprit! I discovered that your
init/do_mounts.c externally refers to a loop_max_part function
extern int loop_max_part(void); this function is implemented in
drivers/block/loop.c which wasn’t compiled.
So, after adding
File systems ---> DOS/FAT/NT Filesystems ---> exFAT fs support
Device Drivers ---> Block devices ---> Loopback device support
through menuconfig, I successfully compiled your kernel sources with a modified .config extracted by Terasic’s Linux LXDE Desktop (kernel 4.5)
http://www.terasic.com.tw/cgi-bin/page/ ... 6&PartNo=4
Here’s the original Terasic .config
config.DE10_Nano_LXDE.4.5.0-00185-g3bb556b.zip
Here’s the modified .config
config.DE10_Nano_LXDE.4.5.0-00185-g3bb556b.MiSTer_Kernel.zip
Here’s the compiled Kernel
http://www.filedropper.com/zimagedtblxde450mister
Now with the Terasic’s SD image
DE10_Nano_LXDE.img on my Debian machine, I launched
sudo sfdisk -l -uS DE10_Nano_LXDE.img and I got
Code: Select all
Disk DE10_Nano_LXDE.img: 3,5 GiB, 3776970752 bytes, 7376896 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x55f3145b
Device Boot Start End Sectors Size Id Type
DE10_Nano_LXDE.img1 4096 1028095 1024000 500M b W95 FAT32
DE10_Nano_LXDE.img2 1028096 7376895 6348800 3G 83 Linux
DE10_Nano_LXDE.img3 2048 4095 2048 1M a2 unknown
Partition table entries are not in disk order.
Then with
dd if=DE10_Nano_LXDE.img of=DE10_Nano_LXDE.img2 skip=1028096 count=6348800 I extracted the second Linux partition to a new DE10_Nano_LXDE.img file.
Now putting the new compiled kernel and the extracted partition image one the new MiSTer SD layout under /linux as zImage_dtb and linux.img I stared the DE10-Nano and…
…partial success (or partial failure if you prefer).
Terasic’s Linux successfully boots, and is accessible both by debug usb cable and by ssh on local network, but I get nothing through HDMI. Here’s the log captured from the debug cable
Code: Select all
U-Boot SPL 2017.03+ (Feb 10 2018 - 19:15:38)
Trying to boot from MMC1
U-Boot 2017.03+ (Feb 10 2018 - 19:15:38 +0800)
Watchdog enabled
DRAM: 1 GiB
socfpga_bridges_reset: FPGA not ready, aborting.
MMC: dwmmc0@ff704000: 0
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Autoboot in 0 seconds
reading menu.rbf
2145892 bytes read in 184 ms (11.1 MiB/s)
reading /linux/zImage_dtb
5024536 bytes read in 419 ms (11.4 MiB/s)
## Flattened Device Tree blob at 014c3170
Booting using the fdt blob at 0x14c3170
reserving fdt memory region: addr=0 size=1000
Loading Device Tree to 03ff5000, end 03fff9a7 ... OK
Starting kernel ...
[ 0.000000] L2C: platform provided aux values permit register corruption.
[ 0.916184] Failed to bind-mount /dev/mmcblk0p1 to /root/media/fat : -2
Welcome to Ubuntu 16.04.1 LTS!
[ OK ] Started Forward Password Requests to Wall Directory Watch.
[ OK ] Created slice System Slice.
[ OK ] Created slice system-serial\x2dgetty.slice.
[ OK ] Reached target Encrypted Volumes.
[ OK ] Reached target Swap.
[ OK ] Created slice User and Session Slice.
[ OK ] Listening on /dev/initctl Compatibility Named Pipe.
[ OK ] Reached target Remote File Systems (Pre).
[ OK ] Reached target Remote File Systems.
[ OK ] Reached target Slices.
[ OK ] Listening on Syslog Socket.
[ OK ] Listening on Journal Socket.
Starting Load Kernel Modules...
Starting Remount Root and Kernel File Systems...
Starting Set console keymap...
Starting Create Static Device Nodes in /dev...
[ OK ] Listening on Journal Socket (/dev/log).
Mounting Debug File System...
Starting Journal Service...
[ OK ] Listening on udev Kernel Socket.
[ OK ] Listening on udev Control Socket.
[ OK ] Mounted Debug File System.
[ OK ] Started Load Kernel Modules.
[ OK ] Started Remount Root and Kernel File Systems.
Starting udev Coldplug all Devices...
Starting Load/Save Random Seed...
Starting Apply Kernel Variables...
Mounting Configuration File System...
[ OK ] Mounted Configuration File System.
[ 4.826272] hid-generic 0003:046D:C52B.0003: device has no listeners, quitting
[ OK ] Started Load/Save Random Seed.
[ OK ] Started Create Static Device Nodes in /dev.
[ OK ] Started Apply Kernel Variables.
[ OK ] Started Journal Service.
[ OK ] Started Set console keymap.
Starting Flush Journal to Persistent Storage...
Starting udev Kernel Device Manager...
[ OK ] Reached target Local File Systems (Pre).
[ OK ] Reached target Local File Systems.
Starting Set console font and keymap...
Starting Tell Plymouth To Write Out Runtime Data...
Starting Raise network interfaces...
[ OK ] Started Flush Journal to Persistent Storage.
Starting Create Volatile Files and Directories...
[ OK ] Started Tell Plymouth To Write Out Runtime Data.
[ OK ] Started udev Kernel Device Manager.
[ OK ] Started udev Coldplug all Devices.
[FAILED] Failed to start Create Volatile Files and Directories.
See 'systemctl status systemd-tmpfiles-setup.service' for details.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
[ OK ] Reached target System Time Synchronized.
Starting Update UTMP about System Boot/Shutdown...
[ OK ] Started Dispatch Password Requests to Console Directory Watch.
[ OK ] Reached target Paths.
[FAILED] Failed to start Update UTMP about System Boot/Shutdown.
See 'systemctl status systemd-update-utmp.service' for details.
[DEPEND] Dependency failed for Update UTMP about System Runlevel Changes.
[ OK ] Found device /dev/ttyS0.
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
[ OK ] Reached target System Initialization.
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Started Daily apt activities.
[ OK ] Reached target Timers.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
Starting LSB: Set the CPU Frequency Scaling governor to "ondemand"...
Starting System Logging Service...
Starting Permit User Sessions...
[ OK ] Started D-Bus System Message Bus.
Starting Login Service...
Starting Network Manager...
[ OK ] Started System Logging Service.
[ OK ] Started Set console font and keymap.
[ OK ] Started Raise network interfaces.
[ OK ] Started Permit User Sessions.
[ OK ] Started Login Service.
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
Starting Light Display Manager...
[ OK ] Created slice system-getty.slice.
[ OK ] Started LSB: Set the CPU Frequency Scaling governor to "ondemand".
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to start Network Time Synchronization.
See 'systemctl status systemd-timesyncd.service' for details.
[ OK ] Started Light Display Manager.
[ OK ] Started Network Manager.
[ OK ] Reached target Network.
Starting OpenBSD Secure Shell server...
Starting /etc/rc.local Compatibility...
Starting Network Manager Script Dispatcher Service...
[ OK ] Started /etc/rc.local Compatibility.
Starting Hold until boot process finishes up...
[ OK ] Started Hold until boot process finishes up.
[ OK ] Started Serial Getty on ttyS0.
[ OK ] Started Getty on tty1.
[ OK ] Reached target Login Prompts.
Starting Set console scheme...
[ OK ] Started Network Manager Script Dispatcher Service.
[ OK ] Started Set console scheme.
[FAILED] Failed to start Hostname Service.
See 'systemctl status systemd-hostnamed.service' for details.
[ OK ] Started OpenBSD Secure Shell server.
[ OK ] Reached target Multi-User System.
[ OK ] Reached target Graphical Interface.
Ubuntu 16.04.1 LTS DE10_NANO ttyS0
DE10_NANO login:
Maybe it’s something about some rbf file… we are very near.
Locutus73
You do not have the required permissions to view the files attached to this post.