主题中讨论的其他器件:BeagleBoard-X15、 TLV320AIC3104
工具/软件:Linux
你(们)好
为了将 CLKOUT3用作 MCASP2的 MCLK、我将其设置如下。
如上所述、我检查了 mux_data.h 以将 xref_clk3映射到 clkout3。
它设置为 mode9、因此我没有修改它。
我在 am57xx-beagle-x15-common.dtsi 文件中设置 mcasp2_pins。
&dra7_PMX_CORE{
mcasp2_pins:mcasp2_pins{
pinctrl-single、pins =<
DRA7XX_CORE_IOPAD (0x36A0、(PIN_OUTPUT 下拉| MUX_MODE9))/* xref_clk3 *
…
};
mcasp2{(&M)
#sound-di-cells =<0>;
分配的时钟=<&mcasp2_ahclkx_mux>;
分配的时钟父级=<&sys_clkin2>;
pinctrl-names ="default";
pinctrl-0 =<&mcasp2_pines>;
状态="正常";
OP-MODE =<0>;/* MCASP_IIS_MODE */
TDM-SLOTS =<2>;
/* 4个串行器*/
serial-dir =</* 0:非活动、1:TX、2:Rx *
2 1 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>;
tx-num-evt =<32>;
Rx-num-evt =<32>;
};
我更改了编解码器时钟源。
但我不确定这是不是正确的方式。
Sound1:声音@1{
兼容="简单音频卡";
simple-audio-card、name ="BeagleBoard-X15";
simple-audio-card、小工具=
"线路"、"线路输出"、
"线路"、"线路输入";
简单音频卡,路由=
"线路输出"、"LLOUT"、
"线路输出"、"RLOUT"、
"MIC2L"、"线路输入"、
"MIC2R"、"线路输入";
simple-audio-card、format ="DSP_b";
simple-audio-card、bitclock-master =<&sound1_master>;
simple-audio-card、frame-master =<&sound1_master>;
简单音频卡、位时钟反转;
简单音频卡、CPU{
Sound-Dai =<&mcasp3>;
};
Sound1_MASTER:简单音频卡、编解码器{
sound-dai =<&tlv320aic3104>;
时钟=<&clkout3_clk>;
};
};
要定义 clkout3_clk、我向 dra7xx-clocks.dtsi 文件添加了以下内容。
clkout3_clk:clkout3_clk{
#clock-cells =<0>;
兼容="ti、栅极时钟";
时钟=<&clkoutmux3_clk_mux>;
TI、bit-shift =<8>;
reg =<0x06b0>;
};
如果这是正确的、我认为我需要更改与 clkout2_clk 对应的 reg 地址、但我不知道要查看哪个文档。
您能给我一个使用 mcasp2的 MCLK 时钟作为 CLKOUT3的指南吗?
此致
Dohun
