You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
ALSA: hda - Add driver for Tegra SoC HDA
This adds a driver for the HDA block in Tegra SoCs. The HDA bus is used to communicate with the HDMI codec on Tegra124. Most of the code is re-used from the Intel/PCI HDA driver. It brings over only two of the module params, power_save and probe_mask. Signed-off-by: Dylan Reid <dgreid@chromium.org> Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
NVIDIA Tegra30 HDA controller
|
||||
|
||||
Required properties:
|
||||
- compatible : "nvidia,tegra30-hda"
|
||||
- reg : Should contain the HDA registers location and length.
|
||||
- interrupts : The interrupt from the HDA controller.
|
||||
- clocks : Must contain an entry for each required entry in clock-names.
|
||||
See ../clocks/clock-bindings.txt for details.
|
||||
- clock-names : Must include the following entries: hda, hdacodec_2x, hda2hdmi
|
||||
- resets : Must contain an entry for each entry in reset-names.
|
||||
See ../reset/reset.txt for details.
|
||||
- reset-names : Must include the following entries: hda, hdacodec_2x, hda2hdmi
|
||||
|
||||
Example:
|
||||
|
||||
hda@0,70030000 {
|
||||
compatible = "nvidia,tegra124-hda", "nvidia,tegra30-hda";
|
||||
reg = <0x0 0x70030000 0x0 0x10000>;
|
||||
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA124_CLK_HDA>,
|
||||
<&tegra_car TEGRA124_CLK_HDA2HDMI>,
|
||||
<&tegra_car TEGRA124_CLK_HDA2CODEC_2X>;
|
||||
clock-names = "hda", "hda2hdmi", "hdacodec_2x";
|
||||
resets = <&tegra_car 125>, /* hda */
|
||||
<&tegra_car 128>; /* hda2hdmi */
|
||||
<&tegra_car 111>, /* hda2codec_2x */
|
||||
reset-names = "hda", "hda2hdmi", "hdacodec_2x";
|
||||
};
|
||||
@@ -20,6 +20,21 @@ config SND_HDA_INTEL
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called snd-hda-intel.
|
||||
|
||||
config SND_HDA_TEGRA
|
||||
tristate "NVIDIA Tegra HD Audio"
|
||||
depends on ARCH_TEGRA
|
||||
select SND_HDA
|
||||
help
|
||||
Say Y here to support the HDA controller present in NVIDIA
|
||||
Tegra SoCs
|
||||
|
||||
This options enables support for the HD Audio controller
|
||||
present in some NVIDIA Tegra SoCs, used to communicate audio
|
||||
to the HDMI output.
|
||||
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called snd-hda-tegra.
|
||||
|
||||
if SND_HDA
|
||||
|
||||
config SND_HDA_DSP_LOADER
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
snd-hda-intel-objs := hda_intel.o
|
||||
snd-hda-controller-objs := hda_controller.o
|
||||
snd-hda-tegra-objs := hda_tegra.o
|
||||
# for haswell power well
|
||||
snd-hda-intel-$(CONFIG_SND_HDA_I915) += hda_i915.o
|
||||
|
||||
@@ -47,3 +48,4 @@ obj-$(CONFIG_SND_HDA_CODEC_HDMI) += snd-hda-codec-hdmi.o
|
||||
# otherwise the codec patches won't be hooked before the PCI probe
|
||||
# when built in kernel
|
||||
obj-$(CONFIG_SND_HDA_INTEL) += snd-hda-intel.o
|
||||
obj-$(CONFIG_SND_HDA_TEGRA) += snd-hda-tegra.o
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user