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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?, }7 K; E/ G3 |0 T+ P0 l/ S
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
" f( u1 a+ Y: P3 e+ r! Y; Harch/arm/mach-davinci/board-da850-evm.c
6 d" N/ t( x+ Z4 L' c& y/*6 B1 F8 u+ K* z  n( k
* The following EDMA channels/slots are not being used by drivers (for; ~0 y3 O$ S3 h+ r5 Q- {
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence. q6 _3 s' ?4 `3 u! }# Y- `3 b) ]$ m
* they are being reserved for codecs on the DSP side.
. T) f) Z/ s8 E" D0 ^8 e */
9 C7 O9 Q4 _( N+ K2 sstatic const s16 da850_dma0_rsv_chans[][2] = {* r5 n4 O2 e( S
        /* (offset, number) */+ f( r2 c2 f7 d6 P/ Y( n7 i/ c
        { 8,  6},) H6 j# T9 X$ A' ]4 r
        {24,  4},
; i' t5 C( y; Q$ e( {5 U        {30,  2},' Q  ?$ W! g$ B! {, w
        {-1, -1}! a0 O% e9 n+ ]% B4 K
};. F$ i& w/ ]1 U, o: y% ]) Y

" o- g6 c* }& w6 N- ]$ hstatic const s16 da850_dma1_rsv_chans[][2] = {
, ]+ s7 m2 v6 m4 j) |0 Y        /* (offset, number) */
2 V. L4 }6 `& ^5 g! |8 T! `        { 0, 28},2 \5 y& \% I0 A6 Z# f4 P. B; H' @: h
        {30,  2},
# ^0 P0 h- }: \4 \        {-1, -1}
/ U, V+ u  E, {( @" z$ N8 a};, k* H6 A5 y  Z- i

( j9 Z" ?) S; K, N2 p/ j上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
4 ?' Z" R9 t' K  r, m- V9 w

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
! q  s( j1 ]0 o. R; f7 e( ?
8 L3 L! }- q6 d1 h, U5 tstatic const s8 da8xx_queue_tc_mapping[][2] = {. f7 S- \+ b" M" N) K* S
        /* {event queue no, TC no} */
% G9 ]9 W0 P0 Z& q! K3 P3 I        {0, 0},2 c! U8 Q( G( c! U) C# c' X
        {1, 1},+ `# N: G6 J. X9 t) A8 d3 L
        {-1, -1}; D4 t8 n4 Y( `5 n7 ~
};( N4 a' D* p0 k2 s) v; _) Z

  N8 D4 \. P$ R* e; W8 g2 Istatic const s8 da8xx_queue_priority_mapping[][2] = {- ~- c& b/ c: D; f9 @/ b
        /* {event queue no, Priority} */3 D7 ^+ y7 P, c/ z3 @& M! D
        {0, 3},
8 {5 C3 |0 n% e        {1, 7},
1 U( z, n2 y( t; I7 d2 t        {-1, -1}
  \4 Y( J( D7 S};
+ i: R& {: r+ x
. @  q4 @& i: t3 i! ]static const s8 da850_queue_tc_mapping[][2] = {
% ]8 b6 T# z; k5 f        /* {event queue no, TC no} */
7 ]9 D1 j% D- z! v! o9 {        {0, 0},6 N/ o$ t& Y# L+ z- e! W. G
        {-1, -1}+ }* K/ u# `) p8 [
};* e! |  ^2 C" ^( a. z
2 m# [$ m, @, g6 ^2 `6 P
static const s8 da850_queue_priority_mapping[][2] = {
* X! }/ b1 |9 i        /* {event queue no, Priority} */
( ]3 G, ]6 D2 F+ Y# p+ s        {0, 3},
: n$ P$ ?$ P: q$ [0 X! M        {-1, -1}
, ]% |  }8 }3 B% N, u};( s/ Z! _8 t! D' @6 O; |+ D( D
回复 支持 反对

使用道具 举报

26

主题

40

帖子

282

积分

中级会员

Rank: 3Rank: 3

积分
282
板凳
发表于 2016-8-18 14:41:54 | 只看该作者
teddy 发表于 2016-3-22 16:26' x+ I0 N8 F5 y9 ^$ Q0 l
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

6 L3 b9 v. X! W2 Y具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
沙发
发表于 2016-3-22 16:26:11 | 只看该作者
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-1-31 05:04 , Processed in 0.039729 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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