rk3568 驱动es8316节点

目录

注册失败分析

驱动节点注册


author

daisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主

daisy.skye_嵌入式,Linux,Qt-CSDN博客daisy.skye擅长嵌入式,Linux,Qt,等方面的知识https://blog.csdn.net/qq_40715266?type=blog

注册失败分析

[    2.074821] es8316 4-0010: Error applying setting, reverse things back [    2.074848] es8316: probe of 4-0010 failed with error -22

失败的原因分析:

i2c配置问题,根据具体的硬件原理图配置,选择的是i2c4 ,但是不同的i2c有不同的电压

再根据es8316的i2c驱动电压排查是3.3还是1.8V 实际两个都是可以的,但是硬件选择和i2c的电压需要保持一致,否则会无法完成节点注册

rk3568 驱动es8316节点_第1张图片

驱动节点注册

在dtsi中进行配置就可以,具体的驱动代码,rk3568下已经集成了驱动的代码,但是要再核查以下是否包含了驱动的编译

内核编译定义

kernel/arch/arm64/configs/rockchip_evb3568_v2b_defconfig

CONFIG_SND_SOC_ES8316=y

kernel/sound/soc/codecs/rk817_codec.c

CONFIG_SND_SOC_ES8316=y

&i2c4 {
	status = "okay";
	es8316: es8316@10 {
		#sound-dai-cells = <0>;
		compatible = "everest,es8316";
		reg = <0x10>;
		// clocks = <&cru I2S2_MCLKOUT>;
		// clock-names = "mclk";
		// spk-con-gpio = <&gpio0 27 GPIO_ACTIVE_HIGH>;
		// hp-det-gpio = <&gpio0 23 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		// pinctrl-0 = <&i2c4m0_xfer>;
	};
};

你可能感兴趣的:(rk驱动,单片机,嵌入式硬件,es8316,rk3568)