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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?7 A% T: [  _/ {' o
分享到:  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+ ?- j+ u( X4 v& z
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
& `  {) j# H# I4 H4 G
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:$ g5 G6 f4 b% i- F9 X

' e) ?- `5 C- Z6 Pstatic const s8 da8xx_queue_tc_mapping[][2] = {) L; @% Z8 \+ a; B3 G
        /* {event queue no, TC no} */: z9 Q1 L' g% ?: |, L; c. s
        {0, 0},
, k/ t# F$ p, e9 W) [        {1, 1},7 I; X, F; J! m8 [+ d
        {-1, -1}. n& @- E- g- z  X- c
};0 R8 c8 e7 S5 \7 {$ C( d# M
5 @7 J! H- K2 i
static const s8 da8xx_queue_priority_mapping[][2] = {
. ^1 ~4 M/ \, T, J        /* {event queue no, Priority} */
; S0 q+ K# ]. x2 s" X        {0, 3},
# n% b  F  h: X" B9 W        {1, 7},$ T+ ^5 j+ ^& c0 D* v: `8 c9 i  R
        {-1, -1}
! |5 ~) c8 A. V; O! x! v# n/ U};8 ^  `: [* ?+ S" `( o/ v2 P! _" T

1 B$ i2 ]" G6 L5 O& Y1 v! xstatic const s8 da850_queue_tc_mapping[][2] = {
$ o% I. h1 ~9 S0 Q' K1 x) S        /* {event queue no, TC no} */, J5 g! F. H/ ~* j! F# g; k
        {0, 0},9 P4 Z: O: E$ e* i0 O3 }
        {-1, -1}
, R) o9 ^. U. s8 d5 d' \  [  p};
; G: e0 w$ E: g4 O/ h$ b8 D
; I6 V( z/ @. o; f/ T" `* Hstatic const s8 da850_queue_priority_mapping[][2] = {# }9 V0 A7 |/ s, Z2 {
        /* {event queue no, Priority} */
1 r! h; a' r# A4 }9 q+ q7 d! G        {0, 3},: N  o$ [1 y, w7 e8 U! I
        {-1, -1}& b( A6 F* X- ?# X
};' G0 ^! ~; @6 h( e0 @
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
4 D$ Y1 {# C7 c7 m" |- g8 @arch/arm/mach-davinci/board-da850-evm.c2 {  J/ f* u- h) F
/*
8 _7 b. D  P- { * The following EDMA channels/slots are not being used by drivers (for4 c6 S' A8 `& g
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence9 |" c) g' j: k% }% p' S8 X) x# x
* they are being reserved for codecs on the DSP side.! r  b+ n4 e1 o. }0 P
*/
; \& S' r& a% p" S" o+ @" W3 Q; pstatic const s16 da850_dma0_rsv_chans[][2] = {
) X$ N$ z6 [; `        /* (offset, number) */  I; i+ r2 |1 |# o6 s. y
        { 8,  6},
5 E  s& H  S5 p; Y; i) g8 e        {24,  4},
' W- G& M7 R1 z) R/ x% h8 N        {30,  2},3 V# K2 C- t( k: B, Q% d4 E; H3 M
        {-1, -1}% |/ Z& W+ A; x+ S
};
6 d0 X* r' K2 I6 r2 v* y+ X' a4 j" H7 M# B% T
static const s16 da850_dma1_rsv_chans[][2] = {+ k& [( Z1 p0 U# C, f+ ]8 _
        /* (offset, number) */2 h- ?* G8 A1 e. V
        { 0, 28},# }$ l0 ]5 f* ~! |2 M" G' b/ \' u
        {30,  2},5 p- V: C0 \3 n$ Y9 R6 H  t
        {-1, -1}
. B4 n3 ~  D( }# Z. P5 r+ w};
; s6 k) i, A* C% q' t
. L8 S9 U7 X) X. ?上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
4 s# P- L) N7 r5 k; r) a4 \

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-17 13:03 , Processed in 0.037542 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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