Linux驱动开发之ALSA驱动platform
概述
ALSA驱动platform
背景
基于正点原子的i.MX6ULL开发板,Linux内核版本 4.1.15
源文件
sound/soc/fsl/fsl_sai.c
static struct snd_soc_dai_driver fsl_sai_dai = {
.probe = fsl_sai_dai_probe,
.playback = {
.stream_name = "CPU-Playback",
.channels_min = 1,
.channels_max = 2,
.rate_min = 8000,
.rate_max = 192000,
...
Linux驱动开发之ALSA驱动mach
概述
ALSA驱动machine
背景
基于正点原子的i.MX6ULL开发板,Linux内核版本 4.1.15
源文件
sound/soc/fsl/imx-wm8960.c
static struct snd_soc_dai_link imx_wm8960_dai[] = {
{
.name = "HiFi",
.stream_name = "HiFi",
.codec_dai_name = "wm8960-hifi",
.ops = &imx_hifi_ops,
},
{
.name = "HiFi-ASRC-FE",
.stream_n...
Linux驱动开发之ALSA驱动codec
概述
ALSA驱动codec
背景
基于正点原子的i.MX6ULL开发板,Linux内核版本 4.1.15
源文件
sound/soc/codecs/wm8960.c
static struct snd_soc_dai_driver wm8960_dai = {
.name = "wm8960-hifi",
.playback = {
.stream_name = "Playback",
.channels_min = 1,
.channels_max = 2,
.rates = WM8960_RATES,
.formats = WM8960_FORMATS,},
...
cmake之函数
函数
添加函数
为每个源文件添加 __FILENAME__ 宏
# utils.cmake
#重新定义当前目标的源文件的 __FILENAME__ 宏
function(redefine_file_macro targetname)
#获取当前目标的所有源文件
get_target_property(source_files "${targetname}" SOURCES)
#遍历源文件
foreach(sourcefile ${source_files})
#获取当前源文件的编译参数
get_property(defs SOURCE "${sourcefile}"
PROPERTY COM...
msys2环境下使用外部mingw64编译器
电脑环境
Windows 10
msys2
QT5.14.2 mingw64(已安装)
步骤
安装 msys2
下载安装包 https://www.msys2.org/
运行安装包,选择安装目录,默认安装即可
配置 msys2
运行 msys2,输入 pacman -Syu 更新软件包
安装常用软件包:pacman -S git zsh vim tree make autoconf automake libtool
安装 mingw64 编译器:pacman -S mingw-w64-x86_64-toolchain
注意:如果要使用外部编...
ubuntu下交叉编译tinyalsa
环境
Ubuntu 20.04.2 LTS
tinyalsa-2.0.0
下载源码
Github https://github.com/tinyalsa/tinyalsa
解压
tar -xvf tinyalsa-2.0.0.tar.bz2
编译源码
添加交叉编译配置
# vim toolchain_arm_linux_gcc.cmake
# 设置C和C++编译器路径
set(CMAKE_C_COMPILER "/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc")
set(CMAKE_C...
ubuntu下交叉编译alsa-lib和alsa-utils
环境
Ubuntu 20.04.2 LTS
alsa-lib-1.2.2
alsa-utils-1.2.2
下载源码
官网https://www.alsa-project.org
解压
tar -xvf alsa-lib-1.2.2.tar.bz2
tar -xvf alsa-utils-1.2.2.tar.bz2
安装依赖
sudo apt install -y build-essential gcc g++ cmake libxkbcommon-x11-dev libgl1-mesa-dev libglu1-mesa-dev libfontconfig1-dev libmysqlclient-dev l...
ubuntu下编译QT
环境
Ubuntu 20.04.2 LTS
Qt 5.14.2
下载源码
官网https://download.qt.io/archive/qt/
完整路径https://download.qt.io/archive/qt/5.14/5.14.2/single/qt-everywhere-src-5.14.2.tar.xz
解压
# 注意解压路径不要有中文
tar -xvf qt-everywhere-src-5.14.2.tar.xz
安装依赖
sudo apt install -y build-essential gcc g++ cmake libxkbcommon-x11-dev libgl1-mesa-dev lib...
共计 76 篇文章,10 页。