mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-06 18:08:38 +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
|
## Features
|
||||||
|
|
||||||
- Display: **works**
|
- Display: **works**
|
||||||
|
- X11: **untested**
|
||||||
|
- Wayland: **not working** (niri, sway, COSMIC)
|
||||||
- GPU driver: **not working**
|
- GPU driver: **not working**
|
||||||
- WiFi: **working**
|
- WiFi: **working**
|
||||||
- Cellular: **untested**
|
- Cellular: **untested**
|
||||||
|
|||||||
@@ -6540,7 +6540,7 @@ CONFIG_HID_WIIMOTE=m
|
|||||||
# CONFIG_HID_XINMO is not set
|
# CONFIG_HID_XINMO is not set
|
||||||
# CONFIG_HID_ZEROPLUS is not set
|
# CONFIG_HID_ZEROPLUS is not set
|
||||||
# CONFIG_HID_ZYDACRON 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_ALPS is not set
|
||||||
# CONFIG_HID_MCP2221 is not set
|
# CONFIG_HID_MCP2221 is not set
|
||||||
# end of Special HID drivers
|
# end of Special HID drivers
|
||||||
|
|||||||
@@ -43,56 +43,68 @@ in
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware = {
|
hardware = lib.mkMerge [
|
||||||
deviceTree = lib.mkMerge [
|
{
|
||||||
{
|
deviceTree = lib.mkMerge [
|
||||||
name = "rockchip/rk3588s-fydetab-duo.dtb";
|
{
|
||||||
}
|
name = "rockchip/rk3588s-fydetab-duo.dtb";
|
||||||
(lib.mkIf config.hardware.fydetab.duo.enablePanthor {
|
}
|
||||||
overlays = [
|
(lib.mkIf config.hardware.fydetab.duo.enablePanthor {
|
||||||
{
|
overlays = [
|
||||||
name = "fydetab-panthor-gpu";
|
{
|
||||||
dtsText = ''
|
name = "fydetab-panthor-gpu";
|
||||||
/dts-v1/;
|
dtsText = ''
|
||||||
/plugin/;
|
/dts-v1/;
|
||||||
|
/plugin/;
|
||||||
|
|
||||||
#include <dt-bindings/clock/rk3588-cru.h>
|
#include <dt-bindings/clock/rk3588-cru.h>
|
||||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||||
#include <dt-bindings/power/rk3588-power.h>
|
#include <dt-bindings/power/rk3588-power.h>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
compatible = "rockchip,rk3588s-tablet-12c-linux";
|
compatible = "rockchip,rk3588s-tablet-12c-linux";
|
||||||
fragment@0 {
|
fragment@0 {
|
||||||
target = <&gpu>;
|
target = <&gpu>;
|
||||||
__overlay__ {
|
__overlay__ {
|
||||||
status = "disabled";
|
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 { };
|
||||||
};
|
};
|
||||||
'';
|
}
|
||||||
}
|
(lib.mkIf config.networking.wireless.iwd.enable {
|
||||||
];
|
firmware = [
|
||||||
})
|
# Only iwd is supported by the interface
|
||||||
];
|
ap6275pFirmware
|
||||||
rockchip = {
|
];
|
||||||
rk3588.enable = true;
|
})
|
||||||
platformFirmware = pkgs.callPackage ./u-boot.nix { };
|
(lib.mkIf config.hardware.graphics.enable {
|
||||||
};
|
firmware = [
|
||||||
firmware = lib.mkMerge [
|
(pkgs.callPackage ./mali-g610.nix { })
|
||||||
# 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 {
|
||||||
(lib.mkIf config.hardware.sensor.iio.enable (pkgs.callPackage ./himax.nix { }))
|
firmware = [
|
||||||
];
|
(pkgs.callPackage ./himax.nix { })
|
||||||
};
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services.bluetooth-fydetab = lib.mkIf config.hardware.bluetooth.enable {
|
systemd.services.bluetooth-fydetab = lib.mkIf config.hardware.bluetooth.enable {
|
||||||
description = "FydeTab Duo Bluetooth fix";
|
description = "FydeTab Duo Bluetooth fix";
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ stdenv.mkDerivation (_finalAttrs: {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/Linux-for-Fydetab-Duo/pkgbuilds/raw/f4c012bd42d87f677370f987f703982d53cd233d/fydetabduo-post-install/Himax_firmware.bin";
|
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;
|
compressFirmware = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user