Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pine64-rock64: init #1280

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,7 @@ See code for all available configurations.
| [Panasonic Let's Note CF-LX4](panasonic/letsnote/cf-lx4) | `<nixos-hardware/panasonic/letsnote/cf-lx4>` |
| [PC Engines APU](pcengines/apu) | `<nixos-hardware/pcengines/apu>` |
| [PINE64 Pinebook Pro](pine64/pinebook-pro/) | `<nixos-hardware/pine64/pinebook-pro>` |
| [PINE64 Rock64](pine64/rock64/) | `<nixos-hardware/pine64/rock64>` |
| [PINE64 RockPro64](pine64/rockpro64/) | `<nixos-hardware/pine64/rockpro64>` |
| [PINE64 STAR64](pine64/star64/) | `<nixos-hardware/pine64/star64>` |
| [Protectli VP4670](protectli/vp4670/) | `<nixos-hardware/protectli/vp4670>` |
Expand Down
1 change: 1 addition & 0 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -271,6 +271,7 @@
olimex-teres_i = import ./olimex/teres_i;
pcengines-apu = import ./pcengines/apu;
pine64-pinebook-pro = import ./pine64/pinebook-pro;
pine64-rock64 = import ./pine64/rock64;
Mic92 marked this conversation as resolved.
Show resolved Hide resolved
pine64-rockpro64 = import ./pine64/rockpro64;
pine64-star64 = import ./pine64/star64;
protectli-vp4670 = import ./protectli/vp4670;
Expand Down
26 changes: 26 additions & 0 deletions pine64/rock64/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
boot = {
initrd.kernelModules = [
"pcie_rockchip_host"
"phy_rockchip_pcie"
"sdhci_pci"
Comment on lines +4 to +6
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this not detected by nixos-generate-config?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mhm. but I guess our installer wouldn't boot, so the normal install workflow wouldn't boot.

Copy link
Contributor Author

@matdibu matdibu Dec 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

boot.initrd.kernelModules = [
# PCIe/NVMe
"nvme"
"pcie_rockchip_host"
"phy_rockchip_pcie"
];

my local config (and, in turn, what was done in this PR) is inspired by how the RockPro64 is configured

Copy link
Contributor Author

@matdibu matdibu Dec 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm currently using a half-functional build of u-boot/tow-boot, generated from this draft PR Tow-Boot/Tow-Boot#322, so I don't really know how the usual NixOS install process would go

Copy link
Member

@Mic92 Mic92 Dec 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can leave those modules in here if you also add a README how to bootstrap the rest of the configuration i.e. instructions to build a installer image.
Without this context it would have little value to have this module in nixos-hardware.

Copy link
Contributor Author

@matdibu matdibu Dec 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's just the generic aarch64 uefi installer iso

I guess it'd be more common to go the u-boot+sd-card image route, like it says on the wiki

which is unlike what I have -- tow-boot+normal EFI installer

I wouldn't really recommend people use a draft PR for their own stuff though

];
kernelModules = [
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is any of this needed? I don't remember needing to specify this.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I remember some of them not being detected automatically, but I can remove that boot.kernelModules list entirely if it's out-of-scope for nixos-hardware

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just copied it from my local config

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So it won't show any graphics if you attach a monitor, or what does this fix? Usually the kernel will match pci/usb vendor ids with drivers and load them as needed.

Copy link
Member

@Mic92 Mic92 Dec 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am fine with adding modules if they are actually not recognize by the hardware or if there is a good reason to add them to early boot

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

makes sense, then I'll boot once without this list, and I'll compare which modules are loaded
might take a bit, I won't have access to the SBC for a few days

"panfrost"
"rockchipdrm"
"rockchip_dfi"
"rockchip_rga"
"rockchip_isp1"
"rockchip_saradc"
"rockchip_thermal"
"rockchip_vdec"
"snd_soc_rockchip_i2s"
"rk_crypto"
"dwmac_rk"
"rk3399_dmc"
"v4l2_h264"
"v4l2_mem2mem"
"v4l2_vp9"
];
};
}
Loading