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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?, c3 s) k% n8 s1 m9 R8 p0 `
分享到:  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:260 Q: B* Z% T5 M
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

' Z' m% h) Y3 q' E4 E6 T" ~具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
' g% p* x5 ]7 N, g" v: x
# a4 i3 }/ c! F- N( `8 q9 w8 Cstatic const s8 da8xx_queue_tc_mapping[][2] = {1 T! z# b( a. d- n' C) x4 V" R2 z
        /* {event queue no, TC no} */
1 R; y: D: A/ s6 C8 b. o$ N% r! _9 M        {0, 0},
* b! A$ W5 r, s, ~  a9 I  ?        {1, 1},1 T' \8 R3 ~5 c! ^2 e
        {-1, -1}
+ F) I* g* P9 O" @/ Q/ L8 g' N  D4 O};7 P% K$ ]' G" b6 }2 t5 A! k0 _5 k

# X; ]: R) T6 l% nstatic const s8 da8xx_queue_priority_mapping[][2] = {
& w0 q2 y( q$ o% Z& `        /* {event queue no, Priority} *// W  h3 Q9 {% `$ T* J* ]
        {0, 3},
6 R4 H  L+ c5 ~; s1 A        {1, 7},% e$ S, i9 u% k9 U( V  a
        {-1, -1}9 ^3 E5 n# ~9 D- X4 x4 m7 n
};% d+ i: j9 k7 k

6 I" Y% w' u% G) x8 Jstatic const s8 da850_queue_tc_mapping[][2] = {" ^8 u4 K- O$ E2 W" U) ^0 I
        /* {event queue no, TC no} */
  p0 T- Y/ K: v6 R        {0, 0},1 z6 ?, V. ~  D" Y
        {-1, -1}9 }7 Z# c  y; [9 p9 e; R
};" U; r% Q) ?1 r- V" \

  V6 |! O0 F( K. m) Y6 ^static const s8 da850_queue_priority_mapping[][2] = {
5 V! Q$ u. a2 |        /* {event queue no, Priority} */% V4 v2 {2 E- Y
        {0, 3},' h4 P3 W, L% l
        {-1, -1}
& i& X, t/ E8 c; K/ y" P};0 ^5 t0 Q8 h- R; i% \8 |
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
: d4 k! F( a  u3 O6 N5 c& Darch/arm/mach-davinci/board-da850-evm.c9 P! @+ \- g3 C  ], N
/*
1 v/ c2 `8 D8 N9 U8 z/ g2 r$ C * The following EDMA channels/slots are not being used by drivers (for
8 a/ ~$ i6 @5 b% {- ^ * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
/ c7 k3 t! _$ ]8 g' {1 i* O1 Q2 \ * they are being reserved for codecs on the DSP side.& j( h& ~; i( o) `* |+ A) k
*/
( x1 z: B$ Q! |7 Mstatic const s16 da850_dma0_rsv_chans[][2] = {
( O: @" ]/ S/ o3 c  a4 e1 ?        /* (offset, number) */
# a8 F: H& \; ~. P  Z2 p$ o. U: q* n! K4 u        { 8,  6},, s% S9 z- x7 r& F" y
        {24,  4},* h" u* u3 \2 a- ^. j7 _$ R
        {30,  2},
9 w0 Z  q+ P& z1 }9 t7 K' q        {-1, -1}' R/ t1 H1 i, D; j$ }  p
};2 ?3 c' Q& I$ K: d" Q8 U, C* G

) y% _2 ]: J8 l( v% c2 s- Ostatic const s16 da850_dma1_rsv_chans[][2] = {' p2 z# j" `7 ^  s7 `5 L3 v
        /* (offset, number) */
$ N! ^0 f1 i6 }( }7 C* o        { 0, 28},
6 r8 ~" I, t: C/ b0 P8 r3 W        {30,  2},
3 W7 }4 q! E7 Q8 X        {-1, -1}
; j+ S$ Q7 r! h2 j& @# ?};: q# ^( f$ c) H% @! e  j; d
/ V# Q9 h2 b0 `
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
0 v$ x: a; ], a% c/ k3 N

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-17 11:01 , Processed in 0.040693 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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