History log of /openbmc/linux/drivers/net/wireless/ath/ath6kl/sdio.c (Results 26 – 50 of 187)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v3.3-rc7
# 12eb9444 07-Mar-2012 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: document all spinlocks

Also fixes quite a few checkpatch warnings like this:

ath6kl/hif.h:226: CHECK: spinlock_t definition without comment

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.co

ath6kl: document all spinlocks

Also fixes quite a few checkpatch warnings like this:

ath6kl/hif.h:226: CHECK: spinlock_t definition without comment

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 96f1fadc 07-Mar-2012 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: alignment should match open parenthesis

Fix the issues which checkpatch found and were easy to fix. Especially
callers of ath6kl_bmi_write() are tricky and that needs to be fixed
separately.

ath6kl: alignment should match open parenthesis

Fix the issues which checkpatch found and were easy to fix. Especially
callers of ath6kl_bmi_write() are tricky and that needs to be fixed
separately.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 390a8c8f 07-Mar-2012 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Check wow state before sending control and data pkt

Below two scenarios are taken care in this patch which helped
to fix the firmware crash during wow suspend/resume.

* TX operation (ctrl t

ath6kl: Check wow state before sending control and data pkt

Below two scenarios are taken care in this patch which helped
to fix the firmware crash during wow suspend/resume.

* TX operation (ctrl tx and data tx) has to be controlled based
on suspend state. i.e, with respect to WOW mode, control packets
are allowed to send from the host until the suspend state goes
ATH6KL_STATE_WOW and the data packets are allowed until WOW
suspend operation starts.

* Similarly, wow resume is NOT allowed if WOW suspend is in progress.

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 1e9a905d 06-Mar-2012 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Add provision to define suspend policy in disconnected state.

It gives flexibility to the user to define suspend policy
when the suspend mode is set to WOW and the device is in
disconnected

ath6kl: Add provision to define suspend policy in disconnected state.

It gives flexibility to the user to define suspend policy
when the suspend mode is set to WOW and the device is in
disconnected state at the time of suspend.

New module parameter wow_mode is added to get the choice
from the user. This parameter is valid only if the module
parameter suspend_mode is set to WOW.

To force WOW in connected state and cut power
in disconnected state:
suspend_mode=0x3 wow_mode=0x1

To force WOW in connected state and deep sleep
in disconnected state (this is also the default wow_mode):
suspend_mode=0x3 wow_mode=0x2

If there is no value specified to wow_mode during insmod,
deep sleep mode will be tried in the disconnected state.

kvalo: clarified commit log

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.3-rc6
# daa16bc5 02-Mar-2012 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Restrict memcpy to bounce buffer only for write request

No need to copy received local buffer content to bounce buffer
(DMA buffer) while performing sync READ operation from the chip.

It's

ath6kl: Restrict memcpy to bounce buffer only for write request

No need to copy received local buffer content to bounce buffer
(DMA buffer) while performing sync READ operation from the chip.

It's applicable for only WRITE operation.

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.3-rc5, v3.3-rc4
# d1f41597 09-Feb-2012 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Fix random system lockup

The commit "ath6kl: Use a mutex_lock to avoid
race in diabling and handling irq" introduces a
state where ath6kl_sdio_irq_handler() would be waiting
to claim the sdi

ath6kl: Fix random system lockup

The commit "ath6kl: Use a mutex_lock to avoid
race in diabling and handling irq" introduces a
state where ath6kl_sdio_irq_handler() would be waiting
to claim the sdio function for receive indefinitely
when things happen in the following order.

ath6kl_sdio_irq_handler()
- aquires mtx_irq
- sdio_release_host()
ath6kl_sdio_irq_disable()
- sdio_claim_host()
- sleep on mtx_irq
ath6kl_hif_intr_bh_handler()
- (indefinitely) wait for the sdio
function to be released to exclusively claim
it again for receive operation.

Fix this by replacing the mtx_irq with an atomic
variable and a wait_queue.

kvalo: add ath6kl_sdio_is_on_irq() due to open parenthesis alignment

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.3-rc3
# b29072cc 07-Feb-2012 Chilam Ng <chilamng@qca.qualcomm.com>

ath6kl: prioritize Tx bundling based on AC priorities

Tx bundling is the more efficient use of SDIO bus and allows more packet
transfers with fewer bus transactions, and is a way to improve overall

ath6kl: prioritize Tx bundling based on AC priorities

Tx bundling is the more efficient use of SDIO bus and allows more packet
transfers with fewer bus transactions, and is a way to improve overall
throughput. However, Tx bundling has only 4 scatter request resources available.
When there are multiple traffic streams of different priorities, it's possible
that lower priority traffic may hog all the scatter requests and lock out the
higher prioirty traffic from bundling.
Tx bundling is now enabled per AC. When an AC do a scatter request and
the remaining scatter request resources is lower than a configurable
threshold, it will disable Tx bundling for all AC's of lower priorities.
When an AC has Tx bundling disabled and has no Tx bundles sent in a
consecutive and configurable number of packets, Tx bundling will be re-enabled
for that AC.

Signed-off-by: Chilam Ng <chilamng@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 1b2df407 06-Feb-2012 Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>

ath6kl: Update license header

Update license header with the copyright to Qualcomm Atheros, Inc.
for the year 2011-2012.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-

ath6kl: Update license header

Update license header with the copyright to Qualcomm Atheros, Inc.
for the year 2011-2012.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.3-rc2
# cca4d5ad 30-Jan-2012 Santosh Sajjan <ssajjan@codeaurora.org>

ath6kl: Workaround to support Deep Sleep with MSM.

Set the host pm flag MMC_PM_WAKE_SDIO_IRQ to allow host
to disable the sdc2_clk and sdc2_h_clk,so that the MSM device
enter into TCXO shutdown.

Si

ath6kl: Workaround to support Deep Sleep with MSM.

Set the host pm flag MMC_PM_WAKE_SDIO_IRQ to allow host
to disable the sdc2_clk and sdc2_h_clk,so that the MSM device
enter into TCXO shutdown.

Signed-off-by: Santosh Sajjan <ssajjan@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# e390af77 30-Jan-2012 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Re-architect suspend mode handling in ath6kl_sdio_suspend

Using this patch, the user can bypass existing auto
suspend mode selection logic and force ath6kl to enter
into the suspend mode wha

ath6kl: Re-architect suspend mode handling in ath6kl_sdio_suspend

Using this patch, the user can bypass existing auto
suspend mode selection logic and force ath6kl to enter
into the suspend mode what he/she wants.

If the user doesn't choose any suspend mode while doing
insmod of the driver, auto suspend mode selection logic
will kick in and choose suspend mode based on the host
SDIO controller capability.

Generic module parameter is required to specify suspend
mode including Deep Sleep and WOW while doing insmod.
Renaming existing mod param variable suspend_cutpower
would be sufficient to meet this requirement.

New module parameter suspend_mode can take any one of
the below suspend state,
1. cut power
2. deep sleep
3. wow

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 0e7de662 21-Jan-2012 Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>

ath6kl: Fix memory leak when unloading ath6kl_sdio

The patch "ath6kl: create core.c" removes wiphy_free() from
ath6kl_cfg80211_cleanup() and misses to free wiphy in
ath6kl_sdio_remove(). This patch

ath6kl: Fix memory leak when unloading ath6kl_sdio

The patch "ath6kl: create core.c" removes wiphy_free() from
ath6kl_cfg80211_cleanup() and misses to free wiphy in
ath6kl_sdio_remove(). This patch fixes this regression.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.3-rc1
# 241b128b 17-Jan-2012 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: add back beginnings of USB support

John Linville had to revert the part of USB support which was already
in ath6kl due to build problems in commit cb00ec382b ("ath6kl: revert
USB support").

ath6kl: add back beginnings of USB support

John Linville had to revert the part of USB support which was already
in ath6kl due to build problems in commit cb00ec382b ("ath6kl: revert
USB support"). Now that I fixed the build problems properly by adding
ath6kl_core.ko kernel module it's possible to add back the
(incomplete) USB support. This patch is a revert of John's patch and
adds back the USB code which as already in ath6kl, only difference
being minor changes in Makefile and adapting usb.c to new core
function names.

Note that USB support in ath6kl is not complete yet. This code only
makes it possible to boot firmware but as HTC layer does not yet
support USB it's not possible to send any WMI commands nor data
packets to the firmware. That will be added soon.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 45eaa78f 17-Jan-2012 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: create core.c

Currently core functions are spread between various files, group all
the functions into file and rename the functions to follow the style
used elsewhere in the driver. This wil

ath6kl: create core.c

Currently core functions are spread between various files, group all
the functions into file and rename the functions to follow the style
used elsewhere in the driver. This will make it easier to a separate core
module.

Also fix a bug where wiphy is freed too early.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 866dc886 09-Jan-2012 Sujith Manoharan <c_manoha@qca.qualcomm.com>

ath6kl: Fix SDIO error path

sdio_release_host() would be called twice if sdio_set_block_size()
fails for some reason, which would result in the following warning.

WARNING: at /home/sujith/dev/wirel

ath6kl: Fix SDIO error path

sdio_release_host() would be called twice if sdio_set_block_size()
fails for some reason, which would result in the following warning.

WARNING: at /home/sujith/dev/wireless-testing/drivers/mmc/core/core.c:828 mmc_release_host+0x42/0x50 [mmc_core]()

Call Trace:
[<ffffffff81064fdf>] warn_slowpath_common+0x7f/0xc0
[<ffffffff8106503a>] warn_slowpath_null+0x1a/0x20
[<ffffffffa03beb42>] mmc_release_host+0x42/0x50 [mmc_core]
[<ffffffffa03c917e>] sdio_release_host+0x1e/0x30 [mmc_core]
[<ffffffffa053fac7>] ath6kl_sdio_config+0xc7/0x110 [ath6kl_sdio]
[<ffffffffa053fd2c>] ath6kl_sdio_probe+0x21c/0x320 [ath6kl_sdio]
[<ffffffffa03beb2a>] ? mmc_release_host+0x2a/0x50 [mmc_core]
[<ffffffffa03c7d2a>] sdio_bus_probe+0xfa/0x130 [mmc_core]
[<ffffffff813015ae>] driver_probe_device+0x7e/0x1b0
[<ffffffff8130178b>] __driver_attach+0xab/0xb0
[<ffffffff813016e0>] ? driver_probe_device+0x1b0/0x1b0
[<ffffffff813016e0>] ? driver_probe_device+0x1b0/0x1b0
[<ffffffff81300504>] bus_for_each_dev+0x64/0xa0
[<ffffffff8130123e>] driver_attach+0x1e/0x20
[<ffffffff81300e80>] bus_add_driver+0x1b0/0x280
[<ffffffffa0065000>] ? 0xffffffffa0064fff
[<ffffffff81301d06>] driver_register+0x76/0x140
[<ffffffffa0065000>] ? 0xffffffffa0064fff
[<ffffffffa03c7b71>] sdio_register_driver+0x21/0x30 [mmc_core]
[<ffffffffa0065012>] ath6kl_sdio_init+0x12/0x35 [ath6kl_sdio]
[<ffffffff81002042>] do_one_initcall+0x42/0x180
[<ffffffff810b025f>] sys_init_module+0x8f/0x200
[<ffffffff81425ac2>] system_call_fastpath+0x16/0x1b

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.2
# 9d82682d 04-Jan-2012 Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>

ath6kl: Use a mutex_lock to avoid race in diabling and handling irq

Currently this race is handled but in a messy way an atomic
variable is being checked in a loop which sleeps upto ms
in every iter

ath6kl: Use a mutex_lock to avoid race in diabling and handling irq

Currently this race is handled but in a messy way an atomic
variable is being checked in a loop which sleeps upto ms
in every iteration. Remove this logic and use a mutex
to make sure irq is not disabled when irq handling is in
progress.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# cb00ec38 05-Jan-2012 John W. Linville <linville@tuxdriver.com>

ath6kl: revert USB support

The ath6kl driver is causing build failures when the ath6kl bits are
not built as modules. A better fix is forthcoming in a future release,
but for now lets revert the pr

ath6kl: revert USB support

The ath6kl driver is causing build failures when the ath6kl bits are
not built as modules. A better fix is forthcoming in a future release,
but for now lets revert the problematic code.

This reverts the following commits:

fde57764ef8751b9aca11b6f6221ac5555bda699
d70385a26ad9a122a5450d066550470107b6bc38
59d954dda4b9b3f3e61d4b87a2b26952b8c4c09d

Signed-off-by: John W. Linville <linville@tuxdriver.com>

show more ...


Revision tags: v3.2-rc7, v3.2-rc6
# c0038972 16-Dec-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: handle firmware names more dynamically

Currently ath6kl has just hardcoded paths to each firmware file. Change
this more dynamic by separating the the directory and file name from each
other

ath6kl: handle firmware names more dynamically

Currently ath6kl has just hardcoded paths to each firmware file. Change
this more dynamic by separating the the directory and file name from each
other. That way it's easier to dynamically create full paths to firmware and
code looks better. And now it's possible to remove a function needed by
devicetree code.

While at it add a structure inside struct ath6kl_hw to contain all
firmware names. I deliberately omitted board file support as
those will be handled later.

This is needed for firmware API 3.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 10509f90 13-Dec-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: implement scheduled scan

ath6kl firmware supports scheduled scan functionality with the wow ssid
filter. But the firmware does not send any events after scan results
so I had to add a timer

ath6kl: implement scheduled scan

ath6kl firmware supports scheduled scan functionality with the wow ssid
filter. But the firmware does not send any events after scan results
so I had to add a timer which notifies about new scan results.

Sched scan needs firmware version 3.2.0.6 or later. If firmware doesn't
support sched scan the driver will not enable the feature.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.2-rc5, v3.2-rc4, v3.2-rc3
# fdb28589 21-Nov-2011 Raja Mani <rmani@qca.qualcomm.com>

ath6kl: Use mutex to protect dma buffer in sync read write

Firmware crashes while starting Soft AP in 32 bit x86 platform.
The reason is that the single dma buffer (ar_sdio->dma_buffer)
is used in a

ath6kl: Use mutex to protect dma buffer in sync read write

Firmware crashes while starting Soft AP in 32 bit x86 platform.
The reason is that the single dma buffer (ar_sdio->dma_buffer)
is used in ath6kl_sdio_read_write_sync() for unaligned buffer
handling and this function is called in the multiple context
at the same time. So, finally hits dma buffer corruption and
firmware crash.

Mutex is used to protect dma buffer to avoid data corruption.
Spin lock can not used to fix this issue since mmc stack
read/write calls may for sleep.

Observed this issue with recently commited patch
"ath6kl: Claim sdio function only at appropriate places"
861dd058f495973c7ad2a44b8f68f3cc05733eab

kvalo: change name of mutex to more descriptive and add a comment
about what it protects

Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


Revision tags: v3.2-rc2
# f0ea5d58 14-Nov-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: add ar6004 firmwares to sdio module

When adding ar6004 SDIO support I forgot to add corresponding
MODULE_FIRMWARE() definitions to sdio.c.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>


# 0d0192ba 14-Nov-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: use hardware version names consistently

Part of ath6kl uses "REV3" style of naming hardware versions and elsewhere
"hw 2.1.1" is used instead for the same version. This is confusing, use
the

ath6kl: use hardware version names consistently

Part of ath6kl uses "REV3" style of naming hardware versions and elsewhere
"hw 2.1.1" is used instead for the same version. This is confusing, use
the latter term everywhere.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# fde57764 11-Nov-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: enable USB support

Now two modules are built, ath6kl_sdio.ko and ath6kl_usb.ko. But the USB
module isn't fully functional yet as HTC layer is missing support and
that's why it's marked as ex

ath6kl: enable USB support

Now two modules are built, ath6kl_sdio.ko and ath6kl_usb.ko. But the USB
module isn't fully functional yet as HTC layer is missing support and
that's why it's marked as experimental for now.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# 77eab1e9 11-Nov-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: add hif_type

In some rare cases core code needs to know what hif type is used. Add
a field to struct ath6kl to denote that. Hopefully this is just a
temporary solution.

Signed-off-by: Kalle

ath6kl: add hif_type

In some rare cases core code needs to know what hif type is used. Add
a field to struct ath6kl to denote that. Hopefully this is just a
temporary solution.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# d93e2c2f 11-Nov-2011 Naveen Gangadharan <ngangadh@qca.qualcomm.com>

ath6kl: AR6004 SDIO support

Add support for AR6004 SDIO. Tested scan, association (open mode) and
ping.

kvalo: change commit log a bit, drop board address changes

Signed-off-by: Naveen Gangadharan

ath6kl: AR6004 SDIO support

Add support for AR6004 SDIO. Tested scan, association (open mode) and
ping.

kvalo: change commit log a bit, drop board address changes

Signed-off-by: Naveen Gangadharan <ngangadh@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

show more ...


# c7111495 11-Nov-2011 Kalle Valo <kvalo@qca.qualcomm.com>

ath6kl: move diag commands to hif driver

This is preparation for USB support which will have different diag
commands.

Based on code by Kevin Fang.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>


12345678