WiP! nixos: add intel framebuffer driver
This commit is contained in:
parent
91df935594
commit
e874494b73
|
@ -420,20 +420,32 @@ with lib;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
genode.core.children.fb_drv =
|
genode.core.children.fb_drv = mkIf config.hardware.genode.framebuffer.enable
|
||||||
mkIf config.hardware.genode.framebuffer.enable {
|
(let
|
||||||
inputs = with pkgs.genodePackages;
|
params = with pkgs.genodePackages;
|
||||||
{
|
{
|
||||||
"boot" = [ boot_fb_drv ];
|
boot = {
|
||||||
"vesa" = [ vesa_drv ];
|
binary = "boot_fb_drv";
|
||||||
|
inputs = [ boot_fb_drv ];
|
||||||
|
caps = "256";
|
||||||
|
ram = "16";
|
||||||
|
};
|
||||||
|
intel = {
|
||||||
|
binary = "intel_fb_drv";
|
||||||
|
inputs = [ intel_fb_drv ];
|
||||||
|
caps = "512";
|
||||||
|
ram = "64";
|
||||||
|
};
|
||||||
|
vesa = {
|
||||||
|
binary = "vesa_fb_drv";
|
||||||
|
inputs = [ vesa_drv ];
|
||||||
|
caps = "256";
|
||||||
|
ram = "32";
|
||||||
|
};
|
||||||
}.${config.hardware.genode.framebuffer.driver};
|
}.${config.hardware.genode.framebuffer.driver};
|
||||||
configFile = let
|
in {
|
||||||
binary = with pkgs.genodePackages;
|
inherit (params) inputs;
|
||||||
{
|
configFile = builtins.toFile "fb_drv.dhall" ''
|
||||||
"boot" = "boot_fb_drv";
|
|
||||||
"vesa" = "vesa_fb_drv";
|
|
||||||
}.${config.hardware.genode.framebuffer.driver};
|
|
||||||
in builtins.toFile "fb_drv.dhall" ''
|
|
||||||
let Genode = env:DHALL_GENODE
|
let Genode = env:DHALL_GENODE
|
||||||
|
|
||||||
let XML = Genode.Prelude.XML
|
let XML = Genode.Prelude.XML
|
||||||
|
@ -442,15 +454,19 @@ with lib;
|
||||||
|
|
||||||
in Init.Child.flat
|
in Init.Child.flat
|
||||||
Init.Child.Attributes::{
|
Init.Child.Attributes::{
|
||||||
, binary = "${binary}"
|
, binary = "${params.binary}"
|
||||||
, resources = Init.Resources::{ caps = 256, ram = Genode.units.MiB 32 }
|
, resources = Init.Resources::{
|
||||||
|
, caps = ${params.caps}
|
||||||
|
, ram = Genode.units.MiB ${params.ram}
|
||||||
|
}
|
||||||
|
, romReports = [ { label = "connectors", route = "connectors" } ]
|
||||||
, routes =
|
, routes =
|
||||||
[ Init.ServiceRoute.parent "IO_MEM"
|
[ Init.ServiceRoute.parent "IO_MEM"
|
||||||
, Init.ServiceRoute.parent "IO_PORT"
|
, Init.ServiceRoute.parent "IO_PORT"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
};
|
});
|
||||||
|
|
||||||
virtualisation.qemu.options = lib.optional config.hardware.genode.usb.enable
|
virtualisation.qemu.options = lib.optional config.hardware.genode.usb.enable
|
||||||
(lib.optional (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) "-usb"
|
(lib.optional (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) "-usb"
|
||||||
|
|
Loading…
Reference in New Issue