mirror of
https://github.com/armbian/build
synced 2025-09-24 19:47:06 +07:00
Refresh jetson-nano board config.
This commit is contained in:
@@ -1,32 +1,11 @@
|
|||||||
# Nvidia Jetson Nano quad core 2G/4GB SoC 4 x USB3 HDMI & DP
|
# Nvidia Jetson Nano quad core 2G/4GB SoC 4 x USB3 HDMI & DP
|
||||||
BOARD_NAME="Jetson Nano"
|
declare -g BOARD_NAME="Jetson Nano"
|
||||||
BOARDFAMILY="media"
|
declare -g BOARDFAMILY="uefi-arm64"
|
||||||
BOARD_MAINTAINER="150balbes"
|
declare -g BOARD_MAINTAINER="150balbes"
|
||||||
BOOTCONFIG="none"
|
declare -g KERNEL_TARGET="current,edge"
|
||||||
KERNEL_TARGET="current,edge"
|
|
||||||
FULL_DESKTOP="yes"
|
|
||||||
BOOT_LOGO="desktop"
|
|
||||||
BOOT_FDT_FILE="nvidia/tegra210-p3450-0000.dtb"
|
|
||||||
SRC_EXTLINUX="yes"
|
|
||||||
SRC_CMDLINE="console=ttyS0,115200n8 console=tty0"
|
|
||||||
|
|
||||||
function post_family_tweaks__Jetson-nano() {
|
declare -g BOOT_LOGO=desktop
|
||||||
display_alert "$BOARD" "Installing bsp firmware and fixups" "info"
|
|
||||||
|
|
||||||
install -m 755 $SRC/packages/blobs/jetson/jetson.sh $SDCARD/etc/initramfs-tools/hooks/jetson.sh
|
declare -g GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0,115200n8"
|
||||||
if [[ $BRANCH == legacy ]]; then
|
declare -g BOOT_FDT_FILE="nvidia/tegra210-p3450-0000.dtb"
|
||||||
install -m 755 $SRC/packages/blobs/jetson/tegra21x_xusb_firmware $SDCARD/lib/firmware/tegra21x_xusb_firmware
|
enable_extension "grub-with-dtb"
|
||||||
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrahda $SDCARD/etc/asound.conf.tegrahda
|
|
||||||
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrahda $SDCARD/etc/asound.conf
|
|
||||||
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrasndt210ref $SDCARD/etc/asound.conf.tegrasndt210ref
|
|
||||||
install -m 755 $SRC/packages/blobs/jetson/tegra-hda.conf $SDCARD/usr/share/alsa/cards/tegra-hda.conf
|
|
||||||
install -m 755 $SRC/packages/blobs/jetson/tegra-snd-t210r.conf $SDCARD/usr/share/alsa/cards/tegra-snd-t210r.conf
|
|
||||||
sed -e 's/exit 0//g' -i $SDCARD/etc/rc.local
|
|
||||||
echo "su -c 'echo 255 > /sys/devices/pwm-fan/target_pwm'" >> $SDCARD/etc/rc.local
|
|
||||||
echo "exit 0" >> $SDCARD/etc/rc.local
|
|
||||||
else
|
|
||||||
cp -R $SRC/packages/blobs/jetson/firmware/* $SDCARD/lib/firmware/
|
|
||||||
fi
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -5906,7 +5906,7 @@ CONFIG_AMLOGIC_THERMAL=m
|
|||||||
#
|
#
|
||||||
# NVIDIA Tegra thermal drivers
|
# NVIDIA Tegra thermal drivers
|
||||||
#
|
#
|
||||||
# CONFIG_TEGRA_SOCTHERM is not set
|
CONFIG_TEGRA_SOCTHERM=m
|
||||||
CONFIG_TEGRA_BPMP_THERMAL=m
|
CONFIG_TEGRA_BPMP_THERMAL=m
|
||||||
# end of NVIDIA Tegra thermal drivers
|
# end of NVIDIA Tegra thermal drivers
|
||||||
|
|
||||||
|
|||||||
@@ -3690,7 +3690,7 @@ CONFIG_DWMAC_SOCFPGA=m
|
|||||||
# CONFIG_DWMAC_SUNXI is not set
|
# CONFIG_DWMAC_SUNXI is not set
|
||||||
CONFIG_DWMAC_SUN8I=m
|
CONFIG_DWMAC_SUN8I=m
|
||||||
CONFIG_DWMAC_INTEL_PLAT=m
|
CONFIG_DWMAC_INTEL_PLAT=m
|
||||||
# CONFIG_DWMAC_TEGRA is not set
|
CONFIG_DWMAC_TEGRA=m
|
||||||
CONFIG_DWMAC_VISCONTI=m
|
CONFIG_DWMAC_VISCONTI=m
|
||||||
# CONFIG_DWMAC_LOONGSON is not set
|
# CONFIG_DWMAC_LOONGSON is not set
|
||||||
CONFIG_STMMAC_PCI=m
|
CONFIG_STMMAC_PCI=m
|
||||||
@@ -6021,7 +6021,7 @@ CONFIG_AMLOGIC_THERMAL=m
|
|||||||
#
|
#
|
||||||
# NVIDIA Tegra thermal drivers
|
# NVIDIA Tegra thermal drivers
|
||||||
#
|
#
|
||||||
# CONFIG_TEGRA_SOCTHERM is not set
|
CONFIG_TEGRA_SOCTHERM=m
|
||||||
CONFIG_TEGRA_BPMP_THERMAL=m
|
CONFIG_TEGRA_BPMP_THERMAL=m
|
||||||
# end of NVIDIA Tegra thermal drivers
|
# end of NVIDIA Tegra thermal drivers
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
l2tp_ppp
|
|
||||||
l2tp_netlink
|
|
||||||
l2tp_core
|
|
||||||
pppox
|
|
||||||
ppp_generic
|
|
||||||
slhc
|
|
||||||
cpufreq_interactive
|
|
||||||
cpufreq_conservative
|
|
||||||
cpufreq_powersave
|
|
||||||
cpufreq_userspace
|
|
||||||
cpufreq_ondemand
|
|
||||||
zram
|
|
||||||
sch_fq_codel
|
|
||||||
binfmt_misc
|
|
||||||
ip_tables
|
|
||||||
x_tables
|
|
||||||
ipv6
|
|
||||||
spidev
|
|
||||||
@@ -8,10 +8,6 @@
|
|||||||
#
|
#
|
||||||
source "${BASH_SOURCE%/*}/include/rockchip64_common.inc"
|
source "${BASH_SOURCE%/*}/include/rockchip64_common.inc"
|
||||||
|
|
||||||
if [[ $BOARD = jetson-nano ]]; then
|
|
||||||
enable_extension "grub-sbc-media"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $BOARD == station-p2 || $BOARD == station-m2 || $BOARD == bananapir2pro ]]; then
|
if [[ $BOARD == station-p2 || $BOARD == station-m2 || $BOARD == bananapir2pro ]]; then
|
||||||
BOOTSOURCE='https://github.com/150balbes/u-boot-rk'
|
BOOTSOURCE='https://github.com/150balbes/u-boot-rk'
|
||||||
BOOTBRANCH='branch:rk356x'
|
BOOTBRANCH='branch:rk356x'
|
||||||
|
|||||||
@@ -1,145 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# @TODO: rpardini: there's no good reason for this ("grub-sbc-media") to exist. "grub" could be refactored to allow configuration to do the same.
|
|
||||||
|
|
||||||
# This runs *after* user_config. Don't change anything not coming from other variables or meant to be configured by the user.
|
|
||||||
function extension_prepare_config__prepare_grub-sbc-media() {
|
|
||||||
display_alert "Prepare config" "${EXTENSION}" "info"
|
|
||||||
# Extension configuration defaults.
|
|
||||||
declare -g DISTRO_GENERIC_KERNEL=${DISTRO_GENERIC_KERNEL:-no} # if yes, does not build our own kernel, instead, uses generic one from distro
|
|
||||||
declare -g UEFI_GRUB_DISABLE_OS_PROBER="${UEFI_GRUB_DISABLE_OS_PROBER:-}" # 'true' will disable os-probing, useful for SD cards.
|
|
||||||
declare -g UEFI_GRUB_DISTRO_NAME="${UEFI_GRUB_DISTRO_NAME:-Armbian}" # Will be used on grub menu display
|
|
||||||
declare -g UEFI_GRUB_TIMEOUT=${UEFI_GRUB_TIMEOUT:-3} # Small timeout by default
|
|
||||||
declare -g UEFI_GRUB_RECORDFAIL_TIMEOUT=${UEFI_GRUB_RECORDFAIL_TIMEOUT:-3}
|
|
||||||
declare -g GRUB_CMDLINE_LINUX_DEFAULT="${GRUB_CMDLINE_LINUX_DEFAULT:-}" # Cmdline by default
|
|
||||||
declare -g UEFI_ENABLE_BIOS_AMD64="${UEFI_ENABLE_BIOS_AMD64:-no}" # Enable BIOS too if target is amd64
|
|
||||||
# User config overrides.
|
|
||||||
declare -g IMAGE_PARTITION_TABLE="gpt" # GPT partition table is essential for many UEFI-like implementations, eg Apple+Intel stuff.
|
|
||||||
declare -g UEFISIZE=256 # in MiB - grub EFI is tiny - but some EFI BIOSes ignore small too small EFI partitions
|
|
||||||
declare -g BOOTSIZE=0 # No separate /boot when using UEFI.
|
|
||||||
declare -g CLOUD_INIT_CONFIG_LOCATION="${CLOUD_INIT_CONFIG_LOCATION:-/boot/efi}" # use /boot/efi for cloud-init as default when using Grub.
|
|
||||||
declare -g EXTRA_BSP_NAME="${EXTRA_BSP_NAME}-grub" # Unique bsp name.
|
|
||||||
declare -g UEFI_GRUB_TARGET_BIOS="" # Target for BIOS GRUB install, set to i386-pc when UEFI_ENABLE_BIOS_AMD64=yes and target is amd64
|
|
||||||
|
|
||||||
# local
|
|
||||||
declare -a packages=()
|
|
||||||
|
|
||||||
packages+=(efibootmgr efivar os-prober "grub-efi-${ARCH}-bin")
|
|
||||||
|
|
||||||
if [[ "${ARCH}" == "arm64" ]]; then
|
|
||||||
packages+=("grub-efi-${ARCH}")
|
|
||||||
declare -g UEFI_GRUB_TARGET="arm64-efi" # Default for arm64-efi
|
|
||||||
fi
|
|
||||||
|
|
||||||
add_packages_to_image "${packages[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
pre_umount_final_image__install_grub() {
|
|
||||||
configure_grub
|
|
||||||
local chroot_target=$MOUNT
|
|
||||||
display_alert "Installing bootloader" "GRUB" "info"
|
|
||||||
|
|
||||||
# SBC-MEDIA: copy the dtbs to ESP
|
|
||||||
display_alert "Copying DTBs to ESP" "${EXTENSION}" "info"
|
|
||||||
run_host_command_logged mkdir -pv "$MOUNT"/boot/efi/dtb
|
|
||||||
run_host_command_logged cp -vr "$MOUNT"/boot/dtb/* "$MOUNT"/boot/efi/dtb/
|
|
||||||
display_alert "Copying Splash to ESP" "${EXTENSION}" "info"
|
|
||||||
run_host_command_logged cp -rv ${SRC}/packages/blobs/splash/grub.png "$MOUNT"/boot/grub
|
|
||||||
|
|
||||||
# add config to disable os-prober, otherwise image will have the host's other OSes boot entries.
|
|
||||||
cat <<- grubCfgFragHostSide >> "${MOUNT}"/etc/default/grub.d/99-armbian-host-side.cfg
|
|
||||||
GRUB_DISABLE_OS_PROBER=true
|
|
||||||
grubCfgFragHostSide
|
|
||||||
|
|
||||||
# copy Armbian GRUB wallpaper
|
|
||||||
run_host_command_logged mkdir -pv "${chroot_target}"/usr/share/images/grub/
|
|
||||||
run_host_command_logged cp -v "${SRC}"/packages/blobs/splash/grub.png "${chroot_target}"/usr/share/images/grub/wallpaper.png
|
|
||||||
|
|
||||||
# Mount the chroot...
|
|
||||||
mount_chroot "$chroot_target/" # this already handles /boot/efi which is required for it to work.
|
|
||||||
|
|
||||||
# SBC-MEDIA specific...
|
|
||||||
sed -i '/devicetree/c echo' "$MOUNT"/etc/grub.d/10_linux
|
|
||||||
|
|
||||||
# update-grub is secretly `grub-mkconfig` under wraps, but the actual work is done by /etc/grub.d/10-linux
|
|
||||||
# that decides based on 'test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}"' so that _must_ exist.
|
|
||||||
# If it does NOT exist, then a reference to a /dev/devYpX is used, and will fail to boot.
|
|
||||||
# Irony: let's use grub-probe to find out the UUID of the root partition, and then create a symlink to it.
|
|
||||||
# Another: on some systems (eg, not Docker) the thing might already exist due to udev actually working.
|
|
||||||
# shellcheck disable=SC2016 # some wierd escaping going on there.
|
|
||||||
chroot_custom "$chroot_target" mkdir -pv '/dev/disk/by-uuid/"$(grub-probe --target=fs_uuid /)"' "||" true
|
|
||||||
|
|
||||||
display_alert "Creating GRUB config..." "${EXTENSION}: grub-mkconfig / update-grub"
|
|
||||||
chroot_custom "$chroot_target" update-grub || {
|
|
||||||
exit_with_error "update-grub failed!"
|
|
||||||
}
|
|
||||||
|
|
||||||
local install_grub_cmdline="grub-install --target=${UEFI_GRUB_TARGET} --no-nvram --removable" # nvram is global to the host, even across chroot. take care.
|
|
||||||
display_alert "Installing GRUB EFI..." "${EXTENSION}: ${UEFI_GRUB_TARGET}"
|
|
||||||
chroot_custom "$chroot_target" "$install_grub_cmdline" || {
|
|
||||||
exit_with_error "${install_grub_cmdline} failed!"
|
|
||||||
}
|
|
||||||
|
|
||||||
### Sanity check. The produced "/boot/grub/grub.cfg" should:
|
|
||||||
declare -i has_failed_sanity_check=0
|
|
||||||
|
|
||||||
# - NOT have any mention of `/dev` inside; otherwise something is going to fail
|
|
||||||
if grep -q '/dev' "${chroot_target}/boot/grub/grub.cfg"; then
|
|
||||||
display_alert "GRUB sanity check failed" "grub.cfg contains /dev" "err"
|
|
||||||
SHOW_LOG=yes run_host_command_logged grep '/dev' "${chroot_target}/boot/grub/grub.cfg" "||" true
|
|
||||||
has_failed_sanity_check=1
|
|
||||||
else
|
|
||||||
display_alert "GRUB config sanity check passed" "no '/dev' found in grub.cfg" "info"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# - HAVE references to initrd, otherwise going to fail.
|
|
||||||
if ! grep -q 'initrd.img' "${chroot_target}/boot/grub/grub.cfg"; then
|
|
||||||
display_alert "GRUB config sanity check failed" "no initrd.img references found in /boot/grub/grub.cfg" "err"
|
|
||||||
has_failed_sanity_check=1
|
|
||||||
else
|
|
||||||
display_alert "GRUB config sanity check passed" "initrd.img references found OK in /boot/grub/grub.cfg" "debug"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ${has_failed_sanity_check} -gt 0 ]]; then
|
|
||||||
exit_with_error "GRUB config sanity check failed, image will be unbootable; see above errors"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Remove host-side config.
|
|
||||||
rm -f "${MOUNT}"/etc/default/grub.d/99-armbian-host-side.cfg
|
|
||||||
|
|
||||||
if [[ $BOARD == jetson-nano ]]; then
|
|
||||||
run_host_command_logged cp -v "${SRC}/packages/blobs/jetson/boot.scr" "${MOUNT}"/boot/efi/boot.scr
|
|
||||||
fi
|
|
||||||
|
|
||||||
umount_chroot "$chroot_target/"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
configure_grub() {
|
|
||||||
[[ -n "$SRC_CMDLINE" ]] &&
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT+=" ${SRC_CMDLINE}"
|
|
||||||
[[ -n "$MAIN_CMDLINE" ]] &&
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT+=" ${MAIN_CMDLINE}"
|
|
||||||
|
|
||||||
display_alert "GRUB EFI kernel cmdline" "${GRUB_CMDLINE_LINUX_DEFAULT} distro=${UEFI_GRUB_DISTRO_NAME} timeout=${UEFI_GRUB_TIMEOUT}" ""
|
|
||||||
cat <<- grubCfgFrag >> "${MOUNT}"/etc/default/grub.d/98-armbian.cfg
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="${GRUB_CMDLINE_LINUX_DEFAULT}"
|
|
||||||
GRUB_TIMEOUT_STYLE=menu # Show the menu with Kernel options (Armbian or -generic)...
|
|
||||||
GRUB_TIMEOUT=${UEFI_GRUB_TIMEOUT} # ... for ${UEFI_GRUB_TIMEOUT} seconds, then boot the Armbian default.
|
|
||||||
GRUB_RECORDFAIL_TIMEOUT=${UEFI_GRUB_RECORDFAIL_TIMEOUT}
|
|
||||||
GRUB_DISTRIBUTOR="${UEFI_GRUB_DISTRO_NAME}" # On GRUB menu will show up as "Armbian GNU/Linux" (will show up in some UEFI BIOS boot menu (F8?) as "armbian", not on others)
|
|
||||||
GRUB_BACKGROUND="/boot/grub/grub.png"
|
|
||||||
grubCfgFrag
|
|
||||||
|
|
||||||
if [[ "a${UEFI_GRUB_DISABLE_OS_PROBER}" != "a" ]]; then
|
|
||||||
cat <<- grubCfgFragHostSide >> "${MOUNT}"/etc/default/grub.d/98-armbian.cfg
|
|
||||||
GRUB_DISABLE_OS_PROBER=${UEFI_GRUB_DISABLE_OS_PROBER}
|
|
||||||
grubCfgFragHostSide
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "a${UEFI_GRUB_TERMINAL}" != "a" ]]; then
|
|
||||||
cat <<- grubCfgFragTerminal >> "${MOUNT}"/etc/default/grub.d/98-armbian.cfg
|
|
||||||
GRUB_TERMINAL="${UEFI_GRUB_TERMINAL}"
|
|
||||||
grubCfgFragTerminal
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
@@ -1,91 +0,0 @@
|
|||||||
#
|
|
||||||
# ALSA library configuration file
|
|
||||||
#
|
|
||||||
# Copyright (c) 2016-2017 NVIDIA Corporation. All Rights Reserved.
|
|
||||||
#
|
|
||||||
# NVIDIA Corporation and its licensors retain all intellectual property and
|
|
||||||
# proprietary rights in and to this software and related documentation. Any
|
|
||||||
# use, reproduction, disclosure or distribution of this software and related
|
|
||||||
# documentation without an express license agreement from NVIDIA Corporation
|
|
||||||
# is strictly prohibited.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pcm.!default {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrahda,3"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
hint.description "Tegra HDA Soundcard (tegrahda,3)"
|
|
||||||
}
|
|
||||||
|
|
||||||
ctl.!default {
|
|
||||||
type hw
|
|
||||||
card Tegra
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.music {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrahda,3"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.demixer {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "dmix:tegrahda"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.aux {
|
|
||||||
type hw
|
|
||||||
card "tegrahda"
|
|
||||||
device 7
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.voice {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrahda,3"
|
|
||||||
channels 1
|
|
||||||
rate 8000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.aux_plug {
|
|
||||||
type plug
|
|
||||||
slave.pcm "aux"
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.music_and_voice {
|
|
||||||
type asym
|
|
||||||
|
|
||||||
playback.pcm {
|
|
||||||
type plug
|
|
||||||
|
|
||||||
slave.pcm {
|
|
||||||
type multi
|
|
||||||
|
|
||||||
slaves.a.pcm music
|
|
||||||
slaves.b.pcm voice
|
|
||||||
slaves.a.channels 2
|
|
||||||
slaves.b.channels 1
|
|
||||||
|
|
||||||
bindings.0.slave a
|
|
||||||
bindings.0.channel 0
|
|
||||||
bindings.1.slave a
|
|
||||||
bindings.1.channel 1
|
|
||||||
bindings.2.slave b
|
|
||||||
bindings.2.channel 0
|
|
||||||
}
|
|
||||||
route_policy duplicate
|
|
||||||
}
|
|
||||||
capture.pcm "voice"
|
|
||||||
}
|
|
||||||
@@ -1,91 +0,0 @@
|
|||||||
#
|
|
||||||
# ALSA library configuration file
|
|
||||||
#
|
|
||||||
# Copyright (c) 2015 NVIDIA Corporation. All Rights Reserved.
|
|
||||||
#
|
|
||||||
# NVIDIA Corporation and its licensors retain all intellectual property and
|
|
||||||
# proprietary rights in and to this software and related documentation. Any
|
|
||||||
# use, reproduction, disclosure or distribution of this software and related
|
|
||||||
# documentation without an express license agreement from NVIDIA Corporation
|
|
||||||
# is strictly prohibited.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pcm.!default {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrasndt210ref,0"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
hint.description "Tegra APE Soundcard (tegrasndt210ref,0)"
|
|
||||||
}
|
|
||||||
|
|
||||||
ctl.!default {
|
|
||||||
type hw
|
|
||||||
card tegrasndt210ref
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.music {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrasndt210ref,0"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.demixer {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "dmix:tegrasndt210ref"
|
|
||||||
channels 2
|
|
||||||
rate 48000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.aux {
|
|
||||||
type hw
|
|
||||||
card "Tegra"
|
|
||||||
device 3
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.voice {
|
|
||||||
type plug
|
|
||||||
slave {
|
|
||||||
pcm "hw:tegrasndt210ref,2"
|
|
||||||
channels 1
|
|
||||||
rate 8000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.aux_plug {
|
|
||||||
type plug
|
|
||||||
slave.pcm "aux"
|
|
||||||
}
|
|
||||||
|
|
||||||
pcm.music_and_voice {
|
|
||||||
type asym
|
|
||||||
|
|
||||||
playback.pcm {
|
|
||||||
type plug
|
|
||||||
|
|
||||||
slave.pcm {
|
|
||||||
type multi
|
|
||||||
|
|
||||||
slaves.a.pcm music
|
|
||||||
slaves.b.pcm voice
|
|
||||||
slaves.a.channels 2
|
|
||||||
slaves.b.channels 1
|
|
||||||
|
|
||||||
bindings.0.slave a
|
|
||||||
bindings.0.channel 0
|
|
||||||
bindings.1.slave a
|
|
||||||
bindings.1.channel 1
|
|
||||||
bindings.2.slave b
|
|
||||||
bindings.2.channel 0
|
|
||||||
}
|
|
||||||
route_policy duplicate
|
|
||||||
}
|
|
||||||
capture.pcm "voice"
|
|
||||||
}
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,17 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Copy xusb file to initrd
|
|
||||||
#
|
|
||||||
mkdir -p "${DESTDIR}"/lib/firmware/nvidia/tegra210
|
|
||||||
xusbfile=/lib/firmware/nvidia/tegra210/xusb.bin
|
|
||||||
|
|
||||||
if [ -f "${xusbfile}" ]; then
|
|
||||||
cp "${xusbfile}" "${DESTDIR}"/lib/firmware/nvidia/tegra210
|
|
||||||
fi
|
|
||||||
|
|
||||||
usbold=/lib/firmware/tegra21x_xusb_firmware
|
|
||||||
|
|
||||||
if [ -f "${usbold}" ]; then
|
|
||||||
cp "${usbold}" "${DESTDIR}"/lib/firmware
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# Configuration for the Tegra HD audio
|
|
||||||
|
|
||||||
<confdir:pcm/hdmi.conf>
|
|
||||||
|
|
||||||
tegra-hda.pcm.hdmi.0 {
|
|
||||||
@args [ CARD AES0 AES1 AES2 AES3 ]
|
|
||||||
@args.CARD { type string }
|
|
||||||
@args.AES0 { type integer }
|
|
||||||
@args.AES1 { type integer }
|
|
||||||
@args.AES2 { type integer }
|
|
||||||
@args.AES3 { type integer }
|
|
||||||
type hooks
|
|
||||||
slave.pcm {
|
|
||||||
type hw
|
|
||||||
card $CARD
|
|
||||||
device 3
|
|
||||||
}
|
|
||||||
hint.device 3
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
#
|
|
||||||
# ALSA configuration for the Tegra210 APE soundcard
|
|
||||||
#
|
|
||||||
# Copyright (c) 2018 NVIDIA Corporation. All Rights Reserved.
|
|
||||||
#
|
|
||||||
# NVIDIA Corporation and its licensors retain all intellectual property and
|
|
||||||
# proprietary rights in and to this software and related documentation. Any
|
|
||||||
# use, reproduction, disclosure or distribution of this software and related
|
|
||||||
# documentation without an express license agreement from NVIDIA Corporation
|
|
||||||
# is strictly prohibited.
|
|
||||||
#
|
|
||||||
|
|
||||||
<confdir:pcm/front.conf>
|
|
||||||
|
|
||||||
tegra-snd-t210r.pcm.front.0 {
|
|
||||||
@args [ CARD ]
|
|
||||||
@args.CARD {
|
|
||||||
type string
|
|
||||||
}
|
|
||||||
type hw
|
|
||||||
card $CARD
|
|
||||||
}
|
|
||||||
Binary file not shown.
@@ -1,54 +0,0 @@
|
|||||||
--- a/scripts/package/builddeb
|
|
||||||
+++ b/scripts/package/builddeb
|
|
||||||
@@ -119,10 +119,9 @@
|
|
||||||
libc_headers_dir="$objtree/debian/headertmp"
|
|
||||||
dtb_dir="$objtree/debian/dtbtmp"
|
|
||||||
dbg_dir="$objtree/debian/dbgtmp"
|
|
||||||
-packagename=linux-image"$LOCALVERSION"
|
|
||||||
-fwpackagename=linux-firmware-image"$LOCALVERSION"
|
|
||||||
-kernel_headers_packagename=linux-headers"$LOCALVERSION"
|
|
||||||
-dtb_packagename=linux-dtb"$LOCALVERSION"
|
|
||||||
+packagename=linux-image-legacy"$LOCALVERSION"
|
|
||||||
+kernel_headers_packagename=linux-headers-legacy"$LOCALVERSION"
|
|
||||||
+dtb_packagename=linux-dtb-legacy"$LOCALVERSION"
|
|
||||||
libc_headers_packagename=linux-libc-dev"$LOCALVERSION"
|
|
||||||
dbg_packagename=$packagename-dbg
|
|
||||||
debarch=
|
|
||||||
@@ -150,12 +149,11 @@
|
|
||||||
BUILD_DEBUG="$(grep -s '^CONFIG_DEBUG_INFO=y' $KCONFIG_CONFIG || true)"
|
|
||||||
|
|
||||||
# Setup the directory structure
|
|
||||||
-rm -rf "$tmpdir" "$fwdir" "$kernel_headers_dir" "$libc_headers_dir" "$dbg_dir" "$dtb_dir" $objtree/debian/files
|
|
||||||
+rm -rf "$tmpdir" "$kernel_headers_dir" "$libc_headers_dir" "$dbg_dir" "$dtb_dir" $objtree/debian/files
|
|
||||||
mkdir -m 755 -p "$dtb_dir/DEBIAN"
|
|
||||||
mkdir -p "$dtb_dir/boot/dtb-$version" "$dtb_dir/usr/share/doc/$dtb_packagename"
|
|
||||||
mkdir -m 755 -p "$tmpdir/DEBIAN"
|
|
||||||
mkdir -p "$tmpdir/lib" "$tmpdir/boot"
|
|
||||||
-mkdir -p "$fwdir/lib/firmware/$version/"
|
|
||||||
mkdir -p "$kernel_headers_dir/lib/modules/$version/"
|
|
||||||
|
|
||||||
# Build and install the kernel
|
|
||||||
@@ -425,22 +423,6 @@
|
|
||||||
This is useful for people who need to build external modules
|
|
||||||
EOF
|
|
||||||
|
|
||||||
-# Do we have firmware? Move it out of the way and build it into a package.
|
|
||||||
-if [ -e "$tmpdir/lib/firmware" ]; then
|
|
||||||
- mv "$tmpdir/lib/firmware"/* "$fwdir/lib/firmware/$version/"
|
|
||||||
- rmdir "$tmpdir/lib/firmware"
|
|
||||||
-
|
|
||||||
- cat <<EOF >> debian/control
|
|
||||||
-
|
|
||||||
-Package: $fwpackagename
|
|
||||||
-Architecture: all
|
|
||||||
-Description: Linux kernel firmware, version $version
|
|
||||||
- This package contains firmware from the Linux kernel, version $version.
|
|
||||||
-EOF
|
|
||||||
-
|
|
||||||
- create_package "$fwpackagename" "$fwdir"
|
|
||||||
-fi
|
|
||||||
-
|
|
||||||
cat <<EOF >> debian/control
|
|
||||||
|
|
||||||
Package: $dtb_packagename
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user