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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?0 q* f2 p- @) r" Y9 |  Z% ^
分享到:  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
! L% d2 d/ [; r0 I, b7 D+ H% A可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

$ G4 f' [$ e) r$ T5 ]具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
6 ~' `' g* s1 j7 ^$ _+ T9 }% H, `( ]  Z) Q6 a
static const s8 da8xx_queue_tc_mapping[][2] = {
0 a1 P' s2 F( l. U. i        /* {event queue no, TC no} */
2 Q. q- ]; e& g  k        {0, 0},
0 a; u2 m4 X: d* J" c        {1, 1},  O6 Z0 a. s0 U2 ]5 ~7 U: l8 ?
        {-1, -1}
/ M! P5 r; `' f! I) @8 V+ a: {4 s};
0 [5 `$ F' v( w  K0 m1 Q* P9 t* b- X6 s) u9 i
static const s8 da8xx_queue_priority_mapping[][2] = {
. a2 i+ i9 m( m        /* {event queue no, Priority} */# j: _$ {. ^6 X
        {0, 3},
) h4 M( ~! X" M' _2 ^7 G# |: L$ x' D        {1, 7},4 R6 a5 p4 s2 x& m
        {-1, -1}- ^& o) z& [% t  y! i# r
};
0 z) Q0 N( b8 v$ R: P) [- N! Z8 B( s
static const s8 da850_queue_tc_mapping[][2] = {
. `3 L* C* s1 K: S5 \        /* {event queue no, TC no} */
+ G3 l5 l, Z" c) S        {0, 0},
8 L4 p9 {# H! l3 k; e        {-1, -1}
' k+ O; Y8 G/ }7 n: A  p};
. }! L' o  i. p
$ W& ^2 t1 T/ j* U0 ?static const s8 da850_queue_priority_mapping[][2] = {
* S8 K* G( X" m- v! ~# O        /* {event queue no, Priority} */1 e# B' i$ O6 l: F4 \
        {0, 3},
: s, X# `( h8 a/ Y* c        {-1, -1}; \: r$ Z2 {9 }5 `- {
};3 c( ?/ Q$ l  j* [% v
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。5 R. W% g+ F) z- h
arch/arm/mach-davinci/board-da850-evm.c
$ i5 @3 m& v/ h- W/*' F1 l& B( l$ ~! |, m# F
* The following EDMA channels/slots are not being used by drivers (for& J+ S+ d- i. F  \, I0 y
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
+ J/ I& v6 j9 H5 x * they are being reserved for codecs on the DSP side.- F1 z& `4 Q  g: T3 E8 I
*/2 v' W. |7 U, v: }% e
static const s16 da850_dma0_rsv_chans[][2] = {
! ^  u- g2 t& g. K5 u1 ]        /* (offset, number) */2 [; J" E0 V4 p8 E5 c% L' j: n6 p
        { 8,  6},
$ I- F# P  P7 T: y$ u        {24,  4},1 P* w  I3 u+ E
        {30,  2},# M7 I1 @8 @# [$ R7 v  y' y
        {-1, -1}
! Y/ v0 D' ?* H3 K; {" D( c! [4 O};
, {6 I0 H3 e4 ]1 N0 ^$ O
, v8 s$ f: r8 B! t1 Q8 Jstatic const s16 da850_dma1_rsv_chans[][2] = {6 L! P8 K7 g% C3 \: t
        /* (offset, number) */7 L, Y% X3 M9 }  x4 n& x. C9 r* @
        { 0, 28},
1 O" z! a6 C& c8 H3 Q, w. }        {30,  2},
; P6 s. s) ?. U' ^+ s' N        {-1, -1}6 Y% x# D) U+ y- j3 t: Z
};  b0 d# }0 Y$ o9 v4 ?; T# k0 X6 I

; }* R! i3 U# N; ^& Y& m0 j上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。( a$ {& R9 A" d# U

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-15 06:10 , Processed in 0.039184 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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