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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?
8 Q/ @- F! K  d( I7 u$ f+ E
分享到:  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
$ a+ h3 j% k4 j可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

- w) I" c  M8 d2 T& h具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:: ~6 b9 c9 b8 x5 r, a- e! t3 w& Y+ A7 f
1 ~- G/ O: C; t: U" }$ Q
static const s8 da8xx_queue_tc_mapping[][2] = {" W* u7 P% y9 {& R
        /* {event queue no, TC no} */
( o" Y! x) M2 ]: j0 C        {0, 0},
' {" @* j( j: }- C- j3 C+ f        {1, 1},
( f+ U0 [2 [: T. A3 y6 b        {-1, -1}. Q) ]8 k# E/ J- k
};* D- |9 j9 I! d& O2 Y/ u$ ]/ D

" q) E2 w8 q8 o% S# f2 I2 G: Zstatic const s8 da8xx_queue_priority_mapping[][2] = {. D: z7 ?. x5 o/ s/ ~
        /* {event queue no, Priority} */  S% u3 @- x' f% Z1 V# m: h4 }0 S
        {0, 3},
  M. }" T8 W9 f- {" ~( [' H: e9 a# F        {1, 7},
5 q& B# p0 D& _1 w        {-1, -1}
2 h6 d) }: L. l# k6 u+ E+ `7 Q. S};( F& N1 N5 E* n9 r/ o, m. L) e* D

7 g/ S% ~4 K  G7 {static const s8 da850_queue_tc_mapping[][2] = {
* L5 @- |0 g" _# {' z        /* {event queue no, TC no} */; h/ t( b' Y% R$ ?/ U& N. i
        {0, 0},
- ]  M/ ^* o9 {        {-1, -1}
8 q. a6 ^, o& i( q% h1 T};
1 N5 _" U$ ~0 o$ ~2 k. ~  K1 s
- C0 A! k2 Q) Ustatic const s8 da850_queue_priority_mapping[][2] = {
4 k/ T. Z& G% T  i7 b        /* {event queue no, Priority} */( g! E$ e. l% |+ b
        {0, 3},) h9 e9 s" A2 k' Z8 I
        {-1, -1}
0 `) G8 x! h7 f4 i  ^9 j};# x8 v3 U! R. A  x3 Y$ L8 b
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。( b; }3 n  O6 v9 C
arch/arm/mach-davinci/board-da850-evm.c
1 ]$ I8 u( }6 \2 n  ~/** B1 r  B- I, x' ^- b, @
* The following EDMA channels/slots are not being used by drivers (for3 n7 e- l8 W# F, S% n0 p0 z
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
/ z, K& Z% t( Q  ]' e& |% | * they are being reserved for codecs on the DSP side.% `8 [/ o+ n9 _' ~3 J. W. j1 E
*/0 i3 n/ u. c+ t3 V; Q
static const s16 da850_dma0_rsv_chans[][2] = {' \* J6 ~1 t' B3 u" \2 B
        /* (offset, number) */
9 Q, ]1 I, }4 N        { 8,  6},
0 B+ X5 D0 n4 K+ E5 ~; [# \' F! e! X        {24,  4},5 g) l) }. L' [7 C
        {30,  2},
1 Q0 r/ `9 C! V4 y        {-1, -1}
* F' @8 r. d3 K; W$ Z8 i0 Y0 o};/ A. x8 H+ k5 W

& Y2 m: i; m- R1 |- i% n' k0 lstatic const s16 da850_dma1_rsv_chans[][2] = {+ L3 n1 R- z# ?8 Y
        /* (offset, number) */9 d8 ^" \$ i! t6 l8 l
        { 0, 28},) \1 I0 ?4 e0 }( C
        {30,  2},5 u- x+ g7 M  G3 B& P% P' C
        {-1, -1}2 |1 |# t9 P5 k/ b; {( C
};+ W/ `/ S$ G; _! C+ i2 y
* [/ x$ Y* k* b6 s
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。2 W! u, h# E( D2 x

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-1-31 06:42 , Processed in 0.040790 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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