在ARM端和DSP端都使用EDMA - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

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

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

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

使用道具 举报

26

主题

40

帖子

282

积分

中级会员

Rank: 3Rank: 3

积分
282
板凳
发表于 2016-8-18 14:41:54 | 只看该作者
teddy 发表于 2016-3-22 16:26/ O* V, f. i* y+ v5 I) G+ X' ]5 }& G2 B# `
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
# A0 d+ c" ^! W. b9 V* D
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:8 ~; H5 w5 M$ u# o' i
* H$ T$ I' m& `7 Q. D
static const s8 da8xx_queue_tc_mapping[][2] = {
0 b+ m9 G6 D" h* j7 r* |6 a# \        /* {event queue no, TC no} */6 X0 N7 L: l; Y+ C$ I
        {0, 0},1 N" o% P- L, [
        {1, 1},
* n( a  w; A" I! M& H) X+ r- n        {-1, -1}1 Y3 d4 e! O, q# u, K1 ?( t& ~5 G" ^
};
' L) _/ q, M, {7 A# h0 c
1 Q" v, Q$ z/ u1 X1 Ostatic const s8 da8xx_queue_priority_mapping[][2] = {
% S+ m- E: }: P' g* K        /* {event queue no, Priority} */
! S& c9 l- u; a        {0, 3},& q2 C: h1 A+ f4 W: _0 l
        {1, 7},. |* p7 }4 f. @" @9 ]
        {-1, -1}: s$ e* K- X: c$ l: k
};
% ~; z/ S; T+ n8 a  x' m1 S/ s
! Q" E. \3 E4 ?; S) Kstatic const s8 da850_queue_tc_mapping[][2] = {6 v* T) R+ d  ^  t) _& W1 ^
        /* {event queue no, TC no} */
) t2 Z4 V( ^3 G' }        {0, 0},4 o  p% E- j& `* ^- Q0 |* o8 j
        {-1, -1}
' w9 `: h( Y, r6 p};/ H5 S" _6 x3 s
8 p  n5 @5 o, d6 G8 B
static const s8 da850_queue_priority_mapping[][2] = {. W4 A2 _& Y) o
        /* {event queue no, Priority} */8 N+ B- r! r2 j% R
        {0, 3},
" `# d7 Z9 s# X; ~2 m, ]' T, _        {-1, -1}$ V! I) e$ F; Z
};3 B. F. d5 f" V- |0 [
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。6 ~# h* a8 C0 `* q  J
arch/arm/mach-davinci/board-da850-evm.c
9 L) _8 S- x" ?5 b5 R( X/*( B. R( l6 ?  }0 }6 o
* The following EDMA channels/slots are not being used by drivers (for
6 k1 f9 _% S. l" t! Y8 k9 s * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
$ k4 z/ z' O; V& Q4 }4 X * they are being reserved for codecs on the DSP side.; n1 g0 E; i) V7 f2 r+ R9 h4 j
*/. ?# P4 Z. b  f+ a' d1 G+ U* y3 j
static const s16 da850_dma0_rsv_chans[][2] = {; A) ~9 C+ W/ |& c$ Y
        /* (offset, number) */+ G: {; B* X0 M+ }/ i
        { 8,  6},
- j7 y9 ^. \9 V% [        {24,  4},
0 R' j) f) P% g( R0 f! J8 _! n        {30,  2},
% R) L$ h2 c: V$ J        {-1, -1}
9 G1 g8 P, `& T/ M3 O$ `};8 w% e: D0 g3 `9 M* Y( a" o1 T

5 u1 e; r5 @+ s% T( j( Estatic const s16 da850_dma1_rsv_chans[][2] = {" |" V2 p. W$ M" p1 @
        /* (offset, number) */
( d8 N: p0 u: {. |! c* b. f6 c        { 0, 28},. p) |. f+ R0 J' N* D! U
        {30,  2},( X- R; ^3 P" h" z- G8 S
        {-1, -1}
& I% q) o8 R) s' ?9 Y, d# L; W: ^- n};
& ?- r0 r9 w) b% Y* i# N! X+ q" k
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。7 I1 g- b. Y2 a  U+ I! ]4 E! x

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

点击跳转“创龙科技服务通”

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

GMT+8, 2026-3-17 11:00 , Processed in 0.052819 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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