Hello,
I think I found the issue. ( see below )
On 01.07.19 15:57, Zoran Stojsavljevic wrote:
Hello Moritz,
Too hot here, in Belgrade... Where I am resting for the Time being
(actually, this message given to my invisible spying security "angels"
on this list)... :-) Projected +38C degrees today. Too hot for this
too old Siberian untouchable bobcat!
Luckily it's a rather cold day in germany, thanks that you still take
the time to answer !
I started from the core-image-minimal to have a small image and
extended it with the features I need, which is e.g. a graphical system.
The console=[...] part in the kernel command line is probably a
remnant but my image boots into the GUI. Is this a problem ?
Nope, it is not. If you need to do it correctly, you should use
bitbake -k core-image-sato build command (my best educated guess).
Then, I do not feel comfortable seeing in your kernel command line
serial interface, do you agree?
Yes that is true.
YOCTO maintainers, any additional
advices?
My bootloader is currently grub, the EFI is AM.
Nope. Eeeeeeeeek. Wrong. Currently, your boot-loader is UEFI AMI. Your
OS (Linux probably, U name it) boot-loader is GRUB2. Let us keep it
contained, sane and sober.
Sorry but I can't find this info in the EFI.
Could you, please try the following command being root: dmesg | grep
MCU. or grep mcu, or grep CPUID or grep cpuid?? Please, post results
to this list (to me).
No luck unfortunately (used grep -i)
Could you, also, send to YOCTO list/me attached file:
/boot/microcode.cpio so I can somehow (?) inspect it? ;-)
I send it to you directly, so I don't spam the list with a large attachment.
2GB, single channel.
All Cool. E3825 by HW/silicon design could/does NOT support multiple
memory channels. ONLY single... But even YOCTO primes (INTEL ones from
this list) are not gonna tell this to you. Not 'cause they are nasty.
They are NOT aware/they are ignorant (with the purpose)! ;-))
No, the boot does not stop. Even if I do issue "break=premount" I
end up in my graphical interface with the rootfs mounted. This is the
last message in the log: EXT4-fs (sdb2): re-mounted. Opts: (null)
The rootfs partition is always 2, so either /dev/sda2 or /dev/sdb2
(when booting from stick)
Yes, from https://pastebin.com/ya7iCtq7, so it is remounted rw, not
read only. So, it seems that you have passed dracut phase. and mounted
SD or flash rootfs. So, initramfs is NOT your true problem, is it???
The thing is that the boot works but I want an initramfs that can be
used for updating (in case the rootfs is broken). However I need to be
able to intercept the boot process there because otherwise I can't
deploy an update mechanism, that's what I was trying.
Zoran
_______
No, the boot does not stop. Even if I do issue "break=premount" I end up
in my graphical interface with the rootfs mounted. This is the last message
in the log: EXT4-fs (sdb2): re-mounted. Opts: (null) The rootfs partition is
always 2, so either /dev/sda2 or /dev/sdb2 (when booting from stick)
So for the issue...
I expected yocto to put the bundled bzImage onto my rootfs. This was not
the case. My image directory contains 2x bzImage, one bundled and one
unbundled. Apparently yocto puts the >un<bundled image onto my /boot
partition and uses it for boot. So of course I couldn't access initramfs
in this case. Now I get to the initramfs statement "dropping to shell"
if I intentionally boot with wrong rootfs.
Still I don't get the interactive shell.
On the github ostroproject site I found this:
# debug: adds debug boot parameters like 'shell' and 'debug', see
# meta/recipes-core/initrdscripts/initramfs-framework/debug for
details
# Could be removed in more minimal product image.
PACKAGE_INSTALL += "initramfs-module-debug"
including the module-debug still does not enable me to get an
interactive shell.
I was following this site: https://wiki.debian.org/InitramfsDebug
I am aware that yocto is no debian but I expected that kernel parameters
(like 'break') would be independent of the distribution.
Lastly I do not really need the interactive shell, it is enough if I can
deploy a custom init script in the initramfs. Still I think that getting
an initramfs shell should be as simple as stating the name of the
initramfs image and setting the "INITRAMFS_DO_BUNDLE" variable.
Best regards
Moritz
On Mon, Jul 1, 2019 at 11:20 AM Moritz Porst <moritz.po...@gmx.de> wrote:
Hello Zoran,
thanks for your answer
On 28.06.19 14:26, Zoran Stojsavljevic wrote:
INITRAMFS_IMAGE = "core-image-minimal-initramfs"
INITRAMFS_IMAGE_BUNDLE = "1"
...
You can find the /var/log/dmesg here: https://pastebin.com/ya7iCtq7I
Some hints...
[1] Kernel command line: BOOT_IMAGE=/bzImage
root=PARTUUID=71d1d94a-83e8-4895-98eb-35309f58119f
break=premount quiet rootwait rootwait rootfstype=ext4 console=ttyS0,115200
console=tty0
input: Video Bus as
/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input7
fbcon: inteldrmfb (fb0) is primary device
Console: switching to colour frame buffer device 128x48
i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
snd_hda_intel 0000:00:1b.0: bound 0000:00:02.0 (ops
i915_audio_component_bind_ops [i915])
Hmmmmm... You are using console and serial, but full i915 GFX kernel driver is
still included in the build???
I started from the core-image-minimal to have a small image and extended it
with the features I need, which is e.g. a graphical system. The console=[...]
part in the kernel command line is probably a remnant but my image boots into
the GUI. Is this a problem ?
[2] efi: EFI v2.31 by American Megatrends
Using AMI BIOS as boot loader FW... OK?! Am I correct?
My bootloader is currently grub, the EFI is AM.
[3] smpboot: CPU0: Intel(R) Atom(TM) CPU E3825 @ 1.33GHz (family: 0x6, model:
0x37, stepping: 0x9)
This is CPUID ID 0x30679, which uses MCU... Which MicroCodeUnit? M0130679xxx
(info from AMI BIOS)?
Sorry but I can't find this info in the EFI
[4] Using INTEL ATOM BYT E3825 dual core (sans Hyper-threading), implies that
you are using
4GB (e820 messages) as single channel (one memory module DDR3 as 4GB)! Am I
correct (important)?
2GB, single channel.
[5] Dracut phase?!
To my understanding the initramfs should be embedded in /boot/bzImage.
However since I use an intel platform I also have a /boot/microcode.cpio
which gets loaded via "initrd /microcode.cpio". Removing this line in
grub does not enable me to get an initramfs prompt either (again, using
break as option).
You are obviously stopping in boot phase called dracut. Please, try to mount by
hand
/dev/sda(whatever)... You should use fdisk -l command, or do ls -al /dev | grep
sda to
dig out which partition you need to mount to /tmp dir to see rootfstype=ext4
(HDD/SSD)
No, the boot does not stop. Even if I do issue "break=premount" I end up in my
graphical interface with the rootfs mounted. This is the last message in the log:
EXT4-fs (sdb2): re-mounted. Opts: (null)
The rootfs partition is always 2, so either /dev/sda2 or /dev/sdb2 (when
booting from stick)
_______
Just thinking loud... .. .
Hope this helps (has very little to do with YOCTO build system, BTW) . ;-)
Zoran
_______
On Fri, Jun 28, 2019 at 11:22 AM Moritz Porst <moritz.po...@gmx.de> wrote:
Hello,
I currently try to deploy a single rootfs update mechanism for my
embedded device. I can't boot to initramfs using either "break" or
"break=premount" (without quotes...). I tried this in systemd-boot and
grub-efi (always efi boot) but the boot process just continues normally.
If I insert at the same point e.g. "quiet" this argument is recognised.
I boot the .wic image with a separate boot partition from a USB stick.
in local.conf I have set:
INITRAMFS_IMAGE = "core-image-minimal-initramfs"
INITRAMFS_IMAGE_BUNDLE = "1"
In order to reduce complexity I now use the standard
core-image-minimal-initramfs without .bbappend. I can confirm (from
seeing the task) that bitbake bundled the kernel with the initramfs.
You can find the /var/log/dmesg here: https://pastebin.com/ya7iCtq7
To my understanding the initramfs should be embedded in /boot/bzImage.
However since I use an intel platform I also have a /boot/microcode.cpio
which gets loaded via "initrd /microcode.cpio". Removing this line in
grub does not enable me to get an initramfs prompt either (again, using
break as option).
Did I forget some configuration or do I have to put the break statement
at a very specific position within the "linux ..." boot command ? Do you
know which bitbake variables to check ? (both set in local.conf do not
get overwritten, already checked this). I got the thud branch checked
out in all my meta-layers except for meta-qt which is currently on
master branch.
Help is much appreciated !
Best regards
Moritz
--
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto
--
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto