Compare commits

...
9 Commits
Author SHA1 Message Date
tmakin 299a61f1de [hack] build in tinyalsa for triage 2026-10-13 17:15:08 -05:00
tmakin 215979ace6 [hack] nx: own brightness node 2026-10-13 17:14:56 -05:00
tmakin 1db7e8582b nx: actually add wifi fw 2026-10-13 17:14:34 -05:00
tmakin 16ac2a1d4f nx: adjust ack modules list 2026-10-13 17:14:21 -05:00
tmakin b02ec7c2a2 nx: use tmpfs for metadata partition 2026-10-13 17:13:57 -05:00
tmakin 2d47756349 [wip] nx: adjust fstab for mainline 2026-10-13 17:13:33 -05:00
tmakin 5e4963ef17 nx: remove old 4.9 props 2026-10-13 17:13:18 -05:00
tmakin 91d1e94240 [wip] nx: use mainline audio hal 2026-10-13 17:12:40 -05:00
tmakin 1449832eb1 nx: update usb configs for mainline hals 2026-09-19 17:57:11 -05:00
11 changed files with 247 additions and 41 deletions

No files matched your search

+1
View File
@@ -28,6 +28,7 @@ TARGET_COPY_OUT_SYSTEM_EXT := system_ext
TARGET_COPY_OUT_ODM := odm
TARGET_COPY_OUT_PRODUCT := product
TARGET_COPY_OUT_VENDOR := vendor
BOARD_USES_METADATA_PARTITION := true
-include vendor/lineage/config/BoardConfigReservedSize.mk
+8
View File
@@ -17,9 +17,11 @@
TARGET_TEGRA_VARIANT ?= common
TARGET_KERNEL_VERSION ?= mainline
TARGET_AUDIO_HAL ?= mainline
TARGET_LIGHT_HAL ?= tegra
TARGET_ATV_FORCE_1080_SCALING := false
TARGET_AUDIO_MAINLINE_UCM_PROFILES := nx tegra-hda
PRODUCT_COPY_FILES += \
device/nintendo/nx/initfiles/ack.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/ack.rc
@@ -91,6 +93,12 @@ PRODUCT_COPY_FILES += \
device/nvidia/tegra-common/audio/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml
endif
PRODUCT_PACKAGES += \
tinymix2 \
tinypcminfo2 \
tinyplay2 \
tinycap2 \
# CEC
# PRODUCT_COPY_FILES := $(filter-out frameworks/native/data/etc/android.hardware.hdmi.cec.xml%android.hardware.hdmi.cec.xml,$(PRODUCT_COPY_FILES))
+2 -2
View File
@@ -21,11 +21,11 @@ product /product ext4
/dev/block/by-name/misc /misc emmc defaults defaults
# devices (normal)
/devices/sdhci-tegra.0/mmc_host* auto vfat defaults voldmanaged=sdcard1:1
/devices/700b0000.mmc/mmc_host* auto vfat defaults voldmanaged=sdcard1:1
/devices/70090000.xusb/usb* auto auto defaults voldmanaged=usbdrive:auto
# devices (recovery)
/dev/block/platform/sdhci-tegra.0/by-num/p1 /sdcard vfat defaults recoveryonly
/dev/block/platform/700b0000.mmc/by-num/p1 /sdcard vfat defaults recoveryonly
/dev/block/platform/70090000.xusb/by-num/p1 /usbdrive auto defaults recoveryonly
# zram
+4
View File
@@ -26,6 +26,7 @@ on init
on fs
mount_all /vendor/etc/fstab.nx
swapon_all /vendor/etc/fstab.nx
mount tmpfs tmpfs /metadata size=10m
on post-fs-data
chmod 0664 /sys/devices/57000000.gpu/devfreq/57000000.gpu/max_freq
@@ -35,6 +36,9 @@ on post-fs-data
chmod 0666 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chmod 0666 /sys/class/backlight/backlight/brightness
chown system system /sys/class/backlight/backlight/brightness
chmod 0664 /sys/kernel/tegra_cpufreq/overclock
chown system system /sys/kernel/tegra_cpufreq/overclock
-2
View File
@@ -12,8 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
import init.recovery.usb.rc
on init
setprop ro.minui.pixel_format "BGRA_8888"
setprop ro.minui.default_rotation "ROTATION_LEFT"
+44
View File
@@ -0,0 +1,44 @@
//
// Copyright (C) 2026 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: "alsa-ucm-conf-files-Nintendo_Switch",
vendor: true,
relative_install_path: "alsa/ucm2/Nintendo/Switch",
srcs: [
"HiFi.conf",
"Nintendo-Switch.conf",
],
}
install_symlink {
name: "alsa-ucm-conf-link-conf.d_tegra-ape_switch-ape-rt5640.conf",
vendor: true,
installed_location: "etc/alsa/ucm2/conf.d/tegra-ape/switch-ape-rt5640.conf",
symlink_target: "../../Nintendo/Switch/Nintendo-Switch.conf",
}
phony {
name: "alsa-ucm-conf-card-nx",
required: [
"alsa-ucm-conf-base",
"alsa-ucm-conf-files-Nintendo_Switch",
"alsa-ucm-conf-files-codecs_hda",
"alsa-ucm-conf-files-codecs_rt5640",
"alsa-ucm-conf-files-lib",
"alsa-ucm-conf-link-conf.d_tegra-ape_switch-ape-rt5640.conf",
],
}
+141
View File
@@ -0,0 +1,141 @@
# Use case Configuration for Nintendo Switch
SectionVerb {
EnableSequence [
cset "name='ADMAIF1 Mux' I2S1"
cset "name='I2S1 Mux' ADMAIF1"
]
DisableSequence [
cset "name='x OUT MIXL DAC L1 Switch' off"
cset "name='x OUT MIXR DAC R1 Switch' off"
]
# ALSA PCM
Value {
}
}
SectionDevice."Headphones" {
Comment "Headphones playback"
ConflictingDevice [
"Speaker"
]
EnableSequence [
cset "name='x HPO MIX HPVOL Switch' on"
cset "name='x HP L Playback Switch' on"
cset "name='x HP R Playback Switch' on"
cset "name='x OUT MIXL DAC L1 Switch' on"
cset "name='x OUT MIXR DAC R1 Switch' on"
cset "name='x Stereo DAC MIXL DAC L1 Switch' on"
cset "name='x Stereo DAC MIXR DAC R1 Switch' on"
cset "name='x DAC1 Playback Volume' 170,170"
cset "name='x HP Playback Volume' 31,31"
cset "name='x HP Channel Switch' on,on"
]
DisableSequence [
cset "name='x HP Playback Volume' 0,0"
cset "name='x HP Channel Switch' off,off"
cset "name='x DAC1 Playback Volume' 0,0"
cset "name='x OUT MIXL DAC L1 Switch' off"
cset "name='x OUT MIXR DAC R1 Switch' off"
cset "name='x HPO MIX HPVOL Switch' off"
cset "name='x HP L Playback Switch' off"
cset "name='x HP R Playback Switch' off"
cset "name='x Stereo DAC MIXL DAC L1 Switch' off"
cset "name='x Stereo DAC MIXR DAC R1 Switch' off"
#cset "name='x Mic Jack' off"
]
Value {
PlaybackPCM "hw:${CardId}"
PlaybackChannels "2"
PlaybackRate "48000"
PlaybackVolume "x DAC1 Playback Volume"
PlaybackSwitch "x HP Channel Switch"
JackControl "x Headphone Jack"
}
}
SectionDevice."Speaker" {
Comment "Speaker playback"
ConflictingDevice [
"Headphones"
]
EnableSequence [
cset "name='x SPK MIXL DAC L1 Switch' on"
cset "name='x SPK MIXR DAC R1 Switch' on"
cset "name='x Speaker Channel Switch' on,on"
cset "name='x SPOL MIX SPKVOL L Switch' on"
cset "name='x SPOR MIX SPKVOL R Switch' on"
cset "name='x Stereo DAC MIXL DAC L1 Switch' on"
cset "name='x Stereo DAC MIXR DAC R1 Switch' on"
cset "name='x DAC1 Playback Volume' 148,148"
cset "name='x Speaker Playback Volume' 35,35"
cset "name='x Speaker L Playback Switch' on"
cset "name='x Speaker R Playback Switch' on"
]
DisableSequence [
cset "name='x Speaker L Playback Switch' off"
cset "name='x Speaker R Playback Switch' off"
cset "name='x Speaker Channel Switch' off,off"
cset "name='x Speaker Playback Volume' 35,35"
cset "name='x DAC1 Playback Volume' 0,0"
cset "name='x SPK MIXL DAC L1 Switch' off"
cset "name='x SPK MIXR DAC R1 Switch' off"
cset "name='x SPOL MIX SPKVOL L Switch' off"
cset "name='x SPOR MIX SPKVOL R Switch' off"
cset "name='x Stereo DAC MIXL DAC L1 Switch' off"
cset "name='x Stereo DAC MIXR DAC R1 Switch' off"
]
Value {
PlaybackPCM "hw:${CardId}"
PlaybackChannels "2"
PlaybackRate "48000"
PlaybackVolume "x DAC1 Playback Volume"
PlaybackSwitch "x Speaker Channel Switch"
}
}
SectionDevice."HeadsetMic" {
Comment "Headset Microphone"
EnableSequence [
cset "name='x IN1 Boost' 5"
cset "name='x Stereo ADC MIXL ADC1 Switch' on"
cset "name='x ADC IF1 Data Switch' 2"
cset "name='x ADC Capture Volume' 47,0"
cset "name='x ADC Capture Switch' on,off"
cset "name='x RECMIXL BST1 Switch' on"
]
DisableSequence [
cset "name='x RECMIXL BST1 Switch' off"
cset "name='x Stereo ADC MIXL ADC1 Switch' off"
cset "name='x ADC Capture Volume' 0,0"
cset "name='x ADC Capture Switch' off"
cset "name='x ADC IF1 Data Switch' 0"
]
Value {
CapturePCM "hw:${CardId}"
CapturePriority "100"
CaptureChannels "2"
CaptureRate "48000"
CaptureVolume "x ADC Capture Volume"
CaptureSwitch "x ADC Capture Switch"
JackControl "x Mic Jack"
}
}
+6
View File
@@ -0,0 +1,6 @@
Syntax 4
SectionUseCase."HiFi" {
File "/Nintendo/Switch/HiFi.conf"
Comment "Play HiFi quality Music"
}
+8 -4
View File
@@ -93,8 +93,10 @@ BOOT_KERNEL_MODULES := \
max77620-regulator.ko \
max77812-regulator.ko \
max77620-restart.ko \
max77620-onoff.ko \
max17042_battery.ko \
tegra20-apb-dma.ko \
r2p-tegra.ko \
phy-tegra-xusb.ko \
xhci-tegra.ko \
tegra-xudc.ko \
@@ -116,10 +118,10 @@ BOOT_KERNEL_MODULES := \
drm_dp_aux_bus.ko \
tegra-aconnect.ko \
tegra-drm.ko \
panel-nx-dsi.ko \
pwm_bl.ko \
bm92txx.ko \
ftm4.ko
panel-nx-dsi.ko \
stmfts.ko
# Load in first stage boot
BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \
@@ -139,6 +141,7 @@ BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \
spi-tegra210-quad \
bq24190_charger \
rtc-tegra \
r2p-tegra \
xhci-tegra \
tegra-xudc \
usb-conn-gpio \
@@ -146,17 +149,18 @@ BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \
pwm-fan \
tegra-soctherm \
max77620-restart \
max77620-onoff \
max17042_battery \
tegra-aconnect \
sdhci-tegra \
spi-nor \
mtdblock \
tegra-drm \
panel-nx-dsi \
pwm_bl \
tegra30-devfreq \
bm92txx \
ftm4
panel-nx-dsi \
stmfts
# Copy to recovery
RECOVERY_KERNEL_MODULES := \
+30 -33
View File
@@ -2,8 +2,12 @@
PRODUCT_PROPERTY_OVERRIDES += \
persist.sys.media.avsync=true
# Baylibre audio
ifeq ($(TARGET_AUDIO_HAL),baylibre)
# Audio
ifeq ($(TARGET_AUDIO_HAL),mainline)
PRODUCT_PROPERTY_OVERRIDES += \
vendor.audio.mainline.card.0.rates=48000 \
vendor.audio.mainline.card.0.bits=16
else ifeq ($(TARGET_AUDIO_HAL),baylibre)
PRODUCT_PROPERTY_OVERRIDES += \
ro.vendor.audio.primary.device=3
endif
@@ -20,37 +24,30 @@ PRODUCT_SYSTEM_EXT_PROPERTIES += \
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 += \
persist.vendor.tegra.stb.mode=0
# USB configfs
PRODUCT_PROPERTY_OVERRIDES += \
ro.vendor.nv.usb.pid.adb=2000 \
ro.vendor.nv.usb.pid.rndis.acm.adb=200A \
ro.vendor.nv.usb.pid.accessory.adb=200B \
ro.vendor.nv.usb.pid.audio_source.adb=200C \
ro.vendor.nv.usb.pid.ecm=200D \
ro.vendor.nv.usb.pid.ecm.adb=200E \
ro.vendor.nv.usb.pid.midi=201A \
ro.vendor.nv.usb.pid.midi.adb=201B \
ro.vendor.nv.usb.pid.mtp=201C \
ro.vendor.nv.usb.pid.mtp.adb=201D \
ro.vendor.nv.usb.pid.ncm=201E \
ro.vendor.nv.usb.pid.ncm.adb=201F \
ro.vendor.nv.usb.pid.ptp=202A \
ro.vendor.nv.usb.pid.ptp.adb=202B \
ro.vendor.nv.usb.pid.rndis=202C \
ro.vendor.nv.usb.pid.rndis.adb=202D \
ro.vendor.nv.usb.vid=057E \
sys.usb.controller=700d0000.xudc \
vendor.sys.usb.udc=700d0000.xudc
ro.vendor.usb.pid.adb=7104 \
ro.vendor.usb.pid.accessory=EE0A \
ro.vendor.usb.pid.accessory.adb=7105 \
ro.vendor.usb.pid.accessory.audio_source=EE0C \
ro.vendor.usb.pid.accessory.audio_source.adb=EE0D \
ro.vendor.usb.pid.audio_source=EE0B \
ro.vendor.usb.pid.audio_source.adb=7106 \
ro.vendor.usb.pid.ncm=7107 \
ro.vendor.usb.pid.ncm.adb=7108 \
ro.vendor.usb.pid.midi=7109 \
ro.vendor.usb.pid.midi.adb=710A \
ro.vendor.usb.pid.uvc=710B \
ro.vendor.usb.pid.uvc.adb=710C \
ro.vendor.usb.vid=057E \
ro.vendor.usb.pid.mtp=2000 \
ro.vendor.usb.pid.mtp.adb=2000 \
ro.vendor.usb.pid.ptp=2000 \
ro.vendor.usb.pid.ptp.adb=2000 \
ro.vendor.usb.pid.rndis=2000 \
ro.vendor.usb.pid.rndis.adb=2000 \
ro.vendor.usb.vid=057E \
ro.recovery.usb.vid=057E \
ro.recovery.usb.adb.pid=2000 \
ro.recovery.usb.fastboot.pid=2000
+3
View File
@@ -19,6 +19,9 @@ COMMON_BCM_PATH := vendor/nvidia/common/rel-shield-r/bcm
NX_BCM_PATH := vendor/nintendo/nx/rel-shield-r/bcm
NX_BCM_EXTERNAL_PATH := vendor/nintendo/nx/external/bcm
PRODUCT_PACKAGES += \
linux_firmware_cypress-bcm4356
PRODUCT_COPY_FILES += \
$(NX_BCM_PATH)/bcm4356/brcmfmac4356-pcie.clm_blob:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/brcmfmac4356-pcie.nvidia,odin.clm_blob \
$(NX_BCM_PATH)/bcm4356/brcmfmac4356-pcie.clm_blob:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/brcmfmac4356-pcie.nvidia,modin.clm_blob \