- 08 1月, 2015 2 次提交
-
-
由 Amitkumar Karwar 提交于
Sometimes suspend thread queues a command and wait for it's response, meanwhile WLAN driver power cycles the card which leads to crash. This patch makes sure that suspend thread is woken up in remove path. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
This change improves readability and fixes allignment problem. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 06 1月, 2015 3 次提交
-
-
由 Amitkumar Karwar 提交于
This flag will be set in unload path to make sure that we skip sending further commands, ignore interrupts and stop main thread when unload starts. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
If module init command fails, FW might not be in good state. We will return from setup handler and skip downloading further commands. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
btmrvl_remove_card() calls kthread_stop() to stop the main thread, but kthread_should_stop() is checked when all the activities are done in the main thread before sleeping. We will have kthread_should_stop() check as soon as main thread is woken up. This fixes a crash issue caused due to an invalid memory access while unnecessarily processing interrupts after card removal. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 04 12月, 2014 2 次提交
-
-
由 Xinming Hu 提交于
This patch adds firmware dump support for marvell bluetooth chipset. Currently only SD8897 is supported. This is implemented based on dev_coredump, a new mechnism introduced in kernel 3.18rc3 Firmware dump can be trigger by echo 1 > /sys/kernel/debug/bluetooth/hci*/config/fw_dump and when the dump operation is completed, data can be read by cat /sys/class/devcoredump/devcd*/data We have prepared following script to divide fw memory dump data into multiple files based on memory type. [root]# cat btmrvl_split_dump_data.sh #!/bin/bash # usage: ./btmrvl_split_dump_data.sh dump_data fw_dump_data=$1 mem_type="ITCM DTCM SQRAM APU CIU ICU MAC EXT7 EXT8 EXT9 EXT10 EXT11 EXT12 EXT13 EXTLAST" for name in ${mem_type[@]} do sed -n "/Start dump $name/,/End dump/p" $fw_dump_data > tmp.$name.log if [ ! -s tmp.$name.log ] then rm -rf tmp.$name.log else # Remove the describle info "Start dump" and "End dump" sed '1d' tmp.$name.log | sed '$d' > /data/$name.log if [ -s /data/$name.log ] then echo "generate /data/$name.log" else sed '1d' tmp.$name.log | sed '$d' > /var/$name.log echo "generate /var/$name.log" fi rm -rf tmp.$name.log fi done Signed-off-by: NXinming Hu <huxm@marvell.com> Signed-off-by: NCathy Luo <cluo@marvell.com> Signed-off-by: NAvinash Patil <patila@marvell.com> Reviewed-by: NJohannes Berg <johannes@sipsolutions.net> Reviewed-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
BT_INFO/BT_DBG etc. already takes care of adding a newline An extra newline character inside message is removed in this patch. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 19 11月, 2014 3 次提交
-
-
由 Amitkumar Karwar 提交于
Host sleep status flag should be reset when there is an interrupt from device. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NCathy Luo <cluo@marvell.com> Signed-off-by: NAvinash Patil <patila@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
This can be used to have GPIO host wakeup method suitable for the platform and configurable GAP for host sleep handshake. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NCathy Luo <cluo@marvell.com> Signed-off-by: NAvinash Patil <patila@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
Calibration data can be downloaded through device tree method. This patch adds the documentation. Also, instead of searching device tree node by name using of_find_node_by_name() API, let's use for_each_compatible_node(). Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NCathy Luo <cluo@marvell.com> Signed-off-by: NAvinash Patil <patila@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 31 7月, 2014 1 次提交
-
-
由 Anatol Pomozov 提交于
btmrvl_add_card() function calls kthread_run that might return error (e.g. if current thread is killed). If one tries to use the error value as a pointer then invalid memory access oops happens. Check kthread_run() return value, if it is an error then release resources correctly. TEST=boot computer with BT modules enabled. I see the error message that BT device initialization failed. Now kernel does not crash. Hint: to enable BT run 'rmmod btmrvl_sdio; modprobe btmrvl_sdio' Signed-off-by: NAnatol Pomozov <anatol.pomozov@gmail.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 19 7月, 2014 1 次提交
-
-
由 Amitkumar Karwar 提交于
.set_bdaddr handler is implemented for public address configuration. A reboot restores the bdaddr to its original address. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 03 7月, 2014 2 次提交
-
-
由 Chin-Ran Lo 提交于
After BT_CMD_HOST_SLEEP_ENABLE command finishes, driver should wait until getting BT_EVENT_HOST_SLEEP_ENABLE event to complete suspend procedure. Without this patch the suspend handler would return success earlier. By the time when the BT_EVENT_HOST_SLEEP_ENABLE event comes in the controller driver could have already turned off the bus clock. This causes kernel crash or system reboot eventually. Cc: <stable@vger.kernel.org> # 3.13+ Signed-off-by: NChin-Ran Lo <crlo@marvell.com> Signed-off-by: NJeff CF Chen <jeffc@marvell.com> Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Bing Zhao 提交于
A vendor specific command is sent to firmware during initialization to enable this feature. This command is for SD8897 only. Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 24 4月, 2014 1 次提交
-
-
由 Petri Gynther 提交于
Change subcmd parameter from int to u8 to match its use: btmrvl_send_sync_cmd(priv, BT_CMD_MODULE_CFG_REQ, &subcmd, 1); Signed-off-by: NPetri Gynther <pgynther@google.com> Reviewed-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
- 29 3月, 2014 1 次提交
-
-
由 Bing Zhao 提交于
For SD8897, CMD52 write_to_clear may have missing interrupts under certain corner case condition. Use CMD53 read-to-clear to fix the problem. Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 21 3月, 2014 1 次提交
-
-
由 Amitkumar Karwar 提交于
If vendor specific HCI commands are received from application, we should send corresponding events to stack. These events should be consumed in driver, only if they are for the internal HCI commands generated by driver. This patch fixes the vendor command 0x3f stuck problem with above mentioned change. For example, hcitool cmd 3f 22 fe 06 22 21 20 43 50 00 Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 04 12月, 2013 3 次提交
-
-
由 Bing Zhao 提交于
The device tree property can define the cal-data in proper order. There is no need to swap the bytes in driver. Also remove the redundant cal-data memory copy after removing the byte swapping. Cc: Mike Frysinger <vapier@chromium.org> Cc: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NHyuckjoo Lee <hyuckjoo.lee@samsung.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Bing Zhao 提交于
Some ARM versions of Chromebook need to download a new calibration data from host driver to firmware. They do have EEPROM but still need a piece of new calibration data in test mode. The cal-data is platform dependent. It's simpler and more feasible to use device tree based cal-data instead of configuration file based cal-data. This patch remove configuration file based cal-data downloading and replace it using cal-data from device tree. When CONFIG_OF is not selected, or the specific property is not present in the device tree, the calibration downloading will not happen. Cc: Mike Frysinger <vapier@chromium.org> Cc: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NHyuckjoo Lee <hyuckjoo.lee@samsung.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Bing Zhao 提交于
Replace ogf/ocf and its packing with 16-bit opcodes. Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 11 10月, 2013 3 次提交
-
-
由 Marcel Holtmann 提交于
The hdev parameter of btmrvl_send_frame() is always valid. If it were not valid, then it would have crashed earlier in the call chain. Signed-off-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
由 Marcel Holtmann 提交于
Instead of masking hdev inside the skb->dev parameter, hand it directly to the driver as a parameter to hdev->send. This makes the driver interface more clear and simpler. This patch fixes all drivers to accept and handle the new parameter of hdev->send callback. Special care has been taken for bpa10x and btusb drivers that require having skb->dev set to hdev for the URB transmit complete handlers. Signed-off-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
由 Marcel Holtmann 提交于
The btmrvl_ioctl() function is not used and thus remove it. Signed-off-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
- 02 10月, 2013 4 次提交
-
-
由 Amitkumar Karwar 提交于
A text file containing calibration data in hex format can be provided at following path: /lib/firmware/mrvl/sd8797_caldata.conf The data will be downloaded to firmware during initialization. Reviewed-by: NMike Frysinger <vapier@chromium.org> Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NHyuckjoo Lee <hyuckjoo.lee@samsung.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
Move initialization code to hdev's setup handler. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
Replace this proprietary structure with the standard one (struct hci_command_hdr). Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
由 Amitkumar Karwar 提交于
Command preparation code is used multiple times. This patch separate out this common code and create btmrvl_send_sync_cmd() function. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 14 6月, 2013 1 次提交
-
-
由 Daniel Drake 提交于
There is currently a race condition in the btmrvl_remove_card() which is causing hangs on suspend for OLPC. When the race occurs, kthread_stop() never returns. The problem is that btmrvl_service_main_thread() calls kthread_should_stop() and then does a fair number of things before restarting the loop and sleeping. If the thread gets stopped after kthread_should_stop() is checked, but before the sleep happens, the thread will go to sleep and won't necessarily be woken up. Move the kthread_should_stop() check into a race-free place. Signed-off-by: NDaniel Drake <dsd@laptop.org> Signed-off-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
- 09 7月, 2012 1 次提交
-
-
由 Andrei Emeltchenko 提交于
Patch shortens locals scope and adds missing braces. This is a diff between v1 which was applied and v2 of patch "Bluetooth: btmrvl: Do not send vendor events to bluetooth stack". Signed-off-by: NAndrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk>
-
- 19 6月, 2012 1 次提交
-
-
由 Andrei Emeltchenko 提交于
Vendor-specific events shall be processed in driver and not sent to bluetooth stack where they screw up HCI command countings. Signed-off-by: NAndrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk>
-
- 09 5月, 2012 2 次提交
-
-
由 Amitkumar Karwar 提交于
Host sleep is activated using already configured host sleep parameters in suspend handler and it is cancelled in resume handler. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Acked-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NGustavo Padovan <gustavo@padovan.org>
-
由 Amitkumar Karwar 提交于
Currently debugfs commands "hscfgcmd" and "gpiogap" are provided for host sleep configuration. But if user doesn't configure host sleep parameters using these commands, host sleep activation is failed during suspend (support for suspend and resume handlers is added in next patch). Default host sleep configuration is done during driver initialisation in this patch. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NGustavo Padovan <gustavo@padovan.org>
-
- 13 2月, 2012 3 次提交
-
-
由 David Herrmann 提交于
The linux device model provides dev_set/get_drvdata so we can use this to save private driver data. This also removes several unnecessary casts. Signed-off-by: NDavid Herrmann <dh.herrmann@googlemail.com> Acked-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
由 David Herrmann 提交于
After unregistering an hci_dev object a bluetooth driver does not have any callbacks in the hci_dev structure left over. Therefore, there is no need to keep a reference to the module. Previously, we needed this to protect the hci-destruct callback. However, this callback is no longer available so we do not need this owner field, anymore. Drivers now call hci_unregister_dev() and they are done with the object. Signed-off-by: NDavid Herrmann <dh.herrmann@googlemail.com> Acked-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
由 David Herrmann 提交于
The callback is optional and we provide an empty callback so remove it entirely. Signed-off-by: NDavid Herrmann <dh.herrmann@googlemail.com> Acked-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
-
- 22 11月, 2011 1 次提交
-
-
由 Tejun Heo 提交于
Some drivers set PF_NOFREEZE in their kthread functions which is completely unnecessary and racy - some part of freezer code doesn't consider cases where PF_NOFREEZE is set asynchronous to freezer operations. In general, there's no reason to allow setting PF_NOFREEZE explicitly. Remove them and change the documentation to note that setting PF_NOFREEZE directly isn't allowed. -v2: Dropped change to twl4030-irq.c as it no longer uses PF_NOFREEZE. Signed-off-by: NTejun Heo <tj@kernel.org> Acked-by: N"Gustavo F. Padovan" <padovan@profusion.mobi> Acked-by: NSamuel Ortiz <sameo@linux.intel.com> Cc: Marcel Holtmann <marcel@holtmann.org> Cc: wwang <wei_wang@realsil.com.cn>
-
- 01 11月, 2011 1 次提交
-
-
由 Paul Gortmaker 提交于
Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
-
- 12 10月, 2010 1 次提交
-
-
由 David Vrabel 提交于
HCI transport drivers may not know what type of radio an AMP device has so only say whether they're BR/EDR or AMP devices. Signed-off-by: NDavid Vrabel <david.vrabel@csr.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org> Signed-off-by: NGustavo F. Padovan <padovan@profusion.mobi>
-
- 22 7月, 2010 1 次提交
-
-
由 Amitkumar Karwar 提交于
When driver is sending a command or data and the firmware is also sending a sleep event, sometimes it is observed that driver will continue to send the command/data to firmware right after processing sleep event. Once sleep event is processed driver is not supposed to send anything because firmware is in sleep state after that. Previously interrupt processing was done in SDIO interrupt callback handler. Now it is done in btmrvl driver main thread to solve the cross-sending properly. Signed-off-by: NAmitkumar Karwar <akarwar@marvell.com> Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-
- 10 5月, 2010 1 次提交
-
-
由 Bing Zhao 提交于
Get the device type from MODULE_BRINGUP_REQ command response. Signed-off-by: NBing Zhao <bzhao@marvell.com> Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
-