diff --git a/device/device-raspberry-pi4/95-vchiq-permissions.rules b/device/device-raspberry-pi4/95-vchiq-permissions.rules new file mode 100644 index 000000000..1237f5fed --- /dev/null +++ b/device/device-raspberry-pi4/95-vchiq-permissions.rules @@ -0,0 +1 @@ +SUBSYSTEM=="vchiq", GROUP="video", MODE="0660" diff --git a/device/device-raspberry-pi4/APKBUILD b/device/device-raspberry-pi4/APKBUILD new file mode 100644 index 000000000..81519cdbd --- /dev/null +++ b/device/device-raspberry-pi4/APKBUILD @@ -0,0 +1,35 @@ +# Contributor: Daniele Debernardi +# Maintainer: Daniele Debernardi +# Reference: +pkgname="device-raspberry-pi4" +pkgdesc="Raspberry Pi 4" +pkgver=0.1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends="postmarketos-base raspberrypi-bootloader linux-rpi4" +makedepends="devicepkg-dev" +install="$pkgname.post-install" +source="deviceinfo config.txt usercfg.txt cmdline.txt 95-vchiq-permissions.rules" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname + install -Dm644 "$srcdir"/config.txt "$pkgdir"/boot/config.txt + install -Dm644 "$srcdir"/usercfg.txt "$pkgdir"/boot/usercfg.txt + install -Dm644 "$srcdir"/cmdline.txt "$pkgdir"/boot/cmdline.txt + install -Dm644 "$srcdir"/95-vchiq-permissions.rules \ + "$pkgdir"/etc/udev/rules.d/95-vchiq-permissions.rules +} + + +sha512sums="bbf1a8325309b42b775103f1720531343d7cf09bc811b3f0d23bc9536af1561c27664aa8ce6e2e717844eb141de882bd1a1bb4f13a2350a4f037ccc213a7bba6 deviceinfo +1d6161893e26bc778e87832c6abe83e3fe1c500e97b9a1ba7931482bd13e816eb2a15f4ee3305772d967924a92194af53fdca22f9fdede688844f9a163d7180b config.txt +a2db3354ce5ab7dde8a2a276f24cb7230294db25a18cb2702636bfee54f3a0fd659ae4c789d117c353d5e2fd028e39ea57405aa454d06b5325b839ec7c83070b usercfg.txt +ae3de0b8fec07d3a283dc3c06bf8678eec1e65c9faf0b7f4fdc9fb92751e324d1f8e2fb224dbbf561b7e5a6fb34769bfa1657858375f74b101a130d78e0737e2 cmdline.txt +7e5505cb07d5b4a81bd28443d508336b5c547356538f1c06f91ed93ad0d7d456d4f74f1d24df5a2e08c17e74f0a66607352ac4874e967e9a91dfec9522d2d58d 95-vchiq-permissions.rules" diff --git a/device/device-raspberry-pi4/cmdline.txt b/device/device-raspberry-pi4/cmdline.txt new file mode 100644 index 000000000..7603d36f8 --- /dev/null +++ b/device/device-raspberry-pi4/cmdline.txt @@ -0,0 +1 @@ +modules=loop,squashfs,sd-mod,usb-storage quiet dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 diff --git a/device/device-raspberry-pi4/config.txt b/device/device-raspberry-pi4/config.txt new file mode 100644 index 000000000..08329668e --- /dev/null +++ b/device/device-raspberry-pi4/config.txt @@ -0,0 +1,8 @@ +boot_delay=0 + +arm_control=0x200 + +kernel=vmlinuz-rpi4 +initramfs initramfs-rpi4 + +include usercfg.txt diff --git a/device/device-raspberry-pi4/device-raspberry-pi4.post-install b/device/device-raspberry-pi4/device-raspberry-pi4.post-install new file mode 100644 index 000000000..cb9398f06 --- /dev/null +++ b/device/device-raspberry-pi4/device-raspberry-pi4.post-install @@ -0,0 +1,4 @@ +#!/bin/sh + +cd /boot/dtbs-rpi4/ +find . -type f -regex ".*\.dtbo\?$" -exec install -Dm644 {} /boot/{} \; diff --git a/device/device-raspberry-pi4/deviceinfo b/device/device-raspberry-pi4/deviceinfo new file mode 100644 index 000000000..81fb69746 --- /dev/null +++ b/device/device-raspberry-pi4/deviceinfo @@ -0,0 +1,25 @@ +# Reference: +# Please use double quotes only. You can source this file in shell scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Raspberry Pi 4" +deviceinfo_manufacturer="Raspberry Pi" +deviceinfo_codename="raspberry-pi4" +deviceinfo_date="" +deviceinfo_dtb="" +deviceinfo_modules_initfs="vc4" +deviceinfo_arch="aarch64" +deviceinfo_disable_dhcpd="true" + +# Device related +deviceinfo_keyboard="true" +deviceinfo_external_storage="true" +deviceinfo_screen_width="1920" +deviceinfo_screen_height="1080" +deviceinfo_dev_touchscreen="" +deviceinfo_dev_touchscreen_calibration="" +deviceinfo_dev_keyboard="" + +# Bootloader related +deviceinfo_flash_method="none" +deviceinfo_boot_filesystem="fat16" diff --git a/device/device-raspberry-pi4/usercfg.txt b/device/device-raspberry-pi4/usercfg.txt new file mode 100644 index 000000000..e28ec21c7 --- /dev/null +++ b/device/device-raspberry-pi4/usercfg.txt @@ -0,0 +1,38 @@ +gpu_mem=64 + +# uncomment line to enable serial on ttyS0 +# NOTE: This fixes the core_freq to 250Mh +#enable_uart=1 + +# to take advantage of your high speed sd card +dtparam=sd_overclock=100 + +# use drm backend ( for weston and wayland ) +dtoverlay=vc4-fkms-v3d + +# have a properly sized image +disable_overscan=1 + +# for sound over HDMI +hdmi_drive=2 + +# rotate the HDMI display +# 0 => no rotation +# 1 => 90 degrees clockwise +# 2 => 180 degrees clockwise +# 3 => 270 degrees clockwise +#display_hdmi_rotate=0 + +# Uncomment some or all of these to enable the optional hardware interfaces +#dtparam=i2c_arm=on +#dtparam=i2s=on +#dtparam=spi=on + +# Enable audio (loads snd_bcm2835) +dtparam=audio=on + +# custom CVT mode for HDMI +# see https://www.raspberrypi.org/documentation/configuration/config-txt/video.md +#hdmi_group=2 +#hdmi_mode=87 +#hdmi_cvt 800 480 60 6 0 0 0