• TheyCallMeHacked@discuss.tchncs.de
    link
    fedilink
    arrow-up
    2
    ·
    6 months ago

    Oh you can still do that. The path changed to elf/cbfstool/[TREE]/cbfstool (replace [TREE] with the tree concerened). Note that since the switch to the libre RAM init code, mrc.bin is not included anymore

    • libremanOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      6 months ago

      I installed the updated version 20240612 everything worked as you said. Checking nothing as in the previous instructions does not give anything, as you wrote: after switching to the libre RAM initialization code mrc.bin no longer turns on.

      Now i need to edit grub.cfg because I get an error with searching for the achi1 disk

    • libremanOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      6 months ago

      $ ./build roms t440plibremrc_12mb

      Thanks for your answer and help. I understand you correctly that after I executed the command

      $ ./build roms t440plibremrc_12mb

      Then I can update my ROM (for example, I now have 2023.06.25) by running the commands:

      1. Boot with kernel parameter iomem=relaxed
      2. Download and install ** flashprog** since flashrom will not work (for me it shows the chip size as 8Mb instead of 12Mb)
      $ git clone  https://github.com/SourceArcade/flashprog.git
      $ cd flashprog
      $ make 
      $ sudo make install
      
      1. Check for errors with the command: $ sudo flashprog -p internal

      4 Flash $ sudo flashprog -p internal -w seabios_withgrub_t440plibremrc_12mb_libgfxinit_corebootfb_ukqwerty_grubfirst.rom

      And can I be sure that after turning on my computer I will see Grub Libreboot?

      • TheyCallMeHacked@discuss.tchncs.de
        link
        fedilink
        arrow-up
        1
        ·
        6 months ago

        Yeah, that’s basically right. I believe flashprog is also included in libreboot, have a look in the elf/ directory. After that, it should work as expected

        • libremanOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          6 months ago

          Yeah, that’s basically right. I believe flashprog is also included in libreboot, have a look in the elf/ directory. After that, it should work as expected

          Thank you, kind person)) I installed it, but after installation my screen is too bright and this happens every time, so for now I will use the latest test version, it works well.

          I have another question, please tell me how, in your opinion, I can edit grub.cgf correctly so as not to get an error with searching for disk "ahci1"

          I inserted these lines:

          ...........
          
          	echo # Insert newline
          
          }
          
          menuentry 'Load  GNU/Linux-Libre (LTS)' {
          
          	cryptomount -a
          
          	set root='lvm/matrix-rootvol'
          
          	linux /boot/vmlinuz-linux-libre-lts root=/dev/mapper/matrix-rootvol cryptdevice=/dev/sda1:lvm
          
          	initrd /boot/initramfs-linux-libre-lts.img
          
          }
          
          menuentry 'Load Operating System (incl. fully encrypted disks)  [o]' --hotkey='o' {
          

          and deleted these ones since I don’t use raid:

          menuentry 'Load Operating System (incl. fully encrypted disks)  [o]' --hotkey='o' {
          
                  if [ "${grub_scan_disk}" != "ata" ]; then
          
          		search_grub ahci
          
          	fi
          
          	if [ "${grub_scan_disk}" != "ahci" ]; then
          
          		search_grub ata
          
          	fi
          
                  # grub device enumeration is very slow, so checks are hardcoded
          
                  # TODO: add more strings, based on what distros set up when
          
          	# the user select auto-partitioning on those installers
          
          	lvmvol="lvm/matrix-bootvol lvm/matrix-rootvol"
          
                  raidvol="md/0 md/1 md/2 md/3 md/4 md/5 md/6 md/7 md/8 md/9"
          
                  # in practise, doing multiple redundant checks is perfectly fast and
          
          	# TODO: optimize grub itself, and use */? here for everything
          
                  for vol in ${lvmvol} ${raidvol} ; do
          
          		try_user_config "${vol}"
          
          	done
          
                  unset ahcidev
          
          	unset atadev
          
          	for i in 11 10 9 8 7 6 5 4 3 2 1 0; do
          
          		for part in 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1; do
          
          			if [ "${grub_scan_disk}" != "ata" ]; then
          
          				ahcidev="(ahci${i},${part}) ${ahcidev}"
          
          			fi
          
          			if [ "${grub_scan_disk}" != "ahci" ]; then
          
          				atadev="(ata${i},${part}) ${atadev}"
          
          			fi
          
          		done
          
          	done
          
                  set pager=0
          
          	echo -n "Attempting to unlock encrypted volumes"
          
          	for dev in ${ahcidev} ${atadev} ${lvmvol} ${raidvol}; do
          
          		if cryptomount "${dev}" ; then break ; fi
          
          	done
          
          	set pager=1
          
          	echo
          
                  # after cryptomount, lvm volumes might be available
          
          	for vol in ${lvmvol}; do
          
          		try_user_config "${vol}"
          
          	done
          
                  search_grub crypto
          
                  if [ "${grub_scan_disk}" != "ata" ]; then
          
          		# Last resort, if all else fails
          
          		set root=ahci0,1
          
          		for p in / /boot/; do
          
          			if [ -f "${p}vmlinuz" ]; then
          
          				linux ${p}vmlinuz root=/dev/sda1 rw
          
          				if [ -f "${p}initrd.img" ]; then
          
          					initrd ${p}initrd.img
          
          				fi
          
          			fi
          
          		done
          
          	fi
          
                  if [ "${grub_scan_disk}" != "ahci" ]; then
          
          		# Last resort (for setups that use IDE instead of SATA)
          
          		set root=ata0,1
          
          		for p in / /boot/; do
          
          			if [ -f "${p}vmlinuz" ]; then
          
          				linux ${p}vmlinuz root=/dev/sda1 rw
          
          				if [ -f "${p}initrd.img" ]; then
          
          					initrd ${p}initrd.img
          
          				fi
          
          			fi
          
          		done
          
          	fi
          
                  true # Prevent pager requiring to accept each line instead of whole screen