背景:

RK系列开发板音频驱动DAI、DMA、Codec、HCS适配完成之后,需要进行编译,验证驱动是否可用。而操作步骤,主要是指导开发者,如何正确使用音频驱动,通过命令来控制音频文件的播放等。 步骤:
一.1. 编译配置• audio驱动编译配置文件路径:  vendor\RK系列开发板\hdf_config\khdf\audio• audio
驱动私有配置文件编译配置文件:

 vendor\rockchip\RK系列开发板\hdf_config\khdf\hdf.hcs• defconfig文件  kernel\linux\linux-5.10\arch\arm64\configs\defconfig...CONFIG_DRIVERS_HDF_AUDIO_RK系列开发板=y• Kconfig文件:  drivers\adapter\khdf\linux\model\audio\Kconfigconfig DRIVERS_HDF_AUDIO_RK系列开发板    bool "Enable HDF Audio Codec driver"    default y    depends on DRIVERS_HDF_AUDIO    help        Answer Y to choice HDF Audio Codec driver.• Makefile文件:  drivers\adapter\khdf\linux\model\audio\MakefileKHDF_AUDIO_BASE_ROOT_DIR = ../../../../../../../..KHDF_AUDIO_RK系列开发板_DIR = $(KHDF_AUDIO_BASE_ROOT_DIR)/device/rockchip/RK系列开发板/audio KHDF_AUDIO_KHDF_ROOT_DIR = drivers/hdf/khdfKHDF_FRAMEWORK_ROOT_DIR = drivers/hdf/frameworkKHDF_AUDIO_RK系列开发板_INC_DIR = $(KHDF_FRAMEWORK_ROOT_DIR)/../../device/rockchip/RK系列开发板/audio obj-$(CONFIG_DRIVERS_HDF_AUDIO_RK系列开发板) += \          $(KHDF_AUDIO_RK系列开发板_DIR)/soc/src/RK系列开发板_dma_ops.o \          $(KHDF_AUDIO_RK系列开发板_DIR)/soc/src/RK系列开发板_dma_adapter.o \          $(KHDF_AUDIO_RK系列开发板_DIR)/dai/src/RK系列开发板_dai_adapter.o \          $(KHDF_AUDIO_RK系列开发板_DIR)/dai/src/RK系列开发板_dai_ops.o \          $(KHDF_AUDIO_RK系列开发板_DIR)/codec/src/es8388_codec_adapter.o \          $(KHDF_AUDIO_RK系列开发板_DIR)/codec/src/es8388_codec_ops.o ccflags-$(CONFIG_DRIVERS_HDF_AUDIO_RK系列开发板) +=  -lm -lc -lgcc -std=gnu99 -Werror \             -I$(srctree)/$(KHDF_AUDIO_KHDF_ROOT_DIR)/osal/include \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/include/core \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/include/utils \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/include/osal \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/include/platform \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/include/audio \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/ability/sbuf/include \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/core/common/include/host \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/model/audio/core/include \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/model/audio/sapm/include \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/model/audio/dispatch/include \             -I$(srctree)/$(KHDF_FRAMEWORK_ROOT_DIR)/model/audio/common/include \             -I$(srctree)/bounds_checking_function/include \             -I$(srctree)/$(KHDF_AUDIO_RK系列开发板_INC_DIR)/soc/include \             -I$(srctree)/$(KHDF_AUDIO_RK系列开发板_INC_DIR)/dai/include \             -I$(srctree)/$(KHDF_AUDIO_RK系列开发板_INC_DIR)/codec/include

2. 编译内核• 执行make_kernel.sh• 生成镜像文件:

 out\KERNELOBJ\kernel\srctmp\linux-4.19\boot.img操作步骤,主要是指导开发者,如何正确使用音频驱动,通过命令来控制音频文件的播放等。步骤:

3. 播放Demo操作步骤• Step1:

执行hdc shell• Step2:运行audiosamplerender • Step3:输入2 (选择2.Render SmartPA)• Step4:输入1 (选择1.Render Direct Loading)• Step5:输入1 (选择1.Render Start)• Step6:在播放过程可以输入2-12,操作其他功能,其中音量范围0-1,可输入2位小数。 [可选步骤]
image.png

4. 录音Demo操作步骤

录音Demo当前默认使用的是外置Codec。• Step1:执行hdc shell• Step2:运行audiosamplecapture • Step3:输入1 (选择1.Capture Direct Loading)• Step4:输入1 (选择1.Capture Start)• Step5:在播放过程可以输入2-12,操作其他功能,其中音量范围0-1,可输入2位小数。 [可选步骤]
image.png
 # 总结:
通过编译配置、并执行make_kernel.sh命令,最后生成镜像文件 boot.img,通过烧录工具烧录,即可验证驱动。RK系列开发板音频驱动适配指南,从DAI驱动适配、DMA的驱动适配到到编译内核以及本文的操作步骤指导,掌握了核心代码和步骤,更深入了解了驱动适配的整个过程。一整套流程下来,就可以适配RK系列开发板音频驱动了。也希望在今后,能有更多的精彩内容分享给大家,谢谢!


鸿湖万联OS
1 声望3 粉丝

引用和评论

0 条评论