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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?
  w0 X  x! u: e! J2 t& 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: G# A: o, o/ H, E" e% e- V
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
% ?  o8 [# L* g) h7 T' U2 o
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
& ^. I$ [/ x" w' F8 ~  L
  E6 W- e! x3 N: U) Ostatic const s8 da8xx_queue_tc_mapping[][2] = {5 x: S8 I. B9 R& O
        /* {event queue no, TC no} */
0 K5 L$ ~% ~5 p4 i" }        {0, 0},
3 ^8 t1 n, N# _, d1 U3 f  d2 H        {1, 1},- V& E' z1 r. `# g3 c; Y9 k$ M) S
        {-1, -1}' M& I/ t- g( r+ z4 `. _2 N3 F4 Z
};
7 n  }- A9 X) O" C  E5 Y+ ^7 x
/ j6 J  L4 h( ~1 _7 Qstatic const s8 da8xx_queue_priority_mapping[][2] = {5 }; \% z0 \: U. m4 K4 U2 u
        /* {event queue no, Priority} */
9 D5 V- j% w0 I% |        {0, 3},
  J- e8 x) o; Q& e# j+ f: _        {1, 7},
2 _% K8 u2 K0 M" }$ \" s        {-1, -1}
7 ^  P% u, e- a6 n};
) b7 ?4 @8 t: u- }5 h) C) l  z% J# }, i
static const s8 da850_queue_tc_mapping[][2] = {! Z+ x5 L: H- S$ U/ O
        /* {event queue no, TC no} */( v; M, b+ C( r- G! K+ {
        {0, 0},0 I0 W1 n. {" m" W0 z8 A$ U4 T
        {-1, -1}$ u) `2 w' @0 y, Q1 F/ ^  E
};
5 l( `) Y2 A( M# o
0 b# Z  J. n7 w9 a" t# J9 u. Fstatic const s8 da850_queue_priority_mapping[][2] = {: K0 y( V& z( ~+ {3 C
        /* {event queue no, Priority} */" F9 Q. _. D% _7 G6 A3 t
        {0, 3},
& h$ X, q! W6 Z# [& |& b& G2 m        {-1, -1}
& s; |- T8 T) g$ u6 ~$ x: p& T4 V};
; C" [2 ?8 H$ @9 U( ~
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
9 ~2 G# g. Q" b- P) K8 Y( s/ march/arm/mach-davinci/board-da850-evm.c
/ X! ]5 n- e) {# j7 x8 y+ d/ |/*
( p4 f, _/ U1 H, C * The following EDMA channels/slots are not being used by drivers (for
  ^5 w( x) M; ~! x! e * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence# K- R/ I( L1 E
* they are being reserved for codecs on the DSP side.( V; |6 H. l' F
*/, t3 U3 c* m( a- f; g
static const s16 da850_dma0_rsv_chans[][2] = {
; s8 I- N) b- W7 h$ w8 W9 r4 n        /* (offset, number) */# {( M# m4 a$ s% L; E9 g0 |
        { 8,  6},: Y8 N8 u# `/ i$ ~2 S% c
        {24,  4},
1 f) k# G$ Z7 a$ [6 P        {30,  2},
6 B/ v8 G+ A) ]/ h% f0 M        {-1, -1}
9 Z7 Q+ S; h2 N8 r( o5 K$ M! }- j8 R};2 n3 X" J  Z5 L# m$ t
% x! x) D0 ]. s
static const s16 da850_dma1_rsv_chans[][2] = {
  i, P& f8 c7 t        /* (offset, number) */
" R$ F( r" l1 ]$ D6 q        { 0, 28},
# q: R8 c; R. ]: T        {30,  2},8 G; n0 e; {3 S3 p! T9 G
        {-1, -1}
1 B  b$ x; s9 }' G1 o};
, P, E/ L. p5 j& }
! j6 j# q. a7 n: q上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
, S& S' Q: n  Y2 s$ w1 ?  n( y

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-16 18:13 , Processed in 0.041750 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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