add: initial support for Milk-V Jupiter/SpacemiT K1#56
add: initial support for Milk-V Jupiter/SpacemiT K1#56Owen-sz wants to merge 20 commits intoUMN-Kernel-Object:trunkfrom
Conversation
- Fixes the Nix build by removing the absolute path to Bash.
- Changes packages to be named "name/target" instead of "name-target"
- Target names also have hyphens in them, so parsing them is a bit of
a pain.
- Removes aliases for components of the image. These are still exposed
as passthru attributes, but they don't have the target name in them
any more. This should be more consistent and simpler to program around.
- Uses a "g" prefix for non-release versions instead of another
hyphenated component. This again reduces ambiguity in parsing paths.
- Adds flake checks that all the ukoOS builds succeed and all the image
builds succeed, and runs these checks in GitHub Actions.
- Prepares GitHub Actions to be used with other image targets (e.g. #56).
This is done through the all-images package; whatever files that
builds will get uploaded as artifacts.
- Fixes the REUSE tool being added as a dependency of ukoos instead of
as a devShell input.
Signed-off-by: Nathan Ringo <me@remexre.com>
- Fixes the Nix build by removing the absolute path to Bash.
- Changes packages to be named "name/target" instead of "name-target"
- Target names also have hyphens in them, so parsing them is a bit of
a pain.
- Removes aliases for components of the image. These are still exposed
as passthru attributes, but they don't have the target name in them
any more. This should be more consistent and simpler to program around.
- Uses a "g" prefix for non-release versions instead of another
hyphenated component. This again reduces ambiguity in parsing paths.
- Adds flake checks that all the ukoOS builds succeed and all the image
builds succeed, and runs these checks in GitHub Actions.
- Prepares GitHub Actions to be used with other image targets (e.g. #56).
This is done through the all-images package; whatever files that
builds will get uploaded as artifacts.
- Fixes the REUSE tool being added as a dependency of ukoos instead of
as a devShell input.
Signed-off-by: Nathan Ringo <me@remexre.com>
* Large-scale refactor of Nix flake.
- Fixes the Nix build by removing the absolute path to Bash.
- Changes packages to be named "name/target" instead of "name-target"
- Target names also have hyphens in them, so parsing them is a bit of
a pain.
- Removes aliases for components of the image. These are still exposed
as passthru attributes, but they don't have the target name in them
any more. This should be more consistent and simpler to program around.
- Uses a "g" prefix for non-release versions instead of another
hyphenated component. This again reduces ambiguity in parsing paths.
- Adds flake checks that all the ukoOS builds succeed and all the image
builds succeed, and runs these checks in GitHub Actions.
- Prepares GitHub Actions to be used with other image targets (e.g. #56).
This is done through the all-images package; whatever files that
builds will get uploaded as artifacts.
- Fixes the REUSE tool being added as a dependency of ukoos instead of
as a devShell input.
Signed-off-by: Nathan Ringo <me@remexre.com>
* Adds doc/book/ to .gitignore.
Signed-off-by: Nathan Ringo <me@remexre.com>
---------
Signed-off-by: Nathan Ringo <me@remexre.com>
3a3be76 to
00278bf
Compare
|
Should be good now. |
remexre
left a comment
There was a problem hiding this comment.
Test that this boots the ukoOS kernel on real hardware, plz
|
Notes for testing: Setup: build: flash serial into the board Need to see what u-boot is doing (it's loading GRUB?) pins to reset/ignore SPI flash, since u-boot is being loaded form SPI flash? |
|
--- UPDATED NOTES --- BOOT STATUS: CHANGES: The commit after this will be updating the memory addresses in code to match that of the Jupiter, which is a temporary fix, and this should not be merged with those changes. TESTING: Go to the ukoOS u-boot repo, use commit |
jastintime
left a comment
There was a problem hiding this comment.
look at my comments.
Appreciate your hard work and dedication, love to see it 🦾
LICENSES/BSD-2-Clause.txt
Outdated
| @@ -0,0 +1,22 @@ | |||
| Redistribution and use in source and binary forms, with or without | |||
There was a problem hiding this comment.
bruh why we bringing this bloat in
| image boot.vfat { | ||
| vfat { | ||
| label = "ukoos-boot" | ||
| } |
There was a problem hiding this comment.
bloat wasting sizeof("ukoos-boot")
| version = "2.2.27"; | ||
|
|
||
| src = fetchgit { | ||
| url = "https://gitee.com/bianbu-linux/opensbi.git"; |
There was a problem hiding this comment.
tell us what commit you are bringing in 👍
| make \ | ||
| ''${enableParallelBuilding:+-j''${NIX_BUILD_CORES}} \ | ||
| ARCH=riscv \ | ||
| CROSS_COMPILE=riscv64-unknown-linux-musl- \ |
There was a problem hiding this comment.
why linux-musl and not ukoos-nolibcs 😎
| autostart=no | ||
| bootdelay=0 | ||
| bootfile=kernel.elf | ||
| loadaddr=0x200000 | ||
| startaddr=0x8200000 |
There was a problem hiding this comment.
appeared out of thin air 😢
| nativeBuildInputs = [ | ||
| dtc | ||
| pkgsCross.riscv64-musl.stdenv.cc.bintools.bintools | ||
| pkgsCross.riscv64-musl.stdenv.cc.cc |
There was a problem hiding this comment.
double check? why musl stuff
| partition-type-uuid = "u-boot-env" | ||
| offset = "384K" | ||
| image = "uboot.env" | ||
| size = 256K |
|
It works! When you get into u-boot on the Jupiter: TODO: Make this automatic |
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen Zimmerman <owen@fyralabs.com>
Signed-off-by: Owen Zimmerman <owen@fyralabs.com>
3b9dabd to
0eee5e3
Compare
|
Resolves #78 |
0eee5e3 to
e0ad720
Compare
Signed-off-by: Owen <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
Correct Jupiter nix file to load kernel into correct spot Add /boot into Jupiter genimage.cfg Update u-boot.txt with Jupiter things, and set new startaddr because the Jupiter's RAM is not the same place as the Duo S and QEMU Update files that rg told me had the Duo S/QEMU staraddr to temporarily to include the Jupiters startaddr Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
…artaddress is used per make target Signed-off-by: Owen-sz <owen@fyralabs.com>
Signed-off-by: Owen-sz <owen@fyralabs.com>
e0ad720 to
d088483
Compare
|
TODO:
|
Adds genimage.cfg, brings in vendor opensbi and u-boot via nix files. Adds Jupiter dev-image