summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-msm/smd.c
AgeCommit message (Collapse)AuthorFilesLines
2010-08-09arm: msm: Fix section mismatch in smd.c.Gregory Bean1-1/+1
Repair a section mismatch between the smd driver's platform_driver structure and its probe method. Signed-off-by: Gregory Bean <gbean@codeaurora.org> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: smd: fix SMD modem processor sync conditionDaniel Walker1-0/+7
When booting up we need to wait for the modem processor to partially boot. This is because the modem processor does resource allocation for us. If we don't wait the modem won't honor our requests and we end up crashing or in an unknown state. This change just formalizes the waiting process. Signed-off-by: Daniel Walker <c_dwalke@quicinc.com>
2010-05-12arm: msm: smd: ifdef dsp irq handlerDaniel Walker1-0/+2
This irq handler isn't used in all cases, so add the proper ifdef. This eliminates a compiler warning due to the function not getting used. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: smd: remove unneeded predefinesDaniel Walker1-41/+36
This just removed some unneeded predefines. One needed a whole function moved down further. The others could just be deleted. No functional changes. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: smd: msm7x30 a2m clean upDaniel Walker1-12/+0
This moves the msm_a2m_int() function into the header, and does a small macro clean up to be more inline with Linux norms. No functional changes. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: smd: convert unsigned addr to unsigned longDaniel Walker1-1/+1
"unsigned" translates to "unsigned int", but this value holds an address. We always want to use unsigned long for addresses since it will change size to fit the machine. This just convert the one address holder to unsigned long. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: smd: use either package v3 or v4 not bothDaniel Walker1-43/+1
This modifies SMD to use either the package v3 or package v4, but not both. The current code tries to allocate as v4 on all system which can produce a scary looking error message on boot up, smem_find(16, 40): wrong size 16424 smd_alloc_channel() cid=02 size=08192 'SMD_RPCCALL' With this error the code then falls back on the package v3 allocation method. This method is inefficient because it causes a slow down on some systems even when the allocation method can be determined at compile time. It also causes a kernel size increase that effects all system and is not needed. This change corrects the allocation to use one method or the other and not both. Signed-off-by: Daniel Walker <c_dwalke@quicinc.com>
2010-05-12arm: msm: smd: checkpatch clean up of smd/proc_commDaniel Walker1-6/+2
This cleans up coding style. There are no run time changes. Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12arm: msm: correctly signal the apps-to-modem irq in smd/proc_commDima Zavin1-5/+13
Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12msm: smd: provide atomic channel writesBrian Swetland1-0/+10
Some smd clients may write from multiple threads, in which case it's not safe to call smd_write without holding a lock. smd_write_atomic() provides the same functionality as smd_write() but obtains the smd lock first. Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: add /proc/last_radio_log when supported by the modem.Iliyan Malchev1-0/+4
Signed-off-by: Iliyan Malchev <malchev@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12msm/qsd: smd: avoid race condition in smd channel allocationBrian Swetland1-6/+7
Don't mark a channel as allocated if we failed to allocate it (perhaps the modem updated one table but not the other, etc) Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: smd: Update the correct fTAIL pointer after reading from fifoHaley Teng1-1/+1
When we read data out of the sender's fifo, we need to advance the sender's tail pointer, not the receiver's. Signed-off-by: Haley Teng <Haley_Teng@htc.com> Acked-by: Dima Zavin <dima@android.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: smd: add support for DSP SMD channelsBrian Swetland1-46/+68
- 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>
2010-05-12[ARM] msm: cleanup smd, separate debugfs supportBrian Swetland1-404/+21
- pull debug code into smd_debug.c - move necessary structures and defines into smd_private.h - fix some comment formatting, etc Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: Add 8k power collapse support to smdArve Hjønnevåg1-20/+37
Signed-off-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: Add item argument to smsm_change_state and smsm_get_stateArve Hjønnevåg1-30/+28
The new protocol require writing to two state fields, and reading several fields. Signed-off-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12msm: smd: initial support for smd v2Brian Swetland1-168/+258
- support both v2 and v1 style smd channels - support both v2 and v1 smsm shared state - update smsm state defines and smem item enum - prep work for dealing with smd to qdsp6 - simplify some smem access to minimize use of smem_alloc() at runtime Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: smd: don't crash if the smd channel table doesn't existBrian Swetland1-1/+4
Signed-off-by: Brian Swetland <swetland@google.com> Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
2010-05-12[ARM] msm: shared memory interface for baseband processor ipcBrian Swetland1-0/+1330
This code provides the low level interface to the "shared memory state machine" (smsm), and the virtual serial channels (smd), used to communicate with the baseband processor. Higher level transports (rpc, ethernet, AT command channel, etc) ride on top of this. Signed-off-by: Brian Swetland <swetland@google.com>