主题中讨论的其他器件:TLV320AIC3104、
工具/软件:Linux
我们使用的 tlv320aic3104与工业 EVM 和 BeagleBoard X15上使用的相同、连接方面存在一些差异。
我们使用 mcasp2而不是 mcasp3、不使用线路输入、复位连接到 GPIO。 DVDD 的1.8V 电源是固定的、不像 BeagleBoard X15中那样对其进行控制。
3.3V 也是固定的。 使用 I2C3而不是 I2C1。 由于 EEPROM、我使用100k 或400k。
我不确定是否可以在不更改硬件的情况下使其正常工作。 当我开始为全球显示项目开发新的 DRA726板时、我注意到时钟分配出现硬件错误。 MCLK 连接到 B26、该引脚具有:
1-XREF_CLK3
2-MCASP2_AXR[11]
3- McASP1_AXR[7]
4-MCASP3_ahclkx
5-MCASP7_ahclkx/atl_clk2
6-VOUT2_clk/Vin2a_clk0
7-Time15.
8-GPIO6_19
是否有方法在该引脚上使用时钟、我如何在 devicetree 中声明该时钟?
这里是我的 DT 部分补丁、基于 BeagleBoard X15 devicetree 文件、我将我认为需要更新的器件用红色标出
声音0:声音@0{
兼容="简单音频卡";
simple-audio-card、name ="Global Display";
simple-audio-card、小工具=
"线路"、"线路输出";
简单音频卡,路由=
"线路输出"、 "LLOUT"、
"线路输出"、 "RLOUT";
simple-audio-card、format ="DSP_b";
simple-audio-card、bitclock-master =<&sound0_master>;
simple-audio-card、frame-master =<&sound0_master>;
简单音频卡、位时钟反转;
简单音频卡、CPU{
Sound-Dai =<&mcasp2>;
};
sound0_master:simple-audio-card、codec{
sound-dai =<&tlv320aic3104>;
时钟=<&clkout2_clk>;
};
};
i2c3{(&I)
时钟频率=<100000 >;
状态="正常";
tlv320aic3104:tlv320aic3104@18{
#sound-di-cells =<0>;
兼容="ti、tlv320aic3104";
reg =<0x18>;
分配的时钟=<&clkoutmux2_clk_mux>;
分配的时钟父节点=<&sys_clk2_dclk_ddiv>;
GPIO-RESET =<&GPIO3 29 GPIO_ACTIVE_LOW_>;
adc -稳定-ms =<40>;
AVDD-SUPPLY =<&VDD_3V3>;
IOVdd-supply =<&VDD_3V3>;
DRVDD-SUPPLY =<&VDD_3V3>;
DVDD 电源=<&AIC_DVDD>;
};
EEPROM@50{
兼容="at、24c32";
reg =<0x50>;
pagesize =<32>;
};
};
mcasp2{(&M)
#sound-di-cells =<0>;
分配的时钟=<&mcasp3_ahclkx_mux>;
分配的时钟父级=<&sys_clkin2>;
状态="正常";
OP-MODE =<0>; /* MCASP_IIS_MODE */
TDM-SLOTS =<2>;
/* 4个串行器*/
serial-dir =< /* 0:非活动、1:TX、2:Rx *
1 2 0 0
>;
tx-num-evt =<32>;
Rx-num-evt =<32>;
};
Michel Catudal
ACTIA Corp.