<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/include/linux/bcma/bcma_driver_pci.h, branch linux-3.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-3.17.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2013-09-26T18:02:33Z</updated>
<entry>
<title>bcma: make bcma_core_pci_{up,down}() callable from atomic context</title>
<updated>2013-09-26T18:02:33Z</updated>
<author>
<name>Arend van Spriel</name>
<email>arend@broadcom.com</email>
</author>
<published>2013-09-25T10:11:02Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/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:03Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:33Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/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:03Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:32Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/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:02Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2013-08-23T22:32:30Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/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>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem</title>
<updated>2013-01-28T19:43:00Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2013-01-28T19:43:00Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4205e6ef4ee747aa81930537b6035086ba5f1e28'/>
<id>urn:sha1:4205e6ef4ee747aa81930537b6035086ba5f1e28</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bcma: update pci configuration for bcm4706/bcm4716</title>
<updated>2013-01-11T19:50:00Z</updated>
<author>
<name>Nathan Hintz</name>
<email>nlhintz@hotmail.com</email>
</author>
<published>2013-01-11T06:24:03Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=990debe2ca8379863709721926550a55f47f3880'/>
<id>urn:sha1:990debe2ca8379863709721926550a55f47f3880</id>
<content type='text'>
Update the PCI configuration for BCM4706 and BCM4716 per the 2011
Broadcom SDK.

Signed-off-by: Nathan Hintz &lt;nlhintz@hotmail.com&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:15Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2012-12-21T23:12:59Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/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>
<entry>
<title>bcma: add bcma_core_pci_config_fixup()</title>
<updated>2012-05-16T16:45:22Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2012-04-29T00:18:52Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2b2715b83c433d22b10bd654e102baea6f5589b0'/>
<id>urn:sha1:2b2715b83c433d22b10bd654e102baea6f5589b0</id>
<content type='text'>
This code is based on code from pcie_misc_config_fixup() in brcmsmac.
This patch is part of the move of pci specific code from brcmsmac to
bcma.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Tested-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_fixcfg()</title>
<updated>2012-05-16T16:45:22Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2012-04-29T00:18:51Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ec00f3732129e57206e9ef9883d681ad6584f5dd'/>
<id>urn:sha1:ec00f3732129e57206e9ef9883d681ad6584f5dd</id>
<content type='text'>
This code is based on code from pcicore_fixcfg() in brcmsmac. This
patch is part of the move of pci specific code from brcmsmac to bcma.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Tested-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_extend_L1timer</title>
<updated>2012-05-16T16:45:22Z</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2012-04-29T00:18:50Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=29f6b3d823885093890b1604d8450e7b57a31281'/>
<id>urn:sha1:29f6b3d823885093890b1604d8450e7b57a31281</id>
<content type='text'>
This code is based on code from pcie_extendL1timer() in brcmsmac. This
patch is part of the move of pci specific code from brcmsmac to bcma.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Tested-by: Arend van Spriel &lt;arend@broadcom.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
</feed>
