This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TAS2563QFNEVM:TAS2563:TAS2563 在具有 IMX95 的 Linux 内核 6.12 上集成

Guru**** 2797575 points

Other Parts Discussed in Thread: TAS2562, TAS2563, TAS2781

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1619894/tas2563qfnevm-tas2563-tas2563-integration-on-linux-kernel-6-12-with-imx95

器件型号: TAS2563QFNEVM
Thread 中讨论的其他器件: TAS2563、TAS2562、 TAS2781

TI 器件型号 TAS2563 已集成在一款基于 Yocto 和内核版本 6.12 (NXP) 的 i.MX95 SOC 的产品中。

在这里、我正在寻找相应的驱动程序支持来识别 TAS2562 硬件并使用其功能。
以前、我的一个同事工作过相同的、但使用内核版本 6.6 时、下面是相同用例的票证链接。

TAS2563:TAS2563 集成在具有 IMX95 的 Linux 内核 6.6 上。 驱动程序已加载、在 aplay 中检测到卡。 但 48KHz wav 文件不是运行的。 -放大器论坛 — 放大器- TI E2E 支持论坛 

上述论坛中建议的更改是否也适用于内核 6.12?

如果不是、请就此新案例寻求支持。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、伙计。

    请告诉我您将使用的是地球上的哪款芯片、即 TAS2563 或 TAS2562。 在标题中、您提到了 TAS2563、而在 TAS2562 中。

    实际上、内核 6.12 已经包含 TAS2563 驱动程序、请参阅 tas2781-i2c.c«codes«soc«sound - kernel/git/stable/linux.git - linux 内核稳定树

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、丁胜豪:

    感谢您的联系、并对您的困惑深表歉意。  
    使用的芯片是 TAS2563。

    您能否确认以下补丁的使用、TI 在使用内核版本为 6.6.x 的另一个论坛中共享了该补丁
    e2e.ti.com/.../tas2563-tas2563-integrated-on-linux-kernel-6-6-with-imx95-driver-got-loaded-card-detected-in-aplay-but-the-48khz-wav-files-are-not-runnig

    “tas2781-audio-codec.patch"</s>“

    此补丁程序具有与以下文件相关的更改
    1.  include/sound/tas2781-comlib-i2c.h
    2.  include/sound/tas2781-dsp.h
    3. include/sound/tas2x20-tlv.h
    4. include/sound/tas5825-tlv.h
    5. sound/i2c/codecs/tas2781-comlib-i2c.c soc
    6. sound/tas2781-comlib.c soc
    7. sound/smwlib/codecs/tas2781-fmwlib.c soc
    8. sound/i2c/codecs/tas2781-i2c.c soc

    并在下面的 SET 配置被添加  
    +config_snd_SOC_TAS2781 _COMLIB=y
    +config_snd_SOC_TAS2781 _COMLIB_I2C=y
    +config_snd_SOC_TAS2781 _fmwLIB=y
    +config_snd_SOC_TAS2781 _I2C=y

    上述一些文件在 6.12 中可用、但内容与补丁中定义的完全相同。

    您能否建议从该补丁中是否需要选择任何内容、以及启用哪些配置来使 TAS2563 正常工作?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您可以直接在内核 6.12 中起诉代码。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在内核 6.12 中、没有  config_snd_SOC_TAS2781 _COMLIB_I2C、因此您不会介意这一点。

    您要做的是在您的平台上注册声卡。 如果您有问题、可以咨询平台供应商。 他们有许多示例可以注册第三方音频放大器。 祝你好运。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在不添加任何补丁且仅更改器件树以添加 TAS2563 的情况下、会出现探针错误。

    localhost:~$ dmesg | grep -i “tas2563"</s>“
    [21.743068] platform sound-tas2563:递延探头待定: ASOC-simple-card: parse error

    下面是 DTS 更改。

    sound-tas2563{
    compatible =“simple-audio-card";“;
    simple-audio-card、name =“tas2563";“;
    简单音频卡、格式=“I2S_";“;
    simple-audio-card、frame-master =<&CPU_DAI>;
    simple-audio-card、bitclock-master =<&CPU_DAI>;
    简单音频卡、小工具=
    “扬声器“、“SPK";“;
    简单音频卡、路由=
    “ASI",“,"SPK"、"SPK",“,</s>“ 、
    “SPK",“,"OUT"、"OUT",“,</s>“ 、
    “DMIC",“,"ASI、"ASI OUT"“ OUT";“;
    cpu_dai:simple-audio-card、cpu{
    sound-dai =<&sai3>;
    dai-tdm-slot-num =<1>;
    dai-tdm-slot 宽度=<16>;
    };

    codec_dai:simple-audio-card、codecc{
    Sode-Dai =<&AUDIO_amp>;
    };
    };


    audio_amp:tas2563@4c{
    兼容=“ti、tas2563“;
    reg =<0x4c>;
    #sound-dai-cells =<0>;

    Reset-GPIO =<&GPIO_expander 0 GPIO_ACTIVE_HIGH>;

    Clocks =<&SCMI_clk IMX95_CLK_SI3>;
    时钟名称=“MCLK";“;

    VDD 电源=<Registered_3p3v>;
    IOVDD 电源=<Registered_1p8v>;
    };

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我正在进行相同的 DTS 更改、能够使用内核 6.6 检测/探测 TAS2563。

    我确认硬件基板没有任何变化、但仅使用了 NXP 的 i.MX95 SOC 最新版本、该版本基本上支持最低内核版本 6.12。

    我在这里尝试将内核 6.6.x 移植到 6.12.x

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    为什么不就 DTS 设置咨询平台供应商?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否意味着内核 6.6 中使用相同的 DTS 设置?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、您能否确认要使用哪个 reg addr?
    它是  reg =<0x4c>;或 reg =<0x48>;?

    在 i2c 探针中、我看到两者都被检测到但未使用。

    localhost:~$sudo i2cdetect -y 3.
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00:-------- -----
    10:-------- ----- ----- --
    第 20 章:一个男人 ----- ----- --
    第 30 章:你是我的女人 ----- ----- --
    第 40 章:我是你的女人 -–48--4c-----</s>–4
    第 50 章:我是你的女人 ----- ----- --
    第 60 章:我是你的女人 ----- ----- --
    第 70 章:我是你的女人
    本地主机:~$


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    0x4c 是右侧的、无关 0x48、0x48 用于多个 tas2563 中的广播、例如两个或四个。 您的器件中只有一个 TAS2563。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、那么您可以指导解决 延迟的探头错误。
    启动 TAS2563 需要什么配置。
    除了数据表外、是否有任何应用手册类型的文档来指导与最新内核版本的集成。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好
    我可以解决探针错误、并可以从 aplay -l 读取 TAS2563 声卡

    localhost:~$ aplay -l
    ****播放硬件设备列表****
    卡 0:tas2563 [tas2563]、设备 0:sai-tx-rx-tasdev_codec tasdev_codec-0 [sai-tx-rx-tasdev_codec-0]
    子设备:1/1
    SUBDEVICE #0:SUBDEVICE #0


    dmesg 中的日志描述了:
    TASDEV-CODEC 3-004C:tas2563RCA1.bin 的直接固件加载失败、出现错误–2
    tasdev-codec 3-004C:回退到 sysfs 回退:tas2563RCA1.bin
    tasdev-codec 3-004C:无法读取 tas2563RCA1.bin


    我可以得到二进制“tas2563RCA1.bin"吗“吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我能够解决探测错误、并能从 aplay -l
    读取 TAS2563 声卡

    我想您是新工程师。 也许这是您职业生涯中的重要一步。 恭喜!

    对于 tas2563RCA1.bin、请点击以下链接进行访问。  

    tidrive.ext.ti.com/.../44a3f155-a8d4-46c0-9cb0-73aa25487dc3

    访问密码: 14yj.rk

    文件夹  rca/jsn file/tas2563 中是 tas2563RCA1.bin。 您可以正确地使用它。

    或者、您可以自行创建、以下是说明:

    在 rca/jsn file/tas2563 文件夹中、可以找到 tas2563-1amp-reg.json。 PLS 使用 regbin-toolv1.4.2 (rca/tooleta/regbin tool/pl.v1.4.2.zip) 生成 Non_Integrated_Bin_Tool_文件。

    指南为“RCA/tooleta/regbin tool/Regbin Tool User Guidelin.pdf“。

    至于如何在 tas2563RCA1.bin 中选择音频配置文件、我想学习 Audio AMP Linux 驱动程序移植指南的 P43 ~ P45、P49~P50。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Shenghao:
    感谢您共享 tas2563RCA1.bin 文件。 发布 tas2563RCA1.bin 在/lib/firmware 中、我可以从 dmesg 日志中看到以下内容。

    TASDEV-CODEC 3-004C:tas2563_coef.bin 的直接固件加载失败、出现错误–2
    tasdev-codec 3-004C:回退到 sysfs 回退:tas2563_coef.bin

    我不确定这种依赖关系是否会阻止 TAS2562 功能、因为我尝试使用.wav 扩展名录制音频文件、在该过程中未遇到任何故障或错误、但当我尝试从 Windows 机器播放录制的音频文件时、我无法从 wav 文件听到任何语音提示/音频。

    以下是所遵循的步骤。

    localhost:~$ aplay -l
    ****播放硬件设备列表****
    卡 0:tas2563 [tas2563]、设备 0:sai-tx-rx-tasdev_codec tasdev_codec-0 [sai-tx-rx-tasdev_codec-0]
    子设备:1/1
    SUBDEVICE #0:SUBDEVICE #0


    localhost:~$ arecord -l
    ****捕获硬件设备列表****
    卡 0:tas2563 [tas2563]、设备 0:sai-tx-rx-tasdev_codec tasdev_codec-0 [sai-tx-rx-tasdev_codec-0]
    子设备:1/1
    SUBDEVICE #0:SUBDEVICE #0


    localhost:/userdata$ areord -t wav -c 1 -f S16_LE -r 48000 -v test_2_koala.wav &
    [1] 1143.
    localhost:/userdata$ Plug PCM:路由转换 PCM (sformat=S16_LE)
    转换表:
    0 <- 0*0.5 + 1*0.5
    其设置为:
    STREAM:捕获
    访问:rw_interleaved
    格式:S16_LE
    子格式:标准
    频道:1.
    价格:48000
    确切费率:48000(48000/1)
    第 16 章我是不是
    buffer_size:5760
    时代大小:1920 年
    PERIOD_TIME:40000
    tstamp_mode:启用
    tstamp_type :单调
    PERIOD_STEP:1.
    1920
    PERIOD_EVENT:0
    start_threshold:1.
    stop_threshold:5760
    SILENY_THRESHOLD:0
    SILENY_SIZE:0
    边界:6485183463413514240
    从:直接侦听 PCM
    其设置为:
    STREAM:捕获
    访问:MMAP 交错
    格式:S16_LE
    子格式:标准
    频道:2.
    价格:48000
    确切费率:48000(48000/1)
    第 16 章我是不是
    buffer_size:5760
    时代大小:1920 年
    PERIOD_TIME:40000
    tstamp_mode:启用
    tstamp_type :单调
    PERIOD_STEP:1.
    1920
    PERIOD_EVENT:0
    start_threshold:1.
    stop_threshold:5760
    SILENY_THRESHOLD:0
    SILENY_SIZE:0
    边界:6485183463413514240
    硬件 PCM 卡 0 “tas2563"设备“设备 0 子设备 0
    其设置为:
    STREAM:捕获
    访问:MMAP 交错
    格式:S16_LE
    子格式:标准
    频道:2.
    价格:48000
    确切费率:48000(48000/1)
    第 16 章我是不是
    buffer_size:5760
    时代大小:1920 年
    PERIOD_TIME:40000
    tstamp_mode:启用
    tstamp_type :单调
    PERIOD_STEP:1.
    1920
    PERIOD_EVENT:0
    start_threshold:1.
    STOP_THRESHOLD:6485183463413514240
    SILENY_THRESHOLD:0
    SILENY_SIZE:0
    边界:6485183463413514240
    Appl_ptr:0
    hw_ptr:0
    录制的波形“test_2_koala.wav":“:有符号的 16 位小端字节序、速率 48000 Hz、单声道

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    STEVAL-MICS006V1 |产品 — STMicroelectronics

    我使用的是上述 PDM 麦克风品牌

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、大家好

    1) 键入 amixer 在您的系统,我会检查 RCA 文件是否已正确加载首先。

    2) 共享您使用的回放命令。

    3) 也与我分享你播放的 wav 文件

    至于 coef.bin、您是否使用了 PPC3 工具来生成用于 PDM 录制的 BIN 文件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    请查找内联回复。

    1) 键入 amixer 在您的系统,我会检查 RCA 文件是否已正确加载首先。

    localhost:/$ amixer
    简单的混合器控制'Speaker Digital',0
    功能:卷加入
    回放频道:Mono
    捕捉通道:单声道
    限值:0 - 255
    单声道:243 [95%][0.00dB]
    简单的混合器控制“Speaker Force Firmware Load“、0
    功能:pswitch pswitch-joined
    回放频道:Mono
    Mono:播放【关闭】
    简单的混音器控制“Speaker Profile ID“,0
    功能:卷加入
    回放频道:Mono
    捕捉通道:单声道
    限值:0 - 10
    单声道:0 [0%]

    2) 共享您使用的回放命令。
    我不使用播放(此处为 aplay)、因为目前我没有扬声器来连接 TAS2563。

    我的目的是录制音频文件 (.wav) 并将其移至 Windows 笔记本电脑以使用媒体播放器进行验证。

    3) 也与我分享你播放的 wav 文件
    e2e.ti.com/.../test_5F00_2_5F00_koala.wav

    e2e.ti.com/.../pdm_5F00_test.wav

    4)  至于 coef.bin,您是否使用了 PPC3 工具来生成用于 PDM 录制的 BIN 文件?

    否、我尚未使用 PPC3 工具

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这对我来说是个好主意。 RCA 已成功加载。 下一步、将 PDM coef bin 文件添加到系统中。

    如果没有 PDM coef bin 文件、录制将无法正常工作。

    通常、我们首先调试播放、以确保系统时钟和音频路径正常工作、然后进行调试记录。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的确认。 您能否帮助我找到“tas2563_coef.bin",“,或者、或者如何根据需要生成一个?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我来将您的申请转移给 TAS2563 专家。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    tidrive.ext.ti.com/.../44a3f155-a8d4-46c0-9cb0-73aa25487dc3

    访问密码: 14yj.rk

    此链接已过期、是否可能刷新?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    tidrive.ext.ti.com/.../44a3f155-a8d4-46c0-9cb0-73aa25487dc3

    访问代码:Lf45.qKK

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我的 amixer 控制输出仅与扬声器相关控件相关、但与 PDM 麦克风无关。

    localhost:/$ amixer 控件
    NUMID=1、iface=混音器、name='Speaker 数字音量'
    numid=2、iface=混频器、name='Speaker Force Firmware Load'
    NUMID=3、iface=混音器、NAME='Speaker Profile ID'

    我在这里遗漏了与 PDM 相关的内容吗?

    在其中一个自述文件中、我看到下面提到的内容。  

    PDM 开/关特性:
    在运行 avplay&arecord 之前、请运行以下命令以打开 PDM
    amixer cset numid=6, iface=mixer, name='PDM switch ctrl' 1.
    在运行 avplay&arecord 之前、请运行以下命令以关闭 PDM
    amixer cset numid=6、iface=mixer、name='PDM switch Ctrl' 0


    但在我的场景中、我看不到与 PDM 相关的控件。


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    所有与寄存器相关的设置都在 RCA bin 文件中。 您可以在重新编码之前选择配置文件 8。

    配置文件 8 为 08-PDM-rec-I2S-48kHz-32bit-tx-slot-0-1-mic 时隙 3-ref、用于 RX 路径(播放路径)为 32 位 I2S、TX 路径(音频录制路径)用于 16 位 4 时隙 TDM DSP-A、时隙 0/1 为 PMIC 数据、时隙 3 为回声基准、时隙 2 无数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能帮助我完成这些更改并为我生成 RCA bin 文件吗?
    很抱歉我提出这个请求、因为我以前没有使用过这个工具、我可能需要一些时间来适应它。
    此外、我们还计划于明天为 TAS2563 用例进行概念验证演示。


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该文件已经包含该设置。

    简单的混音器控制“Speaker Profile ID“,0
    功能:卷加入
    回放频道:Mono
    捕捉通道:单声道
    限值:0 - 10
    单声道:0 [0%]

    关键字“限值“表示配置文件 0 ~ 10。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Shenghao:

    我可以获取  tas2563_coef.bin 文件吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    抱歉、我没有用于 PDM 的 coef.bin。 现在、让我们来看看 PDM 有什么问题吗?