mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-03 16:57:14 +08:00
Merge pull request #1605 from RossComputerGuy/fix/fyde
fydetab/duo: fix hardware.firmware being applied
This commit is contained in:
@@ -5,6 +5,8 @@ The Fydetab Duo is an open source and hackable tablet by FydeOS.
|
||||
## Features
|
||||
|
||||
- Display: **works**
|
||||
- X11: **untested**
|
||||
- Wayland: **not working** (niri, sway, COSMIC)
|
||||
- GPU driver: **not working**
|
||||
- WiFi: **working**
|
||||
- Cellular: **untested**
|
||||
|
||||
@@ -6540,7 +6540,7 @@ CONFIG_HID_WIIMOTE=m
|
||||
# CONFIG_HID_XINMO is not set
|
||||
# CONFIG_HID_ZEROPLUS is not set
|
||||
# CONFIG_HID_ZYDACRON is not set
|
||||
# CONFIG_HID_SENSOR_HUB is not set
|
||||
CONFIG_HID_SENSOR_HUB=m
|
||||
# CONFIG_HID_ALPS is not set
|
||||
# CONFIG_HID_MCP2221 is not set
|
||||
# end of Special HID drivers
|
||||
|
||||
@@ -43,56 +43,68 @@ in
|
||||
})
|
||||
];
|
||||
|
||||
hardware = {
|
||||
deviceTree = lib.mkMerge [
|
||||
{
|
||||
name = "rockchip/rk3588s-fydetab-duo.dtb";
|
||||
}
|
||||
(lib.mkIf config.hardware.fydetab.duo.enablePanthor {
|
||||
overlays = [
|
||||
{
|
||||
name = "fydetab-panthor-gpu";
|
||||
dtsText = ''
|
||||
/dts-v1/;
|
||||
/plugin/;
|
||||
hardware = lib.mkMerge [
|
||||
{
|
||||
deviceTree = lib.mkMerge [
|
||||
{
|
||||
name = "rockchip/rk3588s-fydetab-duo.dtb";
|
||||
}
|
||||
(lib.mkIf config.hardware.fydetab.duo.enablePanthor {
|
||||
overlays = [
|
||||
{
|
||||
name = "fydetab-panthor-gpu";
|
||||
dtsText = ''
|
||||
/dts-v1/;
|
||||
/plugin/;
|
||||
|
||||
#include <dt-bindings/clock/rk3588-cru.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/power/rk3588-power.h>
|
||||
#include <dt-bindings/clock/rk3588-cru.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/power/rk3588-power.h>
|
||||
|
||||
/ {
|
||||
compatible = "rockchip,rk3588s-tablet-12c-linux";
|
||||
fragment@0 {
|
||||
target = <&gpu>;
|
||||
__overlay__ {
|
||||
status = "disabled";
|
||||
/ {
|
||||
compatible = "rockchip,rk3588s-tablet-12c-linux";
|
||||
fragment@0 {
|
||||
target = <&gpu>;
|
||||
__overlay__ {
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
fragment@1 {
|
||||
target = <&gpu_panthor>;
|
||||
__overlay__ {
|
||||
status = "okay";
|
||||
mali-supply = <&vdd_gpu_s0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
fragment@1 {
|
||||
target = <&gpu_panthor>;
|
||||
__overlay__ {
|
||||
status = "okay";
|
||||
mali-supply = <&vdd_gpu_s0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
'';
|
||||
}
|
||||
];
|
||||
})
|
||||
];
|
||||
rockchip = {
|
||||
rk3588.enable = true;
|
||||
platformFirmware = pkgs.callPackage ./u-boot.nix { };
|
||||
};
|
||||
firmware = lib.mkMerge [
|
||||
# Only iwd is supported by the interface
|
||||
(lib.mkIf config.networking.wireless.iwd.enable ap6275pFirmware)
|
||||
(lib.mkIf config.hardware.graphics.enable (pkgs.callPackage ./mali-g610.nix { }))
|
||||
(lib.mkIf config.hardware.sensor.iio.enable (pkgs.callPackage ./himax.nix { }))
|
||||
];
|
||||
};
|
||||
'';
|
||||
}
|
||||
];
|
||||
})
|
||||
];
|
||||
rockchip = {
|
||||
rk3588.enable = true;
|
||||
platformFirmware = pkgs.callPackage ./u-boot.nix { };
|
||||
};
|
||||
}
|
||||
(lib.mkIf config.networking.wireless.iwd.enable {
|
||||
firmware = [
|
||||
# Only iwd is supported by the interface
|
||||
ap6275pFirmware
|
||||
];
|
||||
})
|
||||
(lib.mkIf config.hardware.graphics.enable {
|
||||
firmware = [
|
||||
(pkgs.callPackage ./mali-g610.nix { })
|
||||
];
|
||||
})
|
||||
(lib.mkIf config.hardware.sensor.iio.enable {
|
||||
firmware = [
|
||||
(pkgs.callPackage ./himax.nix { })
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
systemd.services.bluetooth-fydetab = lib.mkIf config.hardware.bluetooth.enable {
|
||||
description = "FydeTab Duo Bluetooth fix";
|
||||
|
||||
@@ -9,6 +9,7 @@ stdenv.mkDerivation (_finalAttrs: {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Linux-for-Fydetab-Duo/pkgbuilds/raw/f4c012bd42d87f677370f987f703982d53cd233d/fydetabduo-post-install/Himax_firmware.bin";
|
||||
hash = "sha256-z0p/zXcNTBdhKCV6GmM2C8C02lu4Wkb2HP+Ir/nQJTc=";
|
||||
};
|
||||
|
||||
compressFirmware = false;
|
||||
|
||||
Reference in New Issue
Block a user