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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?* Z, @1 Z1 ^5 Z" i
分享到:  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/ N: F" i5 d! d; W1 D- |+ `
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
/ }. W  I) {5 K: ~% q
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:7 y6 a, d5 W* ~/ l6 |
) `/ ~9 t' j8 m* z$ ?% t
static const s8 da8xx_queue_tc_mapping[][2] = {
. {8 l9 t+ p5 Z: ~3 B0 c4 w        /* {event queue no, TC no} */
1 Y+ k. H# K% E9 U3 r9 k        {0, 0},
' j3 y8 X8 q, B4 `2 j' x6 M        {1, 1},
; Y  ~' V6 Y8 {7 y; f        {-1, -1}
1 h- i" x# R( N};% u, [9 A& f/ l5 `& ?8 c, }
+ f/ A' O8 h$ N. E+ G
static const s8 da8xx_queue_priority_mapping[][2] = {- p1 B) @' z2 n+ J7 V
        /* {event queue no, Priority} */* m' A  N, }3 k  ], }7 n1 |/ \
        {0, 3},. c" O, \7 }' R" I3 k( q
        {1, 7},# z6 q$ I, {  A6 n/ }/ J( H
        {-1, -1}
  U  U! n: g; Q. F) B$ d# q};, a7 v* G' t0 r. a$ F

2 U; |4 Y: K( {static const s8 da850_queue_tc_mapping[][2] = {( G+ _  k% s9 O. F4 K/ p8 h. ^
        /* {event queue no, TC no} */
( x0 o- a8 i7 k& B        {0, 0},7 T* Z/ X- B0 n; n: I" p
        {-1, -1}- K& J7 e% s6 S
};
/ @4 I# F# h/ b& a6 z8 p
# v. r+ _5 N. K% ?1 X( Lstatic const s8 da850_queue_priority_mapping[][2] = {  v4 ]5 E3 ?- w/ j
        /* {event queue no, Priority} */
( z4 F. |/ L% `8 I  E        {0, 3}," K& S# @5 a2 G# ?
        {-1, -1}
) n  k8 F! x/ m! t  ?/ t  }+ L4 B: _};
; M7 |* j$ Y: F; u8 m' [
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
5 U4 [! ?8 \0 q" b  varch/arm/mach-davinci/board-da850-evm.c5 h+ ]8 c7 U, T/ t
/*$ X7 U/ A  O  Y
* The following EDMA channels/slots are not being used by drivers (for) Y6 u: U7 G3 T, u1 l" k
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
4 {, N8 U& T: K1 B! z * they are being reserved for codecs on the DSP side.
& J9 j  ?% r$ E */
" |8 A6 v2 a0 f8 w* \+ jstatic const s16 da850_dma0_rsv_chans[][2] = {
3 Z1 H7 h6 N: E        /* (offset, number) */
- M8 X4 D  M) W  I) J        { 8,  6},, T, G0 W  _' {) |: Y. N# L
        {24,  4},8 L. _. M0 T4 V& N7 Q
        {30,  2},
3 x" ~3 `$ t6 i* w; s        {-1, -1}
) U+ C$ k' `' A; s};! m; T9 Z  k+ ~" W9 X+ O; C
: ?# }0 r/ V5 j" q! p
static const s16 da850_dma1_rsv_chans[][2] = {  R# C4 D  e' Q, m# E
        /* (offset, number) */
* v+ W) c8 R- E) K  W! V8 h        { 0, 28},
8 d+ s9 O) f9 Q% D( l, P        {30,  2},9 ~* E! h% [$ G+ Z
        {-1, -1}1 P' A/ c# b2 u2 T( A
};
" h& Z2 W2 p, X' A7 a! v
* t' }% T0 t; |% I$ K上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。7 i* G3 k. m/ ^

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-30 15:21 , Processed in 0.037201 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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