在ARM端和DSP端都使用EDMA - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4161|回复: 4
打印 上一主题 下一主题

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?
% p* k8 f2 \9 L1 {# k
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
/ Z/ r/ i# _1 ?( Y7 }! garch/arm/mach-davinci/board-da850-evm.c
5 m& A0 s* e; d/ A/*
4 E& ?5 V; ^" @& D  b1 l) K * The following EDMA channels/slots are not being used by drivers (for
7 w  K2 S  E( U * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
+ a8 y7 V! A, \2 v5 s% G * they are being reserved for codecs on the DSP side.. K; r5 c4 J4 F5 k: e! A$ @% O" l
*/+ x$ s* R. y: s: R7 M) ?
static const s16 da850_dma0_rsv_chans[][2] = {" C/ Z/ }7 h0 P
        /* (offset, number) */0 e# Q8 y' w! k) P! h1 E
        { 8,  6}," G+ O- Y- v6 O% _+ J& P. {
        {24,  4},
3 w; i: _# |4 d1 t4 V6 s        {30,  2},
, ~7 M# Z9 Y3 i; U! j        {-1, -1}
' N; x$ i; ?4 q# L};/ Q$ m/ N0 ^7 [" |8 w( V! X9 E

; P& b7 D2 e7 `7 R$ sstatic const s16 da850_dma1_rsv_chans[][2] = {
* G* j! o2 t' E: t        /* (offset, number) */4 \, o& I5 ^5 {. G, Q! ^. T/ N' g
        { 0, 28},* w6 u& ?9 p  K! L
        {30,  2},
4 \- @' H" b$ W; i. {" g        {-1, -1}
. j' B( t& `6 S. Y: H* d; \/ q};
) y% q. ^7 E( q- \% T
) Y( {9 B+ {1 q' c- d5 k" o* K上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
- p7 t2 {  p& n1 G8 Z

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
) U* h4 |  T9 o) j6 O5 t: V3 ~
2 U( v% |* _4 \. b! \static const s8 da8xx_queue_tc_mapping[][2] = {
- c: D: R3 n, H. l        /* {event queue no, TC no} */
+ Y9 p/ `) L7 ^3 Q- u        {0, 0},4 }1 w1 n; A+ }7 R( U7 m
        {1, 1},) R( c2 a* F  C5 D1 a
        {-1, -1}
* N) |+ M# G# A  ]};
8 R( t  x" j! h- \2 F- g0 i( s9 N5 g8 q" W
static const s8 da8xx_queue_priority_mapping[][2] = {
# g5 m6 x- K3 g9 L5 B6 _, m# U        /* {event queue no, Priority} */5 o: F" H' v: R! e
        {0, 3},9 j7 g0 m/ {* j0 T; h" i' x; ]
        {1, 7},0 D5 A9 Y! V( e: U' Y3 O+ D
        {-1, -1}4 u' M# |* [( \% O0 y( A: o6 @
};1 N) L. C1 g- q2 |/ L
$ i/ u( _+ }" {% c+ o, b* {
static const s8 da850_queue_tc_mapping[][2] = {
( O7 f$ Y& ~4 X. _        /* {event queue no, TC no} */" }7 J2 ~( k1 G4 w5 R3 m! k; ?2 ^8 C; d
        {0, 0},
- {9 i8 C- Z% z5 a/ }        {-1, -1}
- ?  z6 ~- I" v1 Q6 t/ Y7 Z};
2 k+ d- ?3 }* M# x
0 w8 y" c: t  r. M' f. a& kstatic const s8 da850_queue_priority_mapping[][2] = {
0 ?7 x+ a5 I: ]% d# |0 q7 l* a        /* {event queue no, Priority} */
* x' ]9 w, U4 z: H! D9 ^        {0, 3},# M  n/ k4 v6 \  ~0 t. A6 u
        {-1, -1}' e" l" P, m; J% a( |) ?) Z
};
+ P6 a  a" h5 ]
回复 支持 反对

使用道具 举报

26

主题

40

帖子

282

积分

中级会员

Rank: 3Rank: 3

积分
282
板凳
发表于 2016-8-18 14:41:54 | 只看该作者
teddy 发表于 2016-3-22 16:26
# K: @9 f8 ]: X3 Z) R* i) f可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
) |8 V0 E5 X0 s; J3 S
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
沙发
发表于 2016-3-22 16:26:11 | 只看该作者
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-6-17 13:11 , Processed in 0.039423 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表