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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?+ I3 y0 ?& ]3 k% f+ B4 Z6 \: ?5 n
分享到:  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! Z' q- D' Q4 @  Y
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
  q) C4 p0 L* r. a- O/ D
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:& f8 V) v% ?* F& M/ j# x6 p* `
. @* t1 @: T: ^. o8 R# w
static const s8 da8xx_queue_tc_mapping[][2] = {
' Z' G: H, t1 n$ ?1 I        /* {event queue no, TC no} */7 P8 E2 y, v, Q# w; {
        {0, 0},5 ~8 G# @4 c/ g) c
        {1, 1},% p2 P( M# \2 g( ^9 H- t
        {-1, -1}
- W# j# c0 ?( n: `$ m. R2 a/ Z  t};
" x8 o- M& k; D3 ~
/ d; |* j* m% hstatic const s8 da8xx_queue_priority_mapping[][2] = {
. A: u- x: v5 j% |0 u& n/ t1 C        /* {event queue no, Priority} */* {$ @4 h1 n* v3 {% x' g5 t8 d
        {0, 3},! K- k% u0 G" O5 v, Q* d' v
        {1, 7},
/ e$ B/ A& A- a  k( S; ^        {-1, -1}& f' P" a6 R1 R- c
};$ J  S& B" J9 A  O

- E/ M3 H. n- K% Y6 fstatic const s8 da850_queue_tc_mapping[][2] = {, l; D6 G; j% G
        /* {event queue no, TC no} */
1 s9 }2 i5 v6 t0 x$ E, \        {0, 0},9 l0 m) X6 R2 L3 x% @& O" b$ y4 {
        {-1, -1}
, j7 M0 W  B& m+ Q5 B: E1 @};# V6 r. ?: O( t
, ?% C; B: O; V* }3 q: E
static const s8 da850_queue_priority_mapping[][2] = {
% M1 ~* X/ \) M& l        /* {event queue no, Priority} */
5 b/ D& d  t, K) c6 j        {0, 3},8 `5 J6 h& K; i; d
        {-1, -1}, G  R) e3 ^5 h; {5 u* \
};
0 X- |0 l0 [+ k
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。! Q, k- M+ ?  @! ^8 j
arch/arm/mach-davinci/board-da850-evm.c
. O4 U- o" r; V; T) q  ?/*
6 S" A+ h' s5 v' v9 W2 l- ~ * The following EDMA channels/slots are not being used by drivers (for
# w2 A! h" k! t; o" e) u9 O * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
( W6 F8 X) f9 v/ a8 D * they are being reserved for codecs on the DSP side.
$ F! t* \* v* q. l* j( T */8 e  [0 x4 h, s+ _) t0 {! \
static const s16 da850_dma0_rsv_chans[][2] = {
( e6 L2 ]4 y4 V% z. k        /* (offset, number) */
3 `7 ]! Q7 R) C, N% }, L/ I        { 8,  6},
" \$ g4 t1 Q! K6 Q  ]; `        {24,  4},
" x2 B0 Z9 y% q        {30,  2},
8 G" L. ^0 y9 [        {-1, -1}7 R) }9 |6 ]' E# q& W: X
};. j$ N7 h, c/ U) W3 c9 e( N; e, B# |/ r' L
  b: \; F, C7 [) k; ]
static const s16 da850_dma1_rsv_chans[][2] = {
7 T  Z9 j, |/ E        /* (offset, number) */" b' x- r) \# @1 }$ L
        { 0, 28},
0 s# S7 C# S5 V) A        {30,  2},
6 O1 P# c2 b3 S/ O5 m) p- r/ s        {-1, -1}/ \4 h; {* z5 @1 A" l6 u4 D! ]' `9 _
};
& n! Z& g5 |' ~) l6 k
% M& b, A) I. P3 y4 H, C+ @. R6 h上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
- T, P7 d# o: w. h: e2 T

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-4 03:04 , Processed in 0.041965 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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