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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?
; O4 E$ ?8 x9 e8 r+ O# Z: ?8 x
分享到:  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
4 d7 E. D$ T/ w- l可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
; E+ x% O. d# a" s
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:7 p0 V0 o5 f! j, F# l
; E* W3 j* E6 ~8 Q% n/ S' Z+ `0 D
static const s8 da8xx_queue_tc_mapping[][2] = {
/ G  Y  t. v3 T% h2 M* [        /* {event queue no, TC no} */
4 J& J, @6 F& \- L' u/ S2 h        {0, 0},# A. C3 |# y! D! a+ l
        {1, 1},
# B6 A. M" c( ^        {-1, -1}
, t  }% d6 ?" w: i- V# Y};; h* u* P' B9 e8 w, R- O8 ~
+ W  F6 ?) D. Q$ B
static const s8 da8xx_queue_priority_mapping[][2] = {
# r0 ]. |9 ]( \8 k5 n" D/ P        /* {event queue no, Priority} */
: t$ d( k. f" t, W  q4 I        {0, 3},/ y9 W1 ?' i# x$ Z; w. \
        {1, 7},
9 y. @) X; I1 ^) ?/ q        {-1, -1}6 s5 j5 T" a$ Q3 v
};
# \1 q) M) W3 W& {1 \! X2 |- F8 J& K" A9 Q
static const s8 da850_queue_tc_mapping[][2] = {$ w1 }5 J( ]4 k  E" _" w# g
        /* {event queue no, TC no} */! S  M4 e( ~+ e% e8 D& w( r* B
        {0, 0},4 Z) L6 S3 z( O0 K* Q
        {-1, -1}! J. |. ^  }$ L- G- T  o
};) I( `% Q) V7 W3 z4 x

# w2 n4 ^& _0 U2 R$ q6 G6 m- vstatic const s8 da850_queue_priority_mapping[][2] = {" c3 u7 Y& L2 D4 h, O2 A* m8 b$ T
        /* {event queue no, Priority} */! {3 M8 m) C, c# [- m. T2 R
        {0, 3},8 w/ Z2 z& t( ~  f
        {-1, -1}& t& ~: S: t# e# F; v* A. T' C4 ]
};2 M; N  Y  f4 I& A, ~5 Q. I7 r
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。& M! v" d2 o; h' X! W
arch/arm/mach-davinci/board-da850-evm.c
+ e/ u) ^, \( K3 e) \+ m  l. K( @/*
0 M7 v$ S- P9 n7 V * The following EDMA channels/slots are not being used by drivers (for
" P, O; z' h% E+ |1 W * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence" e' [1 b- D6 i0 {* |1 h: i0 W- M
* they are being reserved for codecs on the DSP side.
. i, q' d. V6 W. S" k/ s1 Y */
* s5 o5 p5 k5 }3 Cstatic const s16 da850_dma0_rsv_chans[][2] = {1 R( N, ?; x6 G8 H/ m$ ~
        /* (offset, number) */
9 I' `8 n0 M* \' A- A        { 8,  6},# w- Y2 f+ t2 c/ o
        {24,  4},
; ^" _% w! S+ D- [0 E5 e9 w        {30,  2},& T% a5 t1 A# z, e4 ^0 j; i
        {-1, -1}
- t8 ^2 K4 ]7 t; I2 l/ x8 T+ ]7 C& \$ C( E};& t, L. \& c9 [0 N6 p. y
( L0 n/ g1 t6 B1 _- u$ C* M
static const s16 da850_dma1_rsv_chans[][2] = {
/ y6 d2 U5 `% Y6 X! q        /* (offset, number) */1 r' N7 w3 }# ~
        { 0, 28},0 r/ _; K- F& A6 f3 R6 y! C
        {30,  2}," u- q7 s4 u* L; U! i/ Q/ T* O
        {-1, -1}1 p9 @$ s7 K1 K& J
};$ k4 g* f7 L4 Z8 @/ F7 ]
# \4 `' k1 B  ^  s
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
5 o% u0 h  F/ l3 P" o

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-17 10:56 , Processed in 0.038743 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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