或以为孤权重,妄相忖度
分类: LINUX
2009-06-20 14:41:47
Linux2.6.26.8 移植之四:UDA1341TS驱动的移植
1、将s3c2410-uda1341.c复制到kernel root/sound/oss/目录下,修改oss目录下的kconfig,添加
config S3C2410_SND_UDA1341
tristate " UDA1341 driver (S3C2410)"
depends on SOUND_PRIME!=n && SOUND && ARM && ARCH_SMDK2410
修改oss目录下的makefile
添加
obj-$(CONFIG_S3C2410_SND_UDA1341) += s3c2410-uda1341.o
2、修改增加内存映射,以使内核知道该虚拟地址可用,而且对应的物理地址是我们的声卡。修改/arch/arm/mach-s3c2410/smdk-s3c2410.如下:
static struct map_desc smdk2410_iodesc[] __initdata = {
/**//* nothing here yet */
{0xe0000000, 0x19000000, SZ_1M, MT_DEVICE}, // 网卡内存映射
{0xf0d00000, 0x55000000, SZ_1M, MT_DEVICE}, // 增加
};
//如果你不是骨灰级的玩家,建议你不要去修正什么dma bug之类的冒险动作,因为我实践过,没有问题!
3、make menuconfig
选择driver->
sound->
open sound system->
S3C2410 UDA1341 driver (S3C2410)
4、以下摘自:。。。^_^忘记哪里偷的了,读书人的事….
/dev/dsp数字信号处理(DSP):DSP是指声卡中专门处理效果的芯片,称为效果器,对提高声卡性能很有用
/dev/mixer混音器混音器是一台控制音频信号的提升,并将音频信号导向所指目的地的设备
cat test.wav>/dev/dsp 如果驱动移植成功,这时可以听到杂音
移植一个madplay音频播放程序,就可以用来播放mp3了。