!xmLtiCaAJxfhURjrXl:matrix.org

NixOS RISC-V

237 Members
NixOS on RISC-V https://wiki.nixos.org/wiki/RISC-V https://pad.lassul.us/NixOS-riscv64-linux https://github.com/orgs/NixOS/teams/risc-v69 Servers

Load older messages


SenderMessageTime
25 Mar 2024
@sorear:matrix.orgsorearcan I ask you questions about what any given thing in a flake does?16:11:31
@thefossguy:matrix.orgPratham Patel (you can mention me)stumbled across this: https://github.com/NixOS/nixpkgs/pull/12545116:11:32
@thefossguy:matrix.orgPratham Patel (you can mention me)I don't understand it well enough but sure, do ask me! I'll try to answer if I understand :)16:12:06
@sorear:matrix.orgsorearif you think the directions you just gave me are intelligible, you understand it much better than i do16:12:44
@thefossguy:matrix.orgPratham Patel (you can mention me)Do ask then :)16:13:39
@root:0x1.strootI have a working setup based on this with custom uboot and kernel for real hw, also a working qemu setup for userspace testing16:14:56
@root:0x1.strootC908 w/ RVV 1.0. Working on new kernel at the moment.16:16:53
@thefossguy:matrix.orgPratham Patel (you can mention me)
In reply to @sorear:matrix.org
I still cannot make heads from tails of anything flakes-related
Okay this might be helpful if you don't understand flakes... Use this to understand how you can cross compile an armv7l sd-image from any host arch, but do it for riscv64. Then, replace sd-image-aarch64.nix with sd-image-riscv64-qemu.nix.
16:17:07
@sorear:matrix.orgsorear
In reply to @thefossguy:matrix.org
Okay this might be helpful if you don't understand flakes... Use this to understand how you can cross compile an armv7l sd-image from any host arch, but do it for riscv64. Then, replace sd-image-aarch64.nix with sd-image-riscv64-qemu.nix.
this looks very helpful, it was extremely unclear from the nixos manual whether it was possible to override anything in the standard configurations
16:22:04
@sorear:matrix.orgsorear
In reply to @root:0x1.st
I have a working setup based on this with custom uboot and kernel for real hw, also a working qemu setup for userspace testing
I may ask about this later if any of it is nontrivial for nix-language or nixpkgs reasons
16:22:50
@thefossguy:matrix.orgPratham Patel (you can mention me)fyi, I may not reply after a few hours since it's 22:00 here; will reply to your questions (if any) in the morning16:23:22
@joerg:thalheim.ioMic92 Steven Keuchel: Another question. One can download the edk2 firmware from here: https://github.com/sophgo/sophgo-edk2/actions/runs/8262095841 18:07:08
@joerg:thalheim.ioMic92Does it matter which device tree file I download that is mentioned here? https://github.com/sophgo/sophgo-edk218:07:31
@joerg:thalheim.ioMic92I mean what version of mango-milkv-pioneer.dtb I use?18:07:42
@joerg:thalheim.ioMic92Does this need to match up with the Linux kernel or is this used by the efi firmware?18:08:28
@alex:tunstall.xyzAlex
In reply to @joerg:thalheim.io
Does this need to match up with the Linux kernel or is this used by the efi firmware?
The Linux kernel tree has its own DTBs, but IIRC it can use the DTB provided by EFI, so doesn't it depend on what parameters you're passing the kernel?
20:26:04
@joerg:thalheim.ioMic92Ok. Does this mean I can include a DTB from a recent linux kernel build when flashing the firmware?20:27:08
@alex:tunstall.xyzAlexThat might fix issues that are caused by bugs in the DTB, but I assume the older kernel will ignore any devices it doesn't recognise (or functionality might be reduced if the DTB has a fallback driver).20:32:15
26 Mar 2024
@skeuchel:matrix.orgSteven Keuchel Mic92: I find that in the recent revisions of the 6.1, 6.6 and 6.8 branches of the pioneer you can simply use any of the dtbs with any of the kernels. 00:40:53
@skeuchel:matrix.orgSteven Keuchelin the past there have been incompatible updates, in particular for the serial console driver00:41:09
@skeuchel:matrix.orgSteven Keuchelthe dtb that was preflashed (at least on my board) is too outdated for recent kernels.00:42:14
@sorear:matrix.orgsorear how do flakes with packages (not overlays) work when you're building for a system that doesn't have a short name? e.g. { config = "riscv64-unknown-linux-gnu"; gcc = { arch = "rv64imac"; abi = "lp64"; }; } 23:34:30
27 Mar 2024
@sorear:matrix.orgsorearcross-compiled nixos using a mix of instructions from yesteday. built ubootQemuRiscv64SMode and used that with qemu to boot it. got halfway into stage 1 before failing to mount the root device. hacked extlinux.conf to add rdinit=/nix/store/.../bin/hush (do people care about the <100 bytes that adding a /bin/sh symlink to the initramfs would add?) allowed me to debug that, discovered that the pci_host_generic module was missing. added to boot.initrd.availableKernelModules. failed to log in. added a users block. success!02:22:02
@adam:robins.wtfadamcstephens 🐝 left the room.02:24:01
@dramforever:matrix.orgdramforever
In reply to @sorear:matrix.org
cross-compiled nixos using a mix of instructions from yesteday. built ubootQemuRiscv64SMode and used that with qemu to boot it. got halfway into stage 1 before failing to mount the root device.

hacked extlinux.conf to add rdinit=/nix/store/.../bin/hush (do people care about the <100 bytes that adding a /bin/sh symlink to the initramfs would add?) allowed me to debug that, discovered that the pci_host_generic module was missing.

added to boot.initrd.availableKernelModules. failed to log in.

added a users block. success!
oh nice that you figured most of this out, for future reference there are a bunch of options that the initrd script takes to help debug with problems https://nixos.org/manual/nixos/stable/#sec-boot-problems
11:38:50
@dramforever:matrix.orgdramforeverin particular boot.shell_on_fail is probably the one you were looking for11:39:08
@sorear:matrix.orgsorearmaybe18:12:07
@sorear:matrix.orgsorearstill thinking the symlink would be useful (it was surprising to me that there wasn't a symlink, given that nixos installs always have one); doesn't affect security since the shell path isn't secret18:17:29
28 Mar 2024
@hive:the-apothecary.clubDr. Wormok so as far as i understand it, ghc doesn't support cross-compilation, ( pending PR merge ), so you need to do an emulated build, but also as far as i can tell, flakes doesn't support doing an emulated build ??00:36:10
@hive:the-apothecary.clubDr. Worm* ok so as far as i understand it, ghc doesn't support cross-compilation, ( pending PR merge ), so you need to do an emulated build, but also as far as i can tell, flakes doesn't support doing an emulated build ?00:36:20

Show newer messages


Back to Room ListRoom Version: 10