aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-msm/smd_debug.c
diff options
context:
space:
mode:
authorBrian Swetland <swetland@google.com>2009-07-01 18:30:47 -0700
committerDaniel Walker <dwalker@codeaurora.org>2010-05-12 09:15:11 -0700
commit37521a3181123dc4a9584cc4b8572c08ea0a8274 (patch)
tree1e5571657f48baa7e2a8b5763fc33da583be878c /arch/arm/mach-msm/smd_debug.c
parent[ARM] msm: cleanup smd, separate debugfs support (diff)
downloadlinux-dev-37521a3181123dc4a9584cc4b8572c08ea0a8274.tar.xz
linux-dev-37521a3181123dc4a9584cc4b8572c08ea0a8274.zip
[ARM] msm: smd: add support for DSP SMD channels
- QSD8250 has a DSP that speaks SMD, in addition to the modem - handle a separate list of modem vs dsp channels - install dsp smd irq handler as necessary Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
Diffstat (limited to 'arch/arm/mach-msm/smd_debug.c')
-rw-r--r--arch/arm/mach-msm/smd_debug.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/arm/mach-msm/smd_debug.c b/arch/arm/mach-msm/smd_debug.c
index 3bb40a7fa283..0cc3ef8a94d3 100644
--- a/arch/arm/mach-msm/smd_debug.c
+++ b/arch/arm/mach-msm/smd_debug.c
@@ -55,7 +55,7 @@ static int dump_ch(char *buf, int max, struct smd_channel *ch)
buf, max,
"ch%02d:"
" %8s(%05d/%05d) %c%c%c%c%c%c%c <->"
- " %8s(%05d/%05d) %c%c%c%c%c%c%c\n", ch->n,
+ " %8s(%05d/%05d) %c%c%c%c%c%c%c '%s'\n", ch->n,
chstate(s->state), s->tail, s->head,
s->fDSR ? 'D' : 'd',
s->fCTS ? 'C' : 'c',
@@ -71,7 +71,8 @@ static int dump_ch(char *buf, int max, struct smd_channel *ch)
r->fRI ? 'I' : 'i',
r->fHEAD ? 'W' : 'w',
r->fTAIL ? 'R' : 'r',
- r->fSTATE ? 'S' : 's'
+ r->fSTATE ? 'S' : 's',
+ ch->name
);
}
@@ -135,7 +136,9 @@ static int debug_read_ch(char *buf, int max)
int i = 0;
spin_lock_irqsave(&smd_lock, flags);
- list_for_each_entry(ch, &smd_ch_list, ch_list)
+ list_for_each_entry(ch, &smd_ch_list_dsp, ch_list)
+ i += dump_ch(buf + i, max - i, ch);
+ list_for_each_entry(ch, &smd_ch_list_modem, ch_list)
i += dump_ch(buf + i, max - i, ch);
list_for_each_entry(ch, &smd_ch_closed_list, ch_list)
i += dump_ch(buf + i, max - i, ch);