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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?9 }, B$ c" ]. y" z! y
分享到:  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; a8 y: @  O) H2 A. D% t8 P* P
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
6 T' `( o  B* U5 r, ?" O+ ?
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
6 |  t1 `" v# t3 s' w( j' G- o) V+ l0 `. |, q0 ~6 `1 I
static const s8 da8xx_queue_tc_mapping[][2] = {! K. c, H. Y9 v# H4 o. K. Z( F
        /* {event queue no, TC no} *// M1 o. D; V' a" o& ?
        {0, 0},: \( S3 d* z1 q- c
        {1, 1},
2 ], v; X* b% [        {-1, -1}' ]; ^. l0 z2 z
};
1 h8 o% n1 ?* A* n- |: D" g) o
( M7 X* X' ]. x: J; V  pstatic const s8 da8xx_queue_priority_mapping[][2] = {
& D4 q, O: I+ T4 h1 P( k        /* {event queue no, Priority} */( M* ?, h% D6 B: n
        {0, 3},8 ~3 n! r+ g8 d/ Y, G& ^# E
        {1, 7},
$ `0 d3 @  @2 K3 f        {-1, -1}% G* z2 i& M9 `7 s: ^
};
/ i7 z8 z: P# N. ^/ x( |9 n, j+ `9 Z
, m* D* o% \8 Xstatic const s8 da850_queue_tc_mapping[][2] = {
4 {2 x8 ^! A* l6 ~( }0 ?        /* {event queue no, TC no} */
& x2 C- ~9 W: z, u, j. W        {0, 0},& u5 G. W* {9 T) z) b) ~
        {-1, -1}  n) g+ D$ z4 {1 i
};/ `# G, N7 P' {# B5 R8 V4 v
9 Y) o- D( b5 {1 x* \& I
static const s8 da850_queue_priority_mapping[][2] = {5 v, x' y8 X! I: t& h
        /* {event queue no, Priority} */# |8 H1 g" F3 B; c+ }3 N; b
        {0, 3},
6 Q- I/ _  r0 `, X) R        {-1, -1}
1 r  F7 P* y7 |+ {, y3 D  U};
- M( f" i& W4 S! D# N" `
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。* r% N+ n4 O$ y. X
arch/arm/mach-davinci/board-da850-evm.c
1 r" s. H/ U4 g: `( c9 L* O3 p/*
0 `; a. q8 l; A * The following EDMA channels/slots are not being used by drivers (for7 Z( q- N8 G; j: [3 V3 N, [1 }
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence. D! B" |0 U7 m" f# ~
* they are being reserved for codecs on the DSP side.( [- }& H/ r/ q
*/2 O3 v/ b) Z" T9 S' h! O
static const s16 da850_dma0_rsv_chans[][2] = {# J1 u2 u% C% a* F
        /* (offset, number) */
+ v# W; O% t( Z5 l        { 8,  6},6 H; ^' D( S# E
        {24,  4},
7 |  v8 J- M; B  P( H8 I        {30,  2},! |! R8 ]% _; b4 R& x! w- I  |
        {-1, -1}6 |( y( q5 A" N4 i2 a. r
};
# y' u- B! I" C4 K6 Y4 i5 l
9 ?3 T0 |; ~$ l7 ^0 w7 ustatic const s16 da850_dma1_rsv_chans[][2] = {: G6 X! [* v' R# z  D- \
        /* (offset, number) */, [- J  h* ~7 l6 F
        { 0, 28}," k5 L( w% Z6 Q: f
        {30,  2},9 a4 n7 ]; K; y  U
        {-1, -1}
8 W3 q8 a. ^2 k( z5 I6 x};5 m$ b* J5 h0 s# _: l
/ @" L# B! `% t
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。4 {# P! g# \" I$ E- a

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-1-31 05:03 , Processed in 0.037980 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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