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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?( ]" }# X2 n% a& W# x" Q: P% z, K
分享到:  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- Y2 @+ G  `$ |; v! R5 t4 b
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
" S# a  H- o7 y
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:% v( E4 D! s. y* A0 \

3 x" E# q5 ]9 Z/ Z. hstatic const s8 da8xx_queue_tc_mapping[][2] = {
! V. f  R- K% u        /* {event queue no, TC no} */
* m1 m: o7 g2 j. n( e        {0, 0},
7 ]  a9 a" ~4 C8 t8 S7 I        {1, 1},, j# i. c! o4 c6 @1 M2 x' O0 s6 U
        {-1, -1}
! L8 j; d( i% Y9 z. U};# \" |9 {: @. z" D4 A$ x! b
: h# I. E* [; B# ^  h! B
static const s8 da8xx_queue_priority_mapping[][2] = {
( t. i4 l1 ^& B& m- o5 V        /* {event queue no, Priority} */
2 A8 i$ _! h0 b4 d: D8 F4 _% u        {0, 3},, R2 v* ?0 c/ z) V6 F
        {1, 7},# V! q: l" M. g- k7 k
        {-1, -1}
4 W* U4 _$ C. g& S};
5 W6 t2 F9 n" h  W6 w# X: C3 O) B4 v( g' C% m" A& C, n& Y3 B3 P
static const s8 da850_queue_tc_mapping[][2] = {
0 U7 J- [: S4 X. L$ ?2 {        /* {event queue no, TC no} */
1 S5 @+ O; X. h" L+ }" _        {0, 0},8 F/ c5 \2 t; n+ N) L
        {-1, -1}
) z. H. w6 R: b$ F2 P};* |; X2 w0 E. i4 z
2 M1 |0 k0 I% }! E9 H
static const s8 da850_queue_priority_mapping[][2] = {! o. B3 o! k: u2 Y% H
        /* {event queue no, Priority} */
. s3 {- {6 R5 [3 V7 ~/ J        {0, 3},9 ~/ r: _8 V3 `: ]
        {-1, -1}
0 |, U0 B9 v2 q" v4 t};& v& U" P* m  ^' k
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
( r) M5 L$ b1 a3 d" Garch/arm/mach-davinci/board-da850-evm.c
1 O, V: E7 @: j3 w, x& n  L: Y/*
( p! d2 l1 r8 D; c: A! D+ f* s' b! I * The following EDMA channels/slots are not being used by drivers (for
0 `- P4 q: F6 i) ?6 m * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
9 k0 m$ d+ p$ q! U * they are being reserved for codecs on the DSP side.; Q8 u1 S1 g, C) d  _# G) s
*/1 M- H* p3 R* S2 q% z9 ^8 @
static const s16 da850_dma0_rsv_chans[][2] = {
1 d" \# C+ j9 t1 B5 R        /* (offset, number) */
1 p1 P" S% a2 e+ [) Y1 t# S        { 8,  6},
" c# r1 h& h  m4 [( s  h5 Q        {24,  4},
8 g. v  @' z7 \        {30,  2},, F+ n2 j% e1 L  G  z
        {-1, -1}4 g/ A3 M* j0 [: S3 a7 r
};& @& V3 m- a" u# c

/ V  k/ j$ W0 ?4 u6 M2 Hstatic const s16 da850_dma1_rsv_chans[][2] = {+ t: N, d) B- o- ^9 [$ C
        /* (offset, number) */( }( |" K& c. Z! d
        { 0, 28},6 H3 G3 b% n) A! ^( ]1 c6 q
        {30,  2},
. v2 m( P: H; f7 y1 h: c        {-1, -1}' K/ I1 g7 _' a7 a" a7 A
};& k8 q. G7 c% _7 q

" }, i$ t5 B4 V0 b. i$ J& s上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
! Q7 w0 i8 @8 V6 ]' @

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-17 18:44 , Processed in 0.037110 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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