<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/drivers/bcma/driver_pci.c, branch standardize-docs</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=standardize-docs</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=standardize-docs'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2015-03-13T14:25:50+00:00</updated>
<entry>
<title>bcma: move PCI IRQ control function to host specific code</title>
<updated>2015-03-13T14:25:50+00:00</updated>
<author>
<name>Rafał Miłecki</name>
<email>zajec5@gmail.com</email>
</author>
<published>2015-03-05T17:25:10+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=702131e2a393b45174be326f1dbe20b658b4f157'/>
<id>urn:sha1:702131e2a393b45174be326f1dbe20b658b4f157</id>
<content type='text'>
This function isn't really related to any bus core. It touches PCI
device config registers only, so move it to the (PCI) host file.

Signed-off-by: Rafał Miłecki &lt;zajec5@gmail.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>bcma: change IRQ control function to accept bus as an argument</title>
<updated>2015-03-02T14:59:45+00:00</updated>
<author>
<name>Rafał Miłecki</name>
<email>zajec5@gmail.com</email>
</author>
<published>2015-02-08T16:11:48+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=5b6ff664c8959d715e785b9465b042407a5d87a0'/>
<id>urn:sha1:5b6ff664c8959d715e785b9465b042407a5d87a0</id>
<content type='text'>
It doesn't operate on PCI core, but PCI host device, so there is no
point of passing core related struct.

Signed-off-by: Rafał Miłecki &lt;zajec5@gmail.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>bcma: add helpers bringing PCIe hosted bus up / down</title>
<updated>2015-03-02T14:59:45+00:00</updated>
<author>
<name>Rafał Miłecki</name>
<email>zajec5@gmail.com</email>
</author>
<published>2015-02-08T16:11:47+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=4186721d02b71ae943e60bbf50d3488fd5fd6adb'/>
<id>urn:sha1:4186721d02b71ae943e60bbf50d3488fd5fd6adb</id>
<content type='text'>
Bringing PCIe hosted bus up requires operating on host-related core.
Since we plan to support PCIe Gen 2 devices we should provide a helper
picking the correct one (PCIE or PCIE2).

Signed-off-by: Rafał Miłecki &lt;zajec5@gmail.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>bcma: add early_init function for PCIe core and move some fix into it</title>
<updated>2015-01-29T08:53:08+00:00</updated>
<author>
<name>Rafał Miłecki</name>
<email>zajec5@gmail.com</email>
</author>
<published>2015-01-25T10:11:14+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=b504075f5903b969a54ef3a6ae994c0872edb259'/>
<id>urn:sha1:b504075f5903b969a54ef3a6ae994c0872edb259</id>
<content type='text'>
There are some PCIe core fixes that need to be applied before accessing
SPROM, otherwise reading it may fail.

Signed-off-by: Rafał Miłecki &lt;zajec5@gmail.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>bcma: add empty PCIe hostmode functions if support is disabled</title>
<updated>2015-01-29T08:52:59+00:00</updated>
<author>
<name>Rafał Miłecki</name>
<email>zajec5@gmail.com</email>
</author>
<published>2015-01-25T13:02:48+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=ae8ce289e55e6f9911016f73ac85dcb2e0c0c9c1'/>
<id>urn:sha1:ae8ce289e55e6f9911016f73ac85dcb2e0c0c9c1</id>
<content type='text'>
This allows us to drop some #ifdef magic (mess).

Signed-off-by: Rafał Miłecki &lt;zajec5@gmail.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>bcma: make bcma_core_pci_{up,down}() callable from atomic context</title>
<updated>2013-09-26T18:02:33+00:00</updated>
<author>
<name>Arend van Spriel</name>
<email>arend@broadcom.com</email>
</author>
<published>2013-09-25T10:11:02+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=2bedea8f26c92e2610f2f67889144990749461e0'/>
<id>urn:sha1:2bedea8f26c92e2610f2f67889144990749461e0</id>
<content type='text'>
This patch removes the bcma_core_pci_power_save() call from
the bcma_core_pci_{up,down}() functions as it tries to schedule
thus requiring to call them from non-atomic context. The function
bcma_core_pci_power_save() is now exported so the calling module
can explicitly use it in non-atomic context. This fixes the
'scheduling while atomic' issue reported by Tod Jackson and
Joe Perches.

[   13.210710] BUG: scheduling while atomic: dhcpcd/1800/0x00000202
[   13.210718] Modules linked in: brcmsmac nouveau coretemp kvm_intel kvm cordic brcmutil bcma dell_wmi atl1c ttm mxm_wmi wmi
[   13.210756] CPU: 2 PID: 1800 Comm: dhcpcd Not tainted 3.11.0-wl #1
[   13.210762] Hardware name: Alienware M11x R2/M11x R2, BIOS A04 11/23/2010
[   13.210767]  ffff880177c92c40 ffff880170fd1948 ffffffff8169af5b 0000000000000007
[   13.210777]  ffff880170fd1ab0 ffff880170fd1958 ffffffff81697ee2 ffff880170fd19d8
[   13.210785]  ffffffff816a19f5 00000000000f4240 000000000000d080 ffff880170fd1fd8
[   13.210794] Call Trace:
[   13.210813]  [&lt;ffffffff8169af5b&gt;] dump_stack+0x4f/0x84
[   13.210826]  [&lt;ffffffff81697ee2&gt;] __schedule_bug+0x43/0x51
[   13.210837]  [&lt;ffffffff816a19f5&gt;] __schedule+0x6e5/0x810
[   13.210845]  [&lt;ffffffff816a1c34&gt;] schedule+0x24/0x70
[   13.210855]  [&lt;ffffffff816a04fc&gt;] schedule_hrtimeout_range_clock+0x10c/0x150
[   13.210867]  [&lt;ffffffff810684e0&gt;] ? update_rmtp+0x60/0x60
[   13.210877]  [&lt;ffffffff8106915f&gt;] ? hrtimer_start_range_ns+0xf/0x20
[   13.210887]  [&lt;ffffffff816a054e&gt;] schedule_hrtimeout_range+0xe/0x10
[   13.210897]  [&lt;ffffffff8104f6fb&gt;] usleep_range+0x3b/0x40
[   13.210910]  [&lt;ffffffffa00371af&gt;] bcma_pcie_mdio_set_phy.isra.3+0x4f/0x80 [bcma]
[   13.210921]  [&lt;ffffffffa003729f&gt;] bcma_pcie_mdio_write.isra.4+0xbf/0xd0 [bcma]
[   13.210932]  [&lt;ffffffffa0037498&gt;] bcma_pcie_mdio_writeread.isra.6.constprop.13+0x18/0x30 [bcma]
[   13.210942]  [&lt;ffffffffa00374ee&gt;] bcma_core_pci_power_save+0x3e/0x80 [bcma]
[   13.210953]  [&lt;ffffffffa003765d&gt;] bcma_core_pci_up+0x2d/0x60 [bcma]
[   13.210975]  [&lt;ffffffffa03dc17c&gt;] brcms_c_up+0xfc/0x430 [brcmsmac]
[   13.210989]  [&lt;ffffffffa03d1a7d&gt;] brcms_up+0x1d/0x20 [brcmsmac]
[   13.211003]  [&lt;ffffffffa03d2498&gt;] brcms_ops_start+0x298/0x340 [brcmsmac]
[   13.211020]  [&lt;ffffffff81600a12&gt;] ? cfg80211_netdev_notifier_call+0xd2/0x5f0
[   13.211030]  [&lt;ffffffff815fa53d&gt;] ? packet_notifier+0xad/0x1d0
[   13.211064]  [&lt;ffffffff81656e75&gt;] ieee80211_do_open+0x325/0xf80
[   13.211076]  [&lt;ffffffff8106ac09&gt;] ? __raw_notifier_call_chain+0x9/0x10
[   13.211086]  [&lt;ffffffff81657b41&gt;] ieee80211_open+0x71/0x80
[   13.211101]  [&lt;ffffffff81526267&gt;] __dev_open+0x87/0xe0
[   13.211109]  [&lt;ffffffff8152650c&gt;] __dev_change_flags+0x9c/0x180
[   13.211117]  [&lt;ffffffff815266a3&gt;] dev_change_flags+0x23/0x70
[   13.211127]  [&lt;ffffffff8158cd68&gt;] devinet_ioctl+0x5b8/0x6a0
[   13.211136]  [&lt;ffffffff8158d5c5&gt;] inet_ioctl+0x75/0x90
[   13.211147]  [&lt;ffffffff8150b38b&gt;] sock_do_ioctl+0x2b/0x70
[   13.211155]  [&lt;ffffffff8150b681&gt;] sock_ioctl+0x71/0x2a0
[   13.211169]  [&lt;ffffffff8114ed47&gt;] do_vfs_ioctl+0x87/0x520
[   13.211180]  [&lt;ffffffff8113f159&gt;] ? ____fput+0x9/0x10
[   13.211198]  [&lt;ffffffff8106228c&gt;] ? task_work_run+0x9c/0xd0
[   13.211202]  [&lt;ffffffff8114f271&gt;] SyS_ioctl+0x91/0xb0
[   13.211208]  [&lt;ffffffff816aa252&gt;] system_call_fastpath+0x16/0x1b
[   13.211217] NOHZ: local_softirq_pending 202

The issue was introduced in v3.11 kernel by following commit:

commit aa51e598d04c6acf5477934cd6383f5a17ce9029
Author: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Date:   Sat Aug 24 00:32:31 2013 +0200

    brcmsmac: use bcma PCIe up and down functions

    replace the calls to bcma_core_pci_extend_L1timer() by calls to the
    newly introduced bcma_core_pci_ip() and bcma_core_pci_down()

    Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
    Cc: Arend van Spriel &lt;arend@broadcom.com&gt;
    Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;

This fix has been discussed with Hauke Mehrtens [1] selection
option 3) and is intended for v3.12.

Ref:
[1] http://mid.gmane.org/5239B12D.3040206@hauke-m.de

Cc: &lt;stable@vger.kernel.org&gt; # 3.11.x
Cc: Tod Jackson &lt;tod.jackson@gmail.com&gt;
Cc: Joe Perches &lt;joe@perches.com&gt;
Cc: Rafal Milecki &lt;zajec5@gmail.com&gt;
Cc: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Reviewed-by: Hante Meuleman &lt;meuleman@broadcom.com&gt;
Signed-off-by: Arend van Spriel &lt;arend@broadcom.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>bcma: add bcma_core_pci_power_save()</title>
<updated>2013-08-26T18:09:03+00:00</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:33+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=521deea64088bc885a76bd174241eaa3d3a6876f'/>
<id>urn:sha1:521deea64088bc885a76bd174241eaa3d3a6876f</id>
<content type='text'>
This enables or disables power saving on the PCIe bus when the wifi is
in operation or not.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>bcma: do not export bcma_core_pci_extend_L1timer()</title>
<updated>2013-08-26T18:09:03+00:00</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:32+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=780335acc815802dcee63d75f5589d43c3ccb402'/>
<id>urn:sha1:780335acc815802dcee63d75f5589d43c3ccb402</id>
<content type='text'>
This is not called any more, do not export it.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>bcma: add method to power up and down the PCIe core by wifi driver</title>
<updated>2013-08-26T18:09:02+00:00</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:30+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=cfe51ec1ae427ec0be5a7670eae815ce5eb30e1c'/>
<id>urn:sha1:cfe51ec1ae427ec0be5a7670eae815ce5eb30e1c</id>
<content type='text'>
The wifi driver should tell the PCIe core that it is now in operation
so that some workarounds can be applied and the power state is changed.
This should replace the call to bcma_core_pci_extend_L1timer by the
brcmsmac driver.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>Drivers: bcma: remove __dev* attributes.</title>
<updated>2013-01-03T23:57:15+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2012-12-21T23:12:59+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=0f58a01ddd5e8177255705ba15e64c3b74d67993'/>
<id>urn:sha1:0f58a01ddd5e8177255705ba15e64c3b74d67993</id>
<content type='text'>
CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
markings need to be removed.

This change removes the use of __devinit, __devexit_p, and __devexit
from these drivers.

Based on patches originally written by Bill Pemberton, but redone by me
in order to handle some of the coding style issues better, by hand.

Cc: Bill Pemberton &lt;wfp5p@virginia.edu&gt;
Cc: "Rafał Miłecki" &lt;zajec5@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
