You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Copy paste some stuff over for qemu
WIP commit to integrate a dedicated integration
target based of generic arm Qemu and to fix
the broken simulator
Signed-off-by: Marvin Drees <[email protected]>
* Add 32bit and 64bit qemu platform folders
Add basic Qemu platform folders to allow both
integration and the simulator to be dedicated
targets, also allow testing on both 32bit and 64bit
Signed-off-by: Marvin Drees <[email protected]>
* Add block device support to loader
Make the boot/ directory a go submodule to be able to
use u-root as a module dependency and add support
to also mount block devices and not only MTD flash.
Signed-off-by: Marvin Drees <[email protected]>
* Switch from u-root to gobusybox+u-root
Because u-root wasn't able to properly create the
busybox binary now that we use go modules I switched to using
gobusybox instead which in turn wasn't able to work properly
with direct code dependencies in u-bmc on u-root.
The loader is already in its own submodule to account
for that, othre parts still need adoption now!
Signed-off-by: Marvin Drees <[email protected]>
* Restructure taskfile flow and directories
Qemu needs different components from the buildsystem
than e.g. ast socs need so we make more use of the
Platform.yml file now and split tasks up further.
In addition we don't need go vendoring anymore so
removed these from the gitignores and taskfiles.
Finally the streamline the linux configs for qemu
a bit more. 32bit still has some issues for now.
Signed-off-by: Marvin Drees <[email protected]>
* Update go.mod
Update go.mod and go.sum to go 1.17
Signed-off-by: Marvin Drees <[email protected]>
* Fix paths in taskfiles
Some paths were wrong and have been fixed now.
This commit is part of adding Qemu support
and very much WIP. The added kexec binary is
only for testing purposes and will be removed
soon.
Signed-off-by: Marvin Drees <[email protected]>
* Add boot/mounter
In order to account for future rootfs layouts
that need a readonly and readwrite part a new
mounter is introduced which is loaded by the
runtime kernel initramfs and executes the main init.
Signed-off-by: Marvin Drees <[email protected]>
* Add boot/cpio to pack the initrd
The boot/cpio tool uses u-roots cpio library
to assemble an initrd for both the LinuxBoot
and runtime kernel. This removes the need for
and external cpio command and makes creating the
initrds much easier.
Signed-off-by: Marvin Drees <[email protected]>
* Fix boot/loader implementation of kexec
The loader tool can now be used in both the LinuxBoot
and runtime initrd and does not rely on having a kexec
binary in the image as we already got proper kexec_load
support on both arm and arm64. On arm64 the loader tries
kexec_file_load first and falls back to kexec_load if it
did not succeed.
Signed-off-by: Marvin Drees <[email protected]>
* Remove nested go.mod
For some reason gobusybox now works without the workaround
of having a nested go.mod. I won't question it...
Signed-off-by: Marvin Drees <[email protected]>
* Update CircleCI to go 1.17.1
Update the circleci config to remove some unnecessary
steps like go vendor and update the go version to match
the one marked in the go.mod files
Signed-off-by: Marvin Drees <[email protected]>
* Update README
Signed-off-by: Marvin Drees <[email protected]>
* Satisfy gofmt
As we updated go to 1.17 we got slightly different
requirements with gofmt, those are now fixed.
Signed-off-by: Marvin Drees <[email protected]>
* Change qemu-virt-a72 toolchain
As CircleCI and regular Ubuntu images don't feature a
musl toolchain we switch back to gnu for the kernel.
Signed-off-by: Marvin Drees <[email protected]>
* Compile erofs-utils in CircleCI
Because the current CircleCI image does not contain
a recent enough erofs-utils version we need to compile
one from source there.
Signed-off-by: Marvin Drees <[email protected]>
0 commit comments