From 5594c8ed4f281c09bb261d116a793e5eb7462af5 Mon Sep 17 00:00:00 2001 From: Thomas Makin Date: Sat, 27 Sep 2025 21:05:32 +0000 Subject: [PATCH] [DNM] ACK stuff Change-Id: I72adcaa0b01ccbf224a9b3e34d5143c24c9d4621 --- AndroidBoard.mk | 1 + BoardConfig.mk | 8 +- bootfiles/android_boot.ack.txt | 249 +++++++++++++++++++ build/tasks/bootloader.mk | 8 +- device.mk | 86 ++++--- initfiles/ack.rc | 14 ++ initfiles/init.nx.rc | 4 +- initfiles/init.recovery.ack.rc | 3 + initfiles/init.recovery.nx.rc | 2 + lineage.mk | 2 - media/Android.bp | 57 ----- media/audio_effects.xml | 52 ---- media/audio_policy_configuration.xml | 112 --------- media/enctune.conf | 45 ---- media/media_codecs.xml | 268 --------------------- media/media_codecs_performance.xml | 123 ---------- media/media_profiles_V1_0.xml | 342 --------------------------- media/nvaudio_conf.xml | 239 ------------------- modules-ack.mk | 42 ++-- properties.mk | 2 + thermal/Android.bp | 27 --- thermal/thermalhal.nx.ack.xml | 2 +- 22 files changed, 363 insertions(+), 1325 deletions(-) create mode 100644 bootfiles/android_boot.ack.txt create mode 100644 initfiles/ack.rc create mode 100644 initfiles/init.recovery.ack.rc delete mode 100644 media/Android.bp delete mode 100644 media/audio_effects.xml delete mode 100644 media/audio_policy_configuration.xml delete mode 100644 media/enctune.conf delete mode 100644 media/media_codecs.xml delete mode 100644 media/media_codecs_performance.xml delete mode 100644 media/media_profiles_V1_0.xml delete mode 100644 media/nvaudio_conf.xml delete mode 100644 thermal/Android.bp diff --git a/AndroidBoard.mk b/AndroidBoard.mk index fcd669e..f40f2cf 100644 --- a/AndroidBoard.mk +++ b/AndroidBoard.mk @@ -13,6 +13,7 @@ # limitations under the License. INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel +KERNEL_OUT ?= $(PRODUCT_OUT)/obj/KERNEL_OBJ ifneq ($(TARGET_PREBUILT_KERNEL),) DTB_PATH := $(dir $(TARGET_PREBUILT_KERNEL)) diff --git a/BoardConfig.mk b/BoardConfig.mk index 119b5f3..159400e 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -43,7 +43,7 @@ TARGET_OTA_ASSERT_DEVICE := nx,nx_tab TARGET_BOARD_INFO_FILE := device/nintendo/nx/board-info.txt # Manifest -DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += device/nintendo/nx/manifests/device_framework_matrix.xml +#DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += device/nintendo/nx/manifests/device_framework_matrix.xml # Bluetooth TARGET_VENDOR_PROP += device/nintendo/nx/bluetooth.prop @@ -85,7 +85,7 @@ TARGET_KERNEL_SOURCE := vendor/nvidia/$(TARGET_KERNEL_PLATFORM_TARGET) BOARD_KERNEL_IMAGE_NAME := Image.gz endif BOARD_KERNEL_CMDLINE := firmware_class.path=/vendor/firmware cpufreq.default_governor=performance cma=512MB nouveau.atomic=1 -include device/nvidia/foster/modules-ack.mk +include device/nintendo/nx/modules-ack.mk endif # Kernel Image Parameters @@ -108,11 +108,13 @@ TARGET_RELEASETOOLS_EXTENSIONS := device/nintendo/nx/releasetools VENDOR_SECURITY_PATCH := 2024-12-05 # SELinux -BOARD_VENDOR_SEPOLICY_DIRS += device/nintendo/nx/sepolicy/vendor +ifneq ($(filter 4.9 5.10, $(TARGET_KERNEL_VERSION)),) +BOARD_VENDOR_SEPOLICY_DIRS += device/nvidia/foster/sepolicy/vendor SELINUX_IGNORE_NEVERALLOWS := true # Include Joycond sepolicy if present -include hardware/nintendo/joycond/joycond-sepolicy.mk +endif # Treble BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true diff --git a/bootfiles/android_boot.ack.txt b/bootfiles/android_boot.ack.txt new file mode 100644 index 0000000..ff3a3b2 --- /dev/null +++ b/bootfiles/android_boot.ack.txt @@ -0,0 +1,249 @@ +# Set defaults for missing env variables. +setenv boot_dir ${prefix} +test -n ${loader_rev} || setenv loader_rev 0 +test -n ${id} || setenv id SWANDR +test -n ${emmc} || setenv emmc 0 +test -n ${fbconsole} || setenv fbconsole 9 +test -n ${uart_port} || setenv uart_port 0 +test -n ${earlycon} || setenv earlycon 0 +test -n ${r2p_action} || setenv r2p_action bootloader +test -n ${autoboot} || setenv autoboot 0 +test -n ${autoboot_list} || setenv autoboot_list 0 + +# Set logging params for each serial type. +setenv uarta "no_console_suspend console=ttyS0,115200,8n1 loglevel=8 androidboot.console=ttyS0" +setenv uartb "no_console_suspend console=ttyS1,115200,8n1 loglevel=8 androidboot.console=ttyS1" +setenv uartc "no_console_suspend console=ttyS2,115200,8n1 loglevel=8 androidboot.console=ttyS2" +setenv no_args "console=null" +setenv usblg "usb_logging loglevel=8" +setenv uarta_early "earlycon=uart,mmio32,0x70006000" +setenv uartb_early "earlycon=uart,mmio32,0x70006040" +setenv uartc_early "earlycon=uart,mmio32,0x70006200" + +# Set important addresses. +setenv kernload 0xA0000000 +setenv initaddr 0x92000000 +setenv fdtrload 0xA8000000 +setenv fdtraddr 0x8d000000 + +# Set temp addresses. +setenv enviraddr 0x8d100000 +setenv fdtovaddr 0x8d200000 + + +# L4T Loader check. Min rev 4. +if test "${loader_rev}" < 4; then echoe Old L4T Loader! Update bootloader folder!; echoe Rebooting in 10s..; sleep 10; reset; fi + + +# Set SoC info. +if test ${t210b01} = 1; then setenv plat_info T210B01; else setenv plat_info T210; fi + +# Set SKU info. Frig is used instead of Fric for compatibility reasons. +if test ${sku} = 0; then setenv sku_info ODIN; setenv sku_rev a00; setenv variant odin +elif test ${sku} = 1; then setenv sku_info ODIN; setenv sku_rev b01; setenv variant modin +elif test ${sku} = 2; then setenv sku_info VALI; setenv sku_rev a00; setenv variant vali +elif test ${sku} = 3; then setenv sku_info FRIG; setenv sku_rev a00; setenv variant fric +fi + +# Print platform info. +echo PLAT: ${plat_info} SKU: ${sku_info} +echo Serial: ${device_serial_restricted} +echo BT MAC: ${device_bt_mac} +echo WF MAC: ${device_wifi_mac} + + +# Set MMC device. +setenv mmcnum 1 +if test ${emmc} = 1; then + echoe emmc enabled + setenv mmcnum 0 +fi +mmc dev ${mmcnum} + +# Load Kernel. +if gpio input 190 && test ${recovery} = "0"; then + # Normal Kernel. + if part start mmc ${mmcnum} boot boot_start; then echo Boot partition found + else echoe Boot partition not found!; echoe Rebooting in 10s..; sleep 10; reset; fi + part size mmc ${mmcnum} boot boot_size +else + # Recovery. + if part start mmc ${mmcnum} recovery boot_start; then echo Recovery partition found + else echoe Recovery partition not found!; echoe Rebooting in 10s..; sleep 10; reset; fi + part size mmc ${mmcnum} recovery boot_size + + echo Applying WAR: USB3 required for recovery + setenv usb3_enable 1 +fi +mmc read ${kernload} ${boot_start} ${boot_size}; + +# Load DT img. +if part start mmc ${mmcnum} dtb dtb_start; then echo DTB partition found +else echoe DTB partition not found!; echoe Rebooting in 10s..; sleep 10; reset; fi +part size mmc ${mmcnum} dtb dtb_size +mmc read ${fdtrload} ${dtb_start} ${dtb_size} + +# Check for Super. +if part start mmc ${mmcnum} super super_start; then echo Super partition found +else echoe Super partition not found!; echoe Rebooting in 10s..; sleep 10; reset; fi + +# Get DT from image. +if dtimg load ${fdtrload} ${sku} ${fdtraddr} fdtrsize; then echo Device Tree for SKU ${sku_info} loaded +else echoe Device Tree load for SKU ${sku_info} failed!; echoe Rebooting in 10s..; sleep 10; reset; fi + +# Load dtb and resize to fit overlays. +fdt addr ${fdtraddr} ${fdtrsize} +fdt resize 16384 + + +# Dtb sanity checks. +if test ${sku_info} != ${fdt_id_text} -o ${sku_rev} != ${fdt_rev}; then + echoe Device Tree loaded not correct! (SKU: ${fdt_id_text}, Rev: ${fdt_rev}) + echoe Expected SKU: ${sku_info}, Rev: ${sku_rev} + echoe Rebooting in 10s..; sleep 10; reset +fi + + +# Patch dtb with overlays if they exist. +if test -n ${dtb_overlays}; then + echo loading dtb overlays: ${dtb_overlays} + for ov in ${dtb_overlays}; do + echo Setting ${ov}... + # Check if DT overlay and apply it. + if load mmc ${devnum}:${distro_bootpart} ${fdtovaddr} ${boot_dir}/overlays/${ov}.dtbo; then + if fdt apply ${fdtovaddr}; then echo Successfully loaded ${ov}.dtbo... + else echoe Overlay ${ov}.dtbo loading failed!; echoe Rebooting in 10s..; sleep 10; reset; fi + fi + done +fi + +# UART Logging. +if test ${uart_port} = 1; then + echoe UART-A logging enabled + setenv bootargs_extra ${bootargs_extra} ${uarta} + fdt set /serial@70006000 compatible nvidia,tegra20-uart + fdt set /serial@70006000 status okay + + if test ${earlycon} = 1; then + echoe Early logging enabled + setenv bootargs_extra ${bootargs_extra} ${uarta_early} + fdt set /serial@70006000 reset-names noreset + fi +elif test ${uart_port} = 2; then + echoe UART-B logging enabled + setenv bootargs_extra ${bootargs_extra} ${uartb} + fdt set /serial@70006040 compatible nvidia,tegra20-uart + fdt set /serial@70006040/joyconr status disabled + + if test ${earlycon} = 1; then + echoe Early logging enabled + setenv bootargs_extra ${bootargs_extra} ${uartb_early} + fdt set /serial@70006040 reset-names noreset + fi +elif test ${uart_port} = 3; then + echoe UART-C logging enabled + setenv bootargs_extra ${bootargs_extra} ${uartc} + fdt set /serial@70006200 compatible nvidia,tegra20-uart + fdt set /serial@70006200/joyconl status disabled + + if test ${earlycon} = 1; then + echoe Early logging enabled + setenv bootargs_extra ${bootargs_extra} ${uartc_early} + fdt set /serial@70006200 reset-names noreset + fi +else + setenv bootargs_extra ${bootargs_extra} ${no_args} +fi + +# USB Serial Logging. +if test ${uart_port} = 4; then setenv bootargs_extra ${usblg} ${bootargs_extra}; echoe USB Serial logging enabled; fi + +# Disable Joycon Rails. +if test ${jc_rail_disable} = 1; then + echoe Joycon Rails disabled + fdt set /serial@70006040 status disabled + fdt set /serial@70006040/joyconr status disabled + fdt set /serial@70006200 status disabled + fdt set /serial@70006200/joyconl status disabled +fi + +# Disable CEC. +if test ${sku} = 2 -o ${cec_disable} = 1; then setenv bootargs_extra ${bootargs_extra} "androidboot.cec_disable=1"; fi + +# Disable Touch panel tuning. +if test ${touch_skip_tuning} = 1; then setenv bootargs_extra ${bootargs_extra} "ftm4.skip_tuning=1"; fi + +# Disable Bluetooth ERTM. +if test ${bt_ertm_disable} = 1; then setenv bootargs_extra ${bootargs_extra} "bluetooth.disable_ertm=1"; fi + + +# Enable eMMC. +if test ${emmc} = 1; then + fdt set /mmc@700b0600 status okay + fdt set /firmware/android boot_devices 700b0600.mmc + + # Check if eMMC is initialized in 1-bit mode. + if test "${mmc_1bit}" = 1; then + echoe eMMC is initialized in 1-bit mode! + fdt set /mmc@700b0600 bus-width <0x1> + fdt set /mmc@700b0600 uhs-mask <0x7F> + fi +else + fdt set /firmware/android boot_devices 700b0000.mmc +fi + +# Check if SD is initialized in 1-bit mode. +if test "${sd_1bit}" = 1; then + echoe SD Card is initialized in 1-bit mode! + fdt set /mmc@700b0600 bus-width <0x1> + fdt set /mmc@700b0600 uhs-mask <0x7F> +fi + +# Set serial number. +if test -n ${device_serial_restricted}; then fdt set / serial-number ${device_serial_restricted}; fi + +# Load mac address info file from sd +if fatload mmc 1:1 ${enviraddr} switchroot/joycon_mac.ini; then + if ini "joycon_00" ${enviraddr}; then echo Found Joycon Pairing Info; else echoe Malformed joycon_mac.ini!; fi + if test -n "${host}" -a "${host}" = "00:00:00:00:00:00"; then ini "joycon_01" ${enviraddr}; fi +fi + +# Set BT mac. +if test ! -n "${bt_mac}"; then + if test -n "${host}" -a "${host}" != "00:00:00:00:00:00"; then setenv bt_mac ${host}; else setenv bt_mac ${device_bt_mac}; fi; +fi + +# Set Wi-Fi mac. Use BT MAC with FF as the last byte. +if test ! -n "${wifi_mac}"; then + if test -n "${host}" -a "${host}" != "00:00:00:00:00:00"; then setexpr wifi_mac sub "\:..$" ":FF" ${host}; else setenv wifi_mac ${device_wifi_mac}; fi; +fi + +echo CAL0 BT MAC: ${bt_mac} +echo CAL0 WF MAC: ${wifi_mac} + +# Import to DT. +fdt set /chosen nvidia,wifi-mac ${wifi_mac} +fdt set /chosen nvidia,bluetooth-mac ${bt_mac} + + +# Set kernel cmdline. +setenv bootargs ${bootargs_extra} "ro init=/init firmware_class.path=/vendor/firmware \ + pmc_r2p.enabled=1 pmc_r2p.action=${r2p_action} \ + pmc_r2p.param1=${autoboot} pmc_r2p.param2=${autoboot_list} \ + fbcon=map:${fbconsole} consoleblank=0 \ + latency_allowance.ptsa_rework \ + nvdec_enabled=0 tegra_fbmem=0x800000@0xf5a00000 \ + androidboot.bootloader=${blver} androidboot.hardware=nx \ + androidboot.hardware.sku=${variant} androidboot.serialno=${device_serial_restricted} \ + androidboot.modem=none androidboot.dtb_idx=${sku} " + +# Boot kernel. +echo Launching Kernel! +bootm ${kernload} ${kernload} ${fdtraddr} + +echoe Failed to launch Kernel! +echoe +echoe Rebooting in 10s.. + +sleep 10 +reset diff --git a/build/tasks/bootloader.mk b/build/tasks/bootloader.mk index 1e1711f..5840133 100644 --- a/build/tasks/bootloader.mk +++ b/build/tasks/bootloader.mk @@ -42,7 +42,13 @@ $(PRODUCT_OUT)/bl33.bin: $(_uboot_bin) u-boot-dtb: $(PRODUCT_OUT)/bl33.bin endif # TARGET_TEGRA_UBOOT -_uscript_input := $(abspath $(NX_BOOTFILES_PATH)/android_boot.txt) +ifneq ($(filter 4.9, $(TARGET_KERNEL_VERSION)),) +NX_BOOTSCRIPT ?= android_boot.txt +else +NX_BOOTSCRIPT ?= android_boot.ack.txt +endif + +_uscript_input := $(abspath $(NX_BOOTFILES_PATH)/$(NX_BOOTSCRIPT)) _uscript_archive := $(call intermediates-dir-for,EXECUTABLES,boot.scr)/boot.scr $(_uscript_archive): $(_uscript_input) @mkdir -p $(dir $@) diff --git a/device.mk b/device.mk index 02334ef..f6f27eb 100644 --- a/device.mk +++ b/device.mk @@ -16,25 +16,31 @@ TARGET_TEGRA_VARIANT ?= common -TARGET_TEGRA_BT ?= bcm -TARGET_TEGRA_CAMERA := rel-shield-r -TARGET_TEGRA_CEC := aosp -TARGET_TEGRA_CPL := none TARGET_KERNEL_VERSION ?= 4.9 TARGET_TEGRA_KEYSTORE := software TARGET_TEGRA_LIGHT ?= lineage -TARGET_TEGRA_POWER := perfmgr -TARGET_TEGRA_SENSORS := iio -TARGET_TEGRA_SENSOR_FEATURES := accelerometer gyroscope light -TARGET_TEGRA_THERMAL ?= lineage +#TARGET_TEGRA_THERMAL ?= lineage TARGET_TEGRA_UBOOT := prebuilt -TARGET_TEGRA_WIDEVINE ?= rel-shield-r -TARGET_TEGRA_WIFI ?= bcm +TARGET_TEGRA_POWER := perfmgr TARGET_ATV_FORCE_1080_SCALING := false ifneq ($(filter 4.9, $(TARGET_KERNEL_VERSION)),) -TARGET_TEGRA_MEMTRACK ?= rel-shield-r +TARGET_TEGRA_BT ?= bcm +TARGET_TEGRA_CAMERA ?= rel-shield-r +TARGET_TEGRA_CEC := aosp +TARGET_TEGRA_CPL := none +TARGET_TEGRA_SENSORS := iio +TARGET_TEGRA_SENSOR_FEATURES := accelerometer gyroscope light +TARGET_TEGRA_WIDEVINE ?= rel-shield-r +TARGET_TEGRA_WIFI ?= bcm +else +TARGET_TEGRA_FIRMWARE_BRANCH ?= linux-firmware +TARGET_AUDIO_HAL := baylibre +TARGET_TV_HDMI_CEC_HAL := +PRODUCT_COPY_FILES += \ + device/nintendo/nx/initfiles/ack.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/ack.rc \ + device/nintendo/nx/initfiles/init.recovery.ack.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.ack.rc endif include device/nvidia/t210-common/t210.mk @@ -48,7 +54,7 @@ else PRODUCT_CHARACTERISTICS := tablet endif -PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := true +PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false $(call inherit-product, frameworks/native/build/tablet-7in-xhdpi-2048-dalvik-heap.mk) @@ -78,10 +84,21 @@ PRODUCT_PACKAGES += \ init.sensors.nx.rc \ init.vali.rc +ifneq ($(filter 4.9 5.10, $(TARGET_KERNEL_VERSION)),) ifneq ($(TARGET_TEGRA_CPL),none) PRODUCT_PACKAGES += \ power.nx.rc endif +endif + +ifeq ($(TARGET_POWER_HAL),perfmgr-lineage) +ifeq ($(TARGET_GRAPHICS),mesa) +PRODUCT_PACKAGES += \ + powerhint.nouveau.json +PRODUCT_PROPERTY_OVERRIDES += \ + vendor.powerhal.config=powerhint.nouveau.json +endif +endif # Permissions PRODUCT_COPY_FILES += \ @@ -97,16 +114,19 @@ PRODUCT_COPY_FILES += \ endif # Audio -PRODUCT_PACKAGES += \ - audio_effects.xml \ - audio_policy_configuration.xml \ - nvaudio_conf.xml +ifeq ($(TARGET_AUDIO_HAL),baylibre) +PRODUCT_COPY_FILES += \ + device/nvidia/tegra-common/nvaudio/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml +endif # Bluetooth +ifeq ($(TARGET_TEGRA_BT),bcm) $(call soong_config_set,brcm_libbt,bdroid_buildcfg_include_dir,device/nintendo/nx/comms) $(call soong_config_set,brcm_libbt,custom_bt_config,//device/nintendo/nx:vnd_nx.txt) +endif # CEC +ifneq ($(filter 4.9, $(TARGET_KERNEL_VERSION)),) PRODUCT_COPY_FILES := $(filter-out frameworks/native/data/etc/android.hardware.hdmi.cec.xml%android.hardware.hdmi.cec.xml,$(PRODUCT_COPY_FILES)) PRODUCT_COPY_FILES += \ @@ -115,6 +135,7 @@ PRODUCT_COPY_FILES += \ PRODUCT_PACKAGES += \ nx_cec.rc \ cec_disable.xml +endif # Device Settings # TEMP @@ -141,10 +162,12 @@ endif PRODUCT_PACKAGES += \ excluded-input-devices.xml +ifneq ($(filter 4.9, $(TARGET_KERNEL_VERSION)),) # Joycons PRODUCT_PACKAGES += \ android.hardware.nintendo.joycond-service \ jc_setup +endif # Kernel Modules ifneq ($(filter 4.9, $(TARGET_KERNEL_VERSION)),) @@ -170,21 +193,9 @@ PRODUCT_COPY_FILES += \ device/nintendo/nx/initfiles/lkm.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/lkm.rc endif -# Media config -PRODUCT_PACKAGES += \ - media_codecs.xml \ - media_codecs_performance.xml \ - media_profiles_V1_0.xml \ - enctune.conf - # Partitions $(call inherit-product, $(SRC_TARGET_DIR)/product/non_ab_device.mk) -# Power -PRODUCT_COPY_FILES += \ - system/core/libprocessgroup/profiles/cgroups_28.json:$(TARGET_COPY_OUT_VENDOR)/etc/cgroups.json \ - system/core/libprocessgroup/profiles/task_profiles_28.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json - # PHS ifneq ($(TARGET_TEGRA_PHS),) PRODUCT_PACKAGES += \ @@ -195,16 +206,25 @@ endif PRODUCT_SYSTEM_DEFAULT_PROPERTIES += persist.vendor.recovery_update=true # Shipping API +ifneq ($(filter 4.9 5.10, $(TARGET_KERNEL_VERSION)),) +PRODUCT_COPY_FILES += \ + system/core/libprocessgroup/profiles/cgroups_28.json:$(TARGET_COPY_OUT_VENDOR)/etc/cgroups.json \ + system/core/libprocessgroup/profiles/task_profiles_28.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json + $(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_l.mk) +else +PRODUCT_SHIPPING_API_LEVEL := 36 +endif # Thermal ifneq ($(TARGET_TEGRA_THERMAL),) -ifeq ($(filter 3.10 4.9 5.10, $(TARGET_KERNEL_VERSION)),) -TARGET_TEGRA_THERMAL_SUFFIX ?= .ack +ifneq ($(filter 4.9 5.10, $(TARGET_KERNEL_VERSION)),) +PRODUCT_COPY_FILES += \ + device/nintendo/nx/thermal/thermalhal.nx.xml:$(TARGET_COPY_OUT_VENDOR)/etc/thermalhal.nx.xml +else +PRODUCT_COPY_FILES += \ + device/nintendo/nx/thermal/thermalhal.nx.ack.xml:$(TARGET_COPY_OUT_VENDOR)/etc/thermalhal.nx.xml endif - -PRODUCT_PACKAGES += \ - thermalhal.nx$(TARGET_TEGRA_THERMAL_SUFFIX).xml endif # WiFi diff --git a/initfiles/ack.rc b/initfiles/ack.rc new file mode 100644 index 0000000..dc9f6a6 --- /dev/null +++ b/initfiles/ack.rc @@ -0,0 +1,14 @@ +on init + stop watchdogd + +on early-init + write /sys/kernel/debug/bpmp/debug/clk/emc/min_rate 2133000000 + +on early-fs + wait /dev/dri/card0 10 + +# Override and disable watchdog +service watchdogd /system/bin/true + override + disabled + user root diff --git a/initfiles/init.nx.rc b/initfiles/init.nx.rc index 954ffad..23356c2 100644 --- a/initfiles/init.nx.rc +++ b/initfiles/init.nx.rc @@ -19,9 +19,9 @@ import /vendor/etc/init/hw/init.sensors.nx.rc import /vendor/etc/init/hw/init.${ro.boot.hardware.sku}.rc on init - setprop ro.surface_flinger.primary_display_orientation ORIENTATION_270 + #setprop ro.surface_flinger.primary_display_orientation ORIENTATION_270 setprop ro.boot.secureos none - setprop vendor.powerhal.config powerhint.${ro.boot.hardware.sku}.json + #setprop vendor.powerhal.config powerhint.${ro.boot.hardware.sku}.json on fs mount_all /vendor/etc/fstab.nx diff --git a/initfiles/init.recovery.ack.rc b/initfiles/init.recovery.ack.rc new file mode 100644 index 0000000..8a15937 --- /dev/null +++ b/initfiles/init.recovery.ack.rc @@ -0,0 +1,3 @@ +on early-init + mount debugfs debugfs /sys/kernel/debug mode=0755 + write /sys/kernel/debug/bpmp/debug/clk/emc/min_rate 2133000000 diff --git a/initfiles/init.recovery.nx.rc b/initfiles/init.recovery.nx.rc index 7ad3277..60bc896 100644 --- a/initfiles/init.recovery.nx.rc +++ b/initfiles/init.recovery.nx.rc @@ -13,6 +13,8 @@ # limitations under the License. import init.recovery.usb.rc +import init.recovery.ack.rc on init + setprop ro.minui.pixel_format "BGRA_8888" setprop ro.minui.default_rotation "ROTATION_LEFT" diff --git a/lineage.mk b/lineage.mk index 092d44d..81fa595 100644 --- a/lineage.mk +++ b/lineage.mk @@ -12,8 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -TARGET_TEGRA_POWER ?= lineage - # Boot Animation TARGET_SCREEN_HEIGHT := 1920 TARGET_SCREEN_WIDTH := 1080 diff --git a/media/Android.bp b/media/Android.bp deleted file mode 100644 index cf57b98..0000000 --- a/media/Android.bp +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (C) 2024 The LineageOS Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -prebuilt_etc { - name: "audio_effects.xml", - src: "audio_effects.xml", - vendor: true, -} - -prebuilt_etc { - name: "audio_policy_configuration.xml", - src: "audio_policy_configuration.xml", - vendor: true, -} - -prebuilt_etc { - name: "nvaudio_conf.xml", - src: "nvaudio_conf.xml", - vendor: true, -} - -prebuilt_etc { - name: "media_codecs.xml", - src: "media_codecs.xml", - device_specific: true, // odm -} - -prebuilt_etc { - name: "media_codecs_performance.xml", - src: "media_codecs_performance.xml", - device_specific: true, // odm -} - -prebuilt_etc { - name: "media_profiles_V1_0.xml", - src: "media_profiles_V1_0.xml", - vendor: true, -} - -prebuilt_etc { - name: "enctune.conf", - src: "enctune.conf", - vendor: true, -} diff --git a/media/audio_effects.xml b/media/audio_effects.xml deleted file mode 100644 index 38183af..0000000 --- a/media/audio_effects.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/media/audio_policy_configuration.xml b/media/audio_policy_configuration.xml deleted file mode 100644 index 8a5c0fe..0000000 --- a/media/audio_policy_configuration.xml +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - - - - - - - - - - - - Speaker - - Speaker - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/media/enctune.conf b/media/enctune.conf deleted file mode 100644 index 94e09e4..0000000 --- a/media/enctune.conf +++ /dev/null @@ -1,45 +0,0 @@ -H264: -Settings_1080P -IMinQP 5 -IMaxQP 30 -PMinQP 10 -PMaxQP 51 -VBR 1 -QualityLevel low -level 41 -packettype 0 -FrameSkip 0 -IntraOnlyMode 0 -UseConstrainedBP 0 -SliceLevelEncode 0 -END - -Settings_720P -IMinQP 5 -IMaxQP 30 -PMinQP 10 -PMaxQP 51 -VBR 1 -level 32 -QualityLevel low -packettype 0 -FrameSkip 0 -IntraOnlyMode 0 -UseConstrainedBP 0 -SliceLevelEncode 0 -END - -Settings_Default -IMinQP 5 -IMaxQP 30 -PMinQP 10 -PMaxQP 51 -VBR 1 -QualityLevel low -packettype 0 -FrameSkip 0 -IntraOnlyMode 0 -UseConstrainedBP 0 -SliceLevelEncode 0 -END - diff --git a/media/media_codecs.xml b/media/media_codecs.xml deleted file mode 100644 index 7aaf12c..0000000 --- a/media/media_codecs.xml +++ /dev/null @@ -1,268 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/media/media_codecs_performance.xml b/media/media_codecs_performance.xml deleted file mode 100644 index 59449a5..0000000 --- a/media/media_codecs_performance.xml +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/media/media_profiles_V1_0.xml b/media/media_profiles_V1_0.xml deleted file mode 100644 index 5cac160..0000000 --- a/media/media_profiles_V1_0.xml +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/media/nvaudio_conf.xml b/media/nvaudio_conf.xml deleted file mode 100644 index 53172b2..0000000 --- a/media/nvaudio_conf.xml +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules-ack.mk b/modules-ack.mk index 61740af..7c11af5 100644 --- a/modules-ack.mk +++ b/modules-ack.mk @@ -36,10 +36,6 @@ BOARD_VENDOR_KERNEL_MODULES_LOAD += \ BOARD_VENDOR_KERNEL_MODULES_LOAD += \ brcmfmac-wcc -# Realtek ethernet -BOARD_VENDOR_KERNEL_MODULES_LOAD += \ - r8169 - # Tegra cec BOARD_VENDOR_KERNEL_MODULES_LOAD += \ tegra_cec @@ -64,18 +60,14 @@ BOARD_VENDOR_KERNEL_MODULES_LOAD += \ snd-soc-tegra210-dmic \ snd-soc-tegra210-mvc \ snd-soc-tegra210-ope \ - snd-soc-tegra-audio-graph-card + snd-soc-tegra-audio-graph-card \ + snd-soc-rt5640 # Nvidia Controllers BOARD_VENDOR_KERNEL_MODULES_LOAD += \ hid-nvidia-shield \ hid-nvidia-shield-oot -# JoyCons -BOARD_VENDOR_KERNEL_MODULES_LOAD += \ - joycon-serdev \ - hid-nintendo - # Copy to boot BOOT_KERNEL_MODULES := \ system_heap.ko \ @@ -98,7 +90,6 @@ BOOT_KERNEL_MODULES := \ max77812-regulator.ko \ gpio-pca953x.ko \ tegra20-apb-dma.ko \ - tegra210-emc.ko \ phy-tegra-xusb.ko \ xhci-tegra.ko \ tegra-xudc.ko \ @@ -109,16 +100,17 @@ BOOT_KERNEL_MODULES := \ pwm-fan.ko \ pwm-regulator.ko \ tegra-soctherm.ko \ - lm90.ko \ cqhci.ko \ sdhci-tegra.ko \ - simplefb.ko \ host1x.ko \ drm_display_helper.ko \ drm_dp_aux_bus.ko \ tegra-drm.ko \ + panel-jdi-58-1440-810.ko \ panel-nx-dsi.ko \ - pwm_bl.ko + pwm_bl.ko \ + bm92txx.ko \ + ftm4.ko # Load in first stage boot BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \ @@ -129,6 +121,7 @@ BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \ spi-tegra114 \ spi-tegra210-quad \ bq24190_charger \ + bq27xxx_battery_i2c \ rtc-tegra \ gpio-tegra \ max77620 \ @@ -138,7 +131,7 @@ BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \ max77812-regulator \ gpio-pca953x \ tegra20-apb-dma \ - tegra210-emc \ + phy-tegra-xusb \ xhci-tegra \ tegra-xudc \ usb-conn-gpio \ @@ -147,8 +140,21 @@ BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \ pwm-fan \ pwm-regulator \ tegra-soctherm \ - lm90 \ sdhci-tegra \ - simplefb \ tegra-drm \ - pwm_bl + panel-nx-dsi \ + pwm_bl \ + bm92txx \ + ftm4 + +# Copy to recovery +RECOVERY_KERNEL_MODULES := \ + $(BOOT_KERNEL_MODULES) \ + hid-nvidia-shield.ko \ + hid-nvidia-shield-oot.ko + +# Load in recovery +BOARD_RECOVERY_KERNEL_MODULES_LOAD := \ + $(BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD) \ + hid-nvidia-shield \ + hid-nvidia-shield-oot diff --git a/properties.mk b/properties.mk index e94ef93..e7bde45 100644 --- a/properties.mk +++ b/properties.mk @@ -15,11 +15,13 @@ PRODUCT_SYSTEM_EXT_PROPERTIES += \ atv.setup.bt_remote_pairing=false # Graphics +ifneq ($(filter 4.9 5.10, $(TARGET_KERNEL_VERSION)),) PRODUCT_PROPERTY_OVERRIDES += \ debug.sf.latch_unsignaled=1 \ ro.surface_flinger.force_hwc_copy_for_virtual_displays=true \ ro.surface_flinger.max_frame_buffer_acquired_buffers=3 \ ro.surface_flinger.max_virtual_display_dimension=4096 +endif # HWC PRODUCT_PROPERTY_OVERRIDES += \ diff --git a/thermal/Android.bp b/thermal/Android.bp deleted file mode 100644 index 536717d..0000000 --- a/thermal/Android.bp +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (C) 2024 The LineageOS Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -prebuilt_etc { - name: "thermalhal.nx.xml", - src: "thermalhal.nx.xml", - vendor: true, -} - -prebuilt_etc { - name: "thermalhal.nx.ack.xml", - src: "thermalhal.nx.ack.xml", - vendor: true, -} diff --git a/thermal/thermalhal.nx.ack.xml b/thermal/thermalhal.nx.ack.xml index 3e24a6c..cf32612 100644 --- a/thermal/thermalhal.nx.ack.xml +++ b/thermal/thermalhal.nx.ack.xml @@ -29,7 +29,7 @@ Attributes for cpu-usages - +