1 在初始化文件中加入UDA1341 设备结构
Linux-2.6.32.2 已经完美的支持UDA1341 音频芯片的驱动, 我们只要在arch/arm/mach-s3c2440/mach-mini2440.c 文件中注册UDA1341 平台设备的控制端口就可以了,打开mach-mini2440.c,添加如下内容:
;在文件首部添加头文件
#include
;在LCD 平台设备后面添加UDA1341 设备结构
static struct s3c24xx_uda134x_platform_data s3c24xx_uda134x_data = {
.l3_clk = S3C2410_GPB(4),
.l3_data = S3C2410_GPB(3),
.l3_mode = S3C2410_GPB(2),
.model = UDA134X_UDA1341,
};
static struct platform_device s3c24xx_uda134x = {
.name = 's3c24xx_uda134x',
.dev = {
.platform_data = &s3c24xx_uda134x_data,
}
};
;注册UDA1341 设备平台到内核中
static struct platform_device *mini2440_devices[] __initdata = {
&s3c_device_usb,
&s3c_device_rtc,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_i2c0,
&s3c_device_iis,
&mini2440_device_eth,
&s3c24xx_uda134x,
&s3c_device_nand,
};
这样,我们基本就添加好了UDA1341 音频设备的驱动,接下来我们在内核中配置该驱动。
2 在内核中配置UDA1341 设备驱动
在内核源代码目录输入:make menuconfig 开始配置内核,依次选择如下子菜单,找到音频驱动配置菜单:
Device Drivers --->
<*> Sound card support --->
如图,按空格选中“[*] Preclaim OSS device numbers ”,再选中“<*> Advanced Linux Sound Architecture --->”,并回车进入该子菜单.出现音频驱动体系结构哦诶只菜单,在这里,我们选择OSS 接口相关的配置选项,需
要注意的是,这里的OSS 接口其实是基于ALSA 接口创建的,因为新的内核中现在都已经改用ALSA 设计,这里是为了和以前的软件兼容才这样做的,选择以下几个
<*>OSS Mix API
<*>OSS PCM API
<*>verbose procfs cotnets
再选择“<*> ALSA for SoC audio support --->”子菜单并回车进入,我们的开发板使用的是UDA1341 音频芯片,在这里当然要选择“-*- SoC I2S Audio support UDA134X wired to a S3C24XX”了。
退出保存以上各项配置。
关键字:linux-2 6 mini2440开发板 移植 UDA1341 音频驱动
引用地址:
linux-2.6.32在mini2440开发板上移植 移植UDA1341 音频驱动
推荐阅读最新更新时间:2026-03-22 00:31
linux-2.6.32在mini2440开发板上移植 移植UDA1341 音频驱动
1 在初始化文件中加入UDA1341 设备结构 Linux-2.6.32.2 已经完美的支持UDA1341 音频芯片的驱动, 我们只要在arch/arm/mach-s3c2440/mach-mini2440.c 文件中注册UDA1341 平台设备的控制端口就可以了,打开mach-mini2440.c,添加如下内容: ;在文件首部添加头文件 #include sound/s3c24xx_uda134x.h ;在LCD 平台设备后面添加UDA1341 设备结构 static struct s3c24xx_uda134x_platform_data s3c24xx_uda134x_data = { .l3_clk =
[单片机]
linux-2.6.32在mini2440开发板上移植-移植yaffs2
编者:这里并不是移植yaffs2文件系统,只是给内核打个补丁,使之支持yaffs2文件系统。 1、获取yaffs2 源代源码 现在大部分开发板都可以支持yaffs2 文件系统,它是专门针对嵌入式设备,特别是使用nand flash 作为存储器的嵌入式设备而创建的一种文件系统,早先的yaffs 仅支持小页(512byte/page)的nand flash,现在的开发板大都配备了更大容量的nand flash,它们一般是大页模式的(2K/page),使用yaffs2 就可以支持大页的nand flash,下面是yaffs2 的移植详细步骤。 在 http://www.yaffs.net/node/346 可以下载到最新的yaffs2
[单片机]
U-Boot-1.1.6移植到MINI2440开发板(1) —— 移植前分析
将U-Boot-1.1.6移植到MINI2440开发板上,从NAND Flash启动(不使用NOR Flash)。 需要准备的: Linux环境:Ubuntu 16.04 交叉编译工具链:arm-linux-gcc-3.4.5 U-Boot-1.1.6源码:u-boot-1.1.6.tar.bz2 S3C2440手册:S3C2440A 32-BIT CMOS MICROCONTROLLER USERS MANUAL ARM920T技术手册:ARM920T Technical Reference Manual 其它相关datasheet 参考资料:《嵌入式Linux应用开发完全手册》以及网上博客(#^.^#)。 说明:下述涉
[单片机]
S3C2440 音频解码芯片WM8976声卡驱动移植 (三十一)
本节学习: 分析linux中的OOS声卡系统 修改s3c2410-uda1341.c的控制部分,移植wm8976声卡 使用madplay应用程序播放mp3 本节常用英语单词: volume:音量,dsp:数字信号处理(Digital Signal Processing),mixer:混音器,unit:单位,个体 1、声音三要素 采样频率 音频采样率是指录音设备在一秒钟内对声音信号的采样次数,常用的采样率有: 8KHz ---电话所用采样率,对于人的说话已经足够清楚 22.05KHz ---无线电广播所用采样率 32KHz ---miniDV数码视频、DAT所用采样率 44.1KHz ---音频CD,也常用于
[单片机]
stm32f103C8T6移植enc28j60+UIP1.0
移植环境(蓝色粗体字为特别注意内容) 1,开发板:STM32F103C8T6最小系统开发板。 2,开发环境:Keil uv5 3,参考文献:https://blog.csdn.net/wzs298/article/details/12228481 移植ENC28J60这个网络模块可谓是困难重重啊,。。。。。找了很多个例子都没有成功的,只能说很坑很坑,我不知道网上为什么那么多人抄袭,,没有经过自己验证就copy出来。。。。捣鼓了一天终于把这个坑爹的模块搞定了,,,, 先来贴一张图片: 本例程移植uIP-1.0协议栈,演示开发板和PC间的TCP通信。自定义了一个简单的应用层 通信协议。本例程实现的功能有: (1)通过
[单片机]
STM32F103R8T6系统移植到STM32F103RCT6
1 由于工作需要原来的STM32F103R8T6需要升级到RCT6由此也需要把软件系统移植到RCT6但是移植过来的时候由于r8的定时只有T1--T4 ,RC有6个定时器所以遇到自己认为很奇怪的问题。 问题1 代码移植过来后发现有些定时器根本不工作,时钟也使能啦,定时器也配置啦,根本找不到什么问题,被逼的没办法啦。后来就更新ST公司给的配置文件。 原来工程配置文件需要更新为下面这两个配置文件 新更新的文件
[单片机]
STM32F302R8T6移植RT-THREAD SRAM配置
自上篇文章,终于可以下载程序到芯片中.然后用ST-LINK在线调试,发现跑到RT-THREAD中的 rt_system_heap_init函数就不出来,跟踪进入 在两者中间就出现硬件错误的中断. 查看一下HEAP初始化的大小 可以明显看到错误在HEAP的尾地址. 看一下调用的参数 view plain copy rt_system_heap_init((void*)STM32_SRAM_BEGIN, (void*)STM32_SRAM_END); 问题就在STM32_SRAM_END这里,上图看一下 修改后的参数为 view plain copy // /e // o Inte
[单片机]
玩转mini2440开发板之【制作和修改linux启动logo图片】
今天玩一玩linux启动logo图片的修改和制作。 对于我手头的mini2440开发板,其实厂家友善之臂原本是有配一个转换工具的,用起来会比较简单。但是,它那个工具仅针对32位的Fedora 9系统开发,而我目前使用的是64位的Ubuntu 14.04的系统,因此根本用不了,于是干脆自己研究一下。 一、准备工作 请自己准备一张图片,必须是png格式的。如果不是,请先用win系统自带的画图工具进行转换。 同时,该图片的分辨率不能大于你的LCD显示屏的分辨率,以我的mini2440开发板为例,其LCD的分辨率为320*240,因此我本次设计的图片就是一张320*240的图片。 二、格式转换 目的是将png格式的图片转换
[单片机]