Compare commits

...

10 Commits

Author SHA1 Message Date
Andy Nguyen
3c05c6140a config: update to 7.0.10 2026-05-24 15:36:49 +02:00
Andy Nguyen
e6fb93f866 linux: add fan autoservo param update 2026-05-24 15:30:04 +02:00
Andy Nguyen
7d5d7976dd linux: re-add link training
Some monitors blackscreen without it.
2026-05-24 15:27:37 +02:00
Andy Nguyen
d44cfeb934 linux: add spcie and tpcie shutdown 2026-05-18 20:37:16 +02:00
Andy Nguyen
99e816eccb linux: use bapm param set 2 2026-05-18 20:33:52 +02:00
Andy Nguyen
f2c40a90d5 readme: remove todo for wlan driver 2026-05-17 12:09:05 +02:00
Andy Nguyen
042599e9f5 config: update to 7.0.8 2026-05-17 12:07:48 +02:00
Andy Nguyen
fe852d3cdb linux: fix link training failure 2026-05-17 12:04:36 +02:00
Dan
3da1ba3610 CI: build and release kernel on push (#5) 2026-05-14 19:55:53 +02:00
Andy Nguyen
874c43ebb6 linux: add spcie init 2026-05-11 00:05:10 +02:00
5 changed files with 2597 additions and 64 deletions

View File

@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 7.0.5 Kernel Configuration
# Linux/x86 7.0.10 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0"
CONFIG_CC_IS_GCC=y

93
.github/workflows/build-kernel.yml vendored Normal file
View File

@@ -0,0 +1,93 @@
name: Build Kernel
run-name: Build Kernel
on:
workflow_dispatch:
inputs:
format:
description: 'Package format'
default: 'all'
type: choice
options: [deb, arch, all]
patches_ref:
description: 'Patches branch/tag/SHA (empty = default)'
default: ''
type: string
workflow_call:
inputs:
patches_ref:
type: string
default: ''
jobs:
build:
runs-on: self-hosted
timeout-minutes: 120
permissions:
contents: write
env:
CCACHE_DIR: /home/opc/ccache
steps:
- name: Checkout image builder
uses: actions/checkout@v6
with:
repository: ps5-linux/ps5-linux-image
path: image
ref: main
- name: Build kernel
run: |
FORMAT="${{ inputs.format || github.event.client_payload.format || 'all' }}"
PATCHES_REF="${{ inputs.patches_ref || '' }}"
bash image/build_image.sh --kernel-only \
--distro "$FORMAT" \
--patches-ref "$PATCHES_REF"
- name: Read kernel and patches version
id: version
run: |
psha=$(git -C image/work/ps5-linux-patches rev-parse --short HEAD)
kver=$(cat image/linux-bin/VERSION)
ts=$(date -u +%Y%m%d-%H%M%S)
echo "kver=$kver" >> "$GITHUB_OUTPUT"
echo "psha=$psha" >> "$GITHUB_OUTPUT"
echo "ts=$ts" >> "$GITHUB_OUTPUT"
- name: Upload build artifacts
uses: actions/upload-artifact@v6
with:
name: kernel-${{ steps.version.outputs.kver }}-${{ steps.version.outputs.psha }}
path: |
image/linux-bin/*.deb
image/linux-bin/*.pkg.tar.zst
retention-days: 7
- name: Compute checksums
id: sha
run: |
{
echo 'sums<<SHAEOF'
sha256sum image/linux-bin/*.deb image/linux-bin/*.pkg.tar.zst | sed 's|image/linux-bin/||'
echo 'SHAEOF'
} >> "$GITHUB_OUTPUT"
- name: Create or update release
if: github.event_name != 'pull_request' && github.event_name != 'pull_request_target'
uses: softprops/action-gh-release@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
tag_name: kernel-${{ steps.version.outputs.kver }}-${{ steps.version.outputs.psha }}
name: Kernel ${{ steps.version.outputs.kver }} (${{ steps.version.outputs.psha }})
body: |
PS5 Linux kernel packages for **${{ steps.version.outputs.kver }}**.
Patches: [`${{ steps.version.outputs.psha }}`](https://github.com/ps5-linux/ps5-linux-patches/commit/${{ steps.version.outputs.psha }})
```
${{ steps.sha.outputs.sums }}
```
files: |
image/linux-bin/*.deb
image/linux-bin/*.pkg.tar.zst
make_latest: true

19
.github/workflows/trigger-build.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
name: deploy
on:
workflow_dispatch:
push:
branches: [main]
pull_request_target:
types: [labeled]
branches: [main]
jobs:
kernel:
if: github.event.label.name == 'run-ci' || github.event_name != 'pull_request_target'
permissions:
contents: write
uses: ./.github/workflows/build-kernel.yml
with:
patches_ref: ${{ github.event.pull_request.head.sha || github.sha }}
secrets: inherit

View File

@@ -6,7 +6,7 @@
git clone https://github.com/ps5-linux/ps5-linux-patches
git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
cd linux
git checkout tags/v7.0.5
git checkout "tags/v$(grep -m1 "^# Linux/" ../ps5-linux-patches/.config | awk '{print $3}')"
git apply ../ps5-linux-patches/linux.patch
cp ../ps5-linux-patches/.config .config
make -j$(nproc)
@@ -21,30 +21,10 @@ sudo make modules_install
sudo make install
```
If you use Arch Linux, then additionally do:
```bash
sudo mkinitcpio -k "$(make kernelrelease)" -g /boot/initrd.img-$(make kernelrelease) || true
```
If you are updating Linux on your external USB SSD or if you are directly booting into M.2 SSD, i.e. if you use `-m2` in `cmdline.txt`, then you have to update the files on the FAT32 partition of your USB drive:
```bash
sudo mv /boot/efi/bzImage /boot/efi/bzImage.old
sudo mv /boot/efi/initrd.img /boot/efi/initrd.img.old
sudo cp /boot/vmlinuz /boot/efi/bzImage
sudo cp /boot/initrd.img /boot/efi/initrd.img
```
If you are updating Linux on your M.2 SSD, but you do not directly boot into it, i.e. if you use `m2_exec.sh`, then you do need to do this step.
## TODO
- amdgpu smu driver to show correct gpu frequency and temperature
- ethernet driver for (mediatek?) 0x104d:0x9104
- xhci driver adjustment for 0x104d:0x9108 to enable bluetooth
- wlan driver marvell 1b4b:2b56 (https://github.com/nxp-imx/mwifiex)
- hdmi converter improvments: hdr, rgb range, 120hz
## Bugs

File diff suppressed because it is too large Load Diff