Closed cklin closed 7 years ago
You have to update U-Boot to at least 2015.05. I suppose the one from here should work (never tested): https://github.com/01org/edison-u-boot/tree/edison-v2016.03 (you may try starting from older one).
P.S. I tried it only in kexec mode. I'm wondering if just U-Boot update is enough to achieve that.
I see. Thanks for the pointer - though I am a bit reluctant to mess with custom u-boot. I am confident that I can recover from a bad Linux kernel, but a bad custom u-boot image seems like the kind of problem that can brick an Edison board.
At some point I would switch Edison I have access to to new U-Boot and will try x86_64 kernel directly, but this is low priority task. I would appreciate if anyone can do this earlier than me.
Here is the recipe: https://communities.intel.com/message/435516#435516.
U-Boot 2016.11-00057-g87bfbd3 (Nov 16 2016 - 15:38:02 +0200) CPU: x86_64, vendor Intel, device 406a8h DRAM: 980.6 MiB MMC: tangier_sdhci: 0, tangier_sdhci: 1 In: serial@ff010180 Out: serial@ff010180 Err: serial@ff010180 Net: Net Initialization Skipped No ethernet found. Hit any key to stop autoboot: 0 reading vmlinuz.efi 6816032 bytes read in 166 ms (39.2 MiB/s) reading initrd 1712559 bytes read in 52 ms (31.4 MiB/s) Valid Boot Flag Setup Size = 0x00003e00 Magic signature found Using boot protocol version 2.0d Linux kernel version 4.9.0-rc5+ (andy@black) #31 SMP Fri Nov 18 19:52:07 EET 2016 Building boot_params at 0x00090000 Loading bzImage at address 100000 (6800160 bytes) Magic signature found Initial RAM disk at linear address 0x03000000, size 8388608 bytes Kernel command line: "console=tty1 console=ttyS2,115200n8 rootfstype=ramfs rw quiet" Starting kernel ... [ 0.000000] ACPI BIOS Error (bug): A valid RSDP was not found (20160831/tbxfroot-244) [ 0.130515] bcm43xx-vmmc-regulator: Failed to request enable GPIO96: -517 [ 0.130718] reg-fixed-voltage reg-fixed-voltage.0.auto: Failed to register regulator: -517 [ 2.293156] Initramfs unpacking failed: junk in compressed archive Starting logging: OK Starting mdev... Initializing random number generator... done. Starting network: OK Starting udhcpc... console=tty1 console=ttyS2,115200n8 rootfstype=ramfs rw quiet udhcpc: started, v1.25.1 [ 5.602591] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50 udhcpc: sending discover udhcpc: sending select for 192.168.2.71 udhcpc: lease of 192.168.2.71 obtained, lease time 43200 [ 6.613778] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50 Welcome to Buildroot buildroot login: root # uname -a Linux buildroot 4.9.0-rc5+ #31 SMP Fri Nov 18 19:52:07 EET 2016 x86_64 GNU/Linux
Is the kernel from eds branch supposed to work on Edison in 64-bit mode?
If I build the kernel (current eds branch head, 01e5c69a4f4a13d43e753157a5602b1d8c690469) in i386 architecture, the kernel boots fine on Intel Edison with mini-breakout board. But if I build with x86_64 architecture using the same kernel source, the kernel fails to boot on the same Edison board. This is what I see on the serial console:
And then nothing happens, until the watchdog kicks in and reboots the system.
I built the kernels using the standard "make -j4" command, with gcc (Debian 6.1.1-11) 6.1.1 20160802 on a x86_64 Linux system running Debian testing. The kernel configs are generated from i386_defconfig and x86_64_defconfig, respectively, and everything else (even the kernel boot arguments provided by u-boot) are the same.
The page https://edison.internet-share.com/wiki/Using_a_vanilla_Linux_kernel_with_Intel_Edison states that Linux 4.4 boots on Edison in 64-bit mode, so I was hoping that the latest eds branch would also work in 64-bit mode. But perhaps there has been a regression?
Any help would be appreciated. Please let me know if I can provide more information to help with troubleshooting. Thanks!
config-x86_64.txt