* Re: kernel panic on 3.10.0-rc7
From: Krzysztof Mazur @ 2013-07-15 9:27 UTC (permalink / raw)
To: Felix Fietkau; +Cc: Sedat Dilek, peizhao.research, linux-wireless
In-Reply-To: <51E3BB93.2090000@openwrt.org>
On Mon, Jul 15, 2013 at 11:06:27AM +0200, Felix Fietkau wrote:
> Please post the actual message output. Saying "it looks like something
> wrong with the rate control mechanism" doesn't give me anything useful
> to work with.
>
Sorry, I added you to Cc after I removed the original Oops.
On Mon, Jul 1, 2013 at 8:55 AM, Peizhao Hu wrote:
> Hi,
>
> Is there anyone has the same problem with me? I have a cm9 radio card with
> the node.
>
> The kernel compiled and booted alright, but crashed short after I set it up
> in the ad hoc mode. From the debug message output, it looks like something
> wrong with the rate control mechanism when it is trying to the rate
> (minstreal_get_rate function in this case).
>
> Is this a bug?
>
> Kernel version
> 3.10.0-rc7
>
> root@alix-router:~# i[ 250.809354] BUG: unable to handle kernel NULL
> pointe8
> [ 250.812875] IP: [<d0952afa>] minstrel_get_rate+0x1a/0x220 [mac80211]
> [ 250.812875] *pde = 00000000
> [ 250.812875] Oops: 0000 [#1] SMP
> [ 250.812875] Modules linked in: ath5k ath mac80211 cfg80211 arc4
> gpio_cs55]
> [ 250.812875] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.10.0-rc7-cca+
> 1
> [ 250.812875] Workqueue: phy0 ieee80211_iface_work [mac80211]
> [ 250.812875] task: c002bfc0 ti: c0076000 task.ti: c0076000
> [ 250.812875] EIP: 0060:[<d0952afa>] EFLAGS: 00010292 CPU: 0
> [ 250.812875] EIP is at minstrel_get_rate+0x1a/0x220 [mac80211]
> [ 250.812875] EAX: 00000000 EBX: 00000000 ECX: 00000000 EDX: cc2bf1c0
> [ 250.812875] ESI: ce6cf900 EDI: c0077d00 EBP: c0077cac ESP: c0077c94
> [ 250.812875] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
> [ 250.812875] CR0: 8005003b CR2: 00000038 CR3: 0c245000 CR4: 00000090
> [ 250.812875] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
> [ 250.812875] DR6: ffff0ff0 DR7: 00000400
> [ 250.812875] Stack:
> [ 250.812875] 00017901 cc101500 00000180 cc133500 d0967920 cc2bf1e1
> c0077cd
> [ 250.812875] c0077d00 00000180 ce525170 00000000 cc2bf1e0 c0077d00
> cc2bf10
> [ 250.812875] c0077d24 c0077d30 d0927651 c02c5550 c0077cec d092001c
> cc1335c
> [ 250.812875] Call Trace:
> [ 250.812875] [<d091a8dd>] rate_control_get_rate+0x9d/0xe0 [mac80211]
> [ 250.812875] [<d0927651>] ieee80211_beacon_get_tim+0x1a1/0x330 [mac80211]
> [ 250.812875] [<d092001c>] ? ieee80211_assign_beacon+0x1bc/0x1c0
> [mac80211]
> [ 250.812875] [<d0da3fb9>] ath5k_beacon_update+0x29/0x340 [ath5k]
> [ 250.812875] [<d0d99366>] ? ath5k_hw_get_frame_duration+0xa6/0xc0 [ath5k]
> [ 250.812875] [<d0d99140>] ? ath5k_hw_set_ifs_intervals+0x110/0x1b0
> [ath5k]
> [ 250.812875] [<d0da92d3>] ath5k_bss_info_changed+0x113/0x1f0 [ath5k]
> [ 250.812875] [<d0da91c0>] ? ath5k_configure_filter+0x1c0/0x1c0 [ath5k]
> [ 250.812875] [<d0908903>] ieee80211_bss_info_change_notify+0xc3/0x1c0
> [ma]
> [ 250.812875] [<d09141db>] ? __ieee80211_sta_join_ibss+0x19b/0x660
> [mac802]
> [ 250.812875] [<d091442c>] __ieee80211_sta_join_ibss+0x3ec/0x660
> [mac80211]
> [ 250.812875] [<c157be33>] ? printk+0x4d/0x4f
> [ 250.812875] [<d0915b4d>] ieee80211_ibss_work+0x31d/0x3d0 [mac80211]
> [ 250.812875] [<d0916d2d>] ieee80211_iface_work+0x18d/0x310 [mac80211]
> [ 250.812875] [<c105025f>] process_one_work+0x10f/0x380
> [ 250.812875] [<c104e485>] ? start_worker+0x25/0x30
> [ 250.812875] [<c1051000>] ? manage_workers.isra.24+0x180/0x290
> [ 250.812875] [<c105120a>] worker_thread+0xfa/0x310
> [ 250.812875] [<c1051110>] ? manage_workers.isra.24+0x290/0x290
> [ 250.812875] [<c1056674>] kthread+0x94/0xa0
> [ 250.812875] [<c158b1f7>] ret_from_kernel_thread+0x1b/0x28
> [ 250.812875] [<c10565e0>] ? flush_kthread_worker+0x90/0x90
> [ 250.812875] Code: 3d fe 93 f0 5d c3 90 90 90 90 90 90 90 90 90 90 90 55
> 88
> [ 250.812875] EIP: [<d0952afa>] minstrel_get_rate+0x1a/0x220 [mac80211]
> SS:4
> [ 250.812875] CR2: 0000000000000038
> [ 250.815950] ---[ end trace 87b8337e77cb6664 ]---
> [ 250.817834] Kernel panic - not syncing: Fatal exception in interrupt
>
>
>
> --
> Regards;
>
> Peizhao
Krzysiek
^ permalink raw reply
* Re: kernel panic on 3.10.0-rc7
From: Krzysztof Mazur @ 2013-07-15 9:35 UTC (permalink / raw)
To: Felix Fietkau; +Cc: Sedat Dilek, peizhao.research, linux-wireless
In-Reply-To: <20130715092730.GA12765@shrek.podlesie.net>
On Mon, Jul 15, 2013 at 11:27:30AM +0200, Krzysztof Mazur wrote:
> On Mon, Jul 15, 2013 at 11:06:27AM +0200, Felix Fietkau wrote:
> > Please post the actual message output. Saying "it looks like something
> > wrong with the rate control mechanism" doesn't give me anything useful
> > to work with.
> >
>
> Sorry, I added you to Cc after I removed the original Oops.
>
On my system the NULL pointer dereference occurs at 0x806389b0,
and the minstrel_get_rate() looks like:
80638990 <minstrel_get_rate>:
80638990: 83 ec 1c sub $0x1c,%esp
80638993: 89 7c 24 14 mov %edi,0x14(%esp)
80638997: 8b 7c 24 20 mov 0x20(%esp),%edi
8063899b: 89 5c 24 0c mov %ebx,0xc(%esp)
8063899f: 89 cb mov %ecx,%ebx
806389a1: 89 6c 24 18 mov %ebp,0x18(%esp)
806389a5: 89 c5 mov %eax,%ebp
806389a7: 89 d0 mov %edx,%eax
806389a9: 89 74 24 10 mov %esi,0x10(%esp)
806389ad: 8b 77 0c mov 0xc(%edi),%esi
* 806389b0: 0f b6 49 38 movzbl 0x38(%ecx),%ecx *
806389b4: 8d 56 20 lea 0x20(%esi),%edx
806389b7: 89 54 24 04 mov %edx,0x4(%esp)
806389bb: 89 da mov %ebx,%edx
806389bd: 88 4c 24 0b mov %cl,0xb(%esp)
806389c1: 89 f9 mov %edi,%ecx
806389c3: e8 38 2f fe ff call 8061b900 <rate_control_send_low>
Krzysiek
^ permalink raw reply
* Re: kernel panic on 3.10.0-rc7
From: Felix Fietkau @ 2013-07-15 9:48 UTC (permalink / raw)
To: Krzysztof Mazur; +Cc: Sedat Dilek, peizhao.research, linux-wireless
In-Reply-To: <20130715093544.GA15055@shrek.podlesie.net>
On 2013-07-15 11:35 AM, Krzysztof Mazur wrote:
> On Mon, Jul 15, 2013 at 11:27:30AM +0200, Krzysztof Mazur wrote:
>> On Mon, Jul 15, 2013 at 11:06:27AM +0200, Felix Fietkau wrote:
>> > Please post the actual message output. Saying "it looks like something
>> > wrong with the rate control mechanism" doesn't give me anything useful
>> > to work with.
>> >
>>
>> Sorry, I added you to Cc after I removed the original Oops.
>>
>
> On my system the NULL pointer dereference occurs at 0x806389b0,
> and the minstrel_get_rate() looks like:
>
> 80638990 <minstrel_get_rate>:
> 80638990: 83 ec 1c sub $0x1c,%esp
> 80638993: 89 7c 24 14 mov %edi,0x14(%esp)
> 80638997: 8b 7c 24 20 mov 0x20(%esp),%edi
> 8063899b: 89 5c 24 0c mov %ebx,0xc(%esp)
> 8063899f: 89 cb mov %ecx,%ebx
> 806389a1: 89 6c 24 18 mov %ebp,0x18(%esp)
> 806389a5: 89 c5 mov %eax,%ebp
> 806389a7: 89 d0 mov %edx,%eax
> 806389a9: 89 74 24 10 mov %esi,0x10(%esp)
> 806389ad: 8b 77 0c mov 0xc(%edi),%esi
> * 806389b0: 0f b6 49 38 movzbl 0x38(%ecx),%ecx *
> 806389b4: 8d 56 20 lea 0x20(%esi),%edx
> 806389b7: 89 54 24 04 mov %edx,0x4(%esp)
> 806389bb: 89 da mov %ebx,%edx
> 806389bd: 88 4c 24 0b mov %cl,0xb(%esp)
> 806389c1: 89 f9 mov %edi,%ecx
> 806389c3: e8 38 2f fe ff call 8061b900 <rate_control_send_low>
My x86 assembly is a a bit rusty (I usually work with ARM and MIPS), so
I'm having trouble figuring out the exact line of code here. Please use
gdb to track it down.
- Felix
^ permalink raw reply
* RE: [PATCH 3.9 0/4] Enable 7000 device family on 3.9
From: Grumbach, Emmanuel @ 2013-07-15 9:56 UTC (permalink / raw)
To: stable@vger.kernel.org; +Cc: linux-wireless@vger.kernel.org
In-Reply-To: <1373881749-2923-1-git-send-email-emmanuel.grumbach@intel.com>
> From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
>
> This small patch series enables 7260 and 3160 devices on 3.9 kernel. Three
> patches are already in linux.git (3.11-rc1).
> One patch is 3.9 specific and disables configuration that is not supported in
> 3.9.
>
Will resend without the Change-ID
^ permalink raw reply
* [PATCH 0/5] bcma: first patches to add support for BCM4708
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
These patches are just fixing minor problems seen while adding support
for BCM4708 SoC and they add some constants for this SoC.
Hauke Mehrtens (5):
bcma: add some more core names
bcma: make it possible to select SoC support without mips
bcma: add constants for new ARM based SoCs
bcma: return correct error code when bus scan failed
bcma: fix handling of big addrl
drivers/bcma/Kconfig | 10 ++++++++--
drivers/bcma/main.c | 2 +-
drivers/bcma/scan.c | 28 ++++++++++++++++++++--------
include/linux/bcma/bcma.h | 17 +++++++++++++++++
4 files changed, 46 insertions(+), 11 deletions(-)
--
1.7.10.4
^ permalink raw reply
* [PATCH 1/5] bcma: add some more core names
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
In-Reply-To: <1373886908-4460-1-git-send-email-hauke@hauke-m.de>
These cores were found on a BCM4708 (chipid 53010), this is a ARM SoC
with two Cortex A9 cores.
bcma: bus0: Found chip with id 0xCF12, rev 0x00 and package 0x02
bcma: bus0: Core 0 found: ChipCommon (manuf 0x4BF, id 0x800, rev 0x2A, class 0x0)
bcma: bus0: Core 1 found: DMA (manuf 0x4BF, id 0x502, rev 0x01, class 0x0)
bcma: bus0: Core 2 found: GBit MAC (manuf 0x4BF, id 0x82D, rev 0x04, class 0x0)
bcma: bus0: Core 3 found: GBit MAC (manuf 0x4BF, id 0x82D, rev 0x04, class 0x0)
bcma: bus0: Core 4 found: GBit MAC (manuf 0x4BF, id 0x82D, rev 0x04, class 0x0)
bcma: bus0: Core 5 found: GBit MAC (manuf 0x4BF, id 0x82D, rev 0x04, class 0x0)
bcma: bus0: Core 6 found: PCIe Gen 2 (manuf 0x4BF, id 0x501, rev 0x01, class 0x0)
bcma: bus0: Core 7 found: PCIe Gen 2 (manuf 0x4BF, id 0x501, rev 0x01, class 0x0)
bcma: bus0: Core 8 found: ARM Cortex A9 core (ihost) (manuf 0x4BF, id 0x510, rev 0x01, class 0x0)
bcma: bus0: Core 9 found: USB 2.0 (manuf 0x4BF, id 0x504, rev 0x01, class 0x0)
bcma: bus0: Core 10 found: USB 3.0 (manuf 0x4BF, id 0x505, rev 0x01, class 0x0)
bcma: bus0: Core 11 found: SDIO3 (manuf 0x4BF, id 0x503, rev 0x01, class 0x0)
bcma: bus0: Core 12 found: ARM Cortex A9 JTAG (manuf 0x4BF, id 0x506, rev 0x01, class 0x0)
bcma: bus0: Core 13 found: Denali DDR2/DDR3 memory controller (manuf 0x4BF, id 0x507, rev 0x01, class 0x0)
bcma: bus0: Core 14 found: ROM (manuf 0x4BF, id 0x508, rev 0x01, class 0x0)
bcma: bus0: Core 15 found: NAND flash controller (manuf 0x4BF, id 0x509, rev 0x01, class 0x0)
bcma: bus0: Core 16 found: SPI flash controller (manuf 0x4BF, id 0x50A, rev 0x01, class 0x0)
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/bcma/scan.c | 12 ++++++++++++
include/linux/bcma/bcma.h | 12 ++++++++++++
2 files changed, 24 insertions(+)
diff --git a/drivers/bcma/scan.c b/drivers/bcma/scan.c
index 8bffa5c..f2f1415 100644
--- a/drivers/bcma/scan.c
+++ b/drivers/bcma/scan.c
@@ -32,6 +32,18 @@ static const struct bcma_device_id_name bcma_bcm_device_names[] = {
{ BCMA_CORE_4706_CHIPCOMMON, "BCM4706 ChipCommon" },
{ BCMA_CORE_4706_SOC_RAM, "BCM4706 SOC RAM" },
{ BCMA_CORE_4706_MAC_GBIT, "BCM4706 GBit MAC" },
+ { BCMA_CORE_PCIEG2, "PCIe Gen 2" },
+ { BCMA_CORE_DMA, "DMA" },
+ { BCMA_CORE_SDIO3, "SDIO3" },
+ { BCMA_CORE_USB20, "USB 2.0" },
+ { BCMA_CORE_USB30, "USB 3.0" },
+ { BCMA_CORE_A9JTAG, "ARM Cortex A9 JTAG" },
+ { BCMA_CORE_DDR23, "Denali DDR2/DDR3 memory controller" },
+ { BCMA_CORE_ROM, "ROM" },
+ { BCMA_CORE_NAND, "NAND flash controller" },
+ { BCMA_CORE_QSPI, "SPI flash controller" },
+ { BCMA_CORE_CHIPCOMMON_B, "Chipcommon B" },
+ { BCMA_CORE_ARMCA9, "ARM Cortex A9 core (ihost)" },
{ BCMA_CORE_AMEMC, "AMEMC (DDR)" },
{ BCMA_CORE_ALTA, "ALTA (I2S)" },
{ BCMA_CORE_INVALID, "Invalid" },
diff --git a/include/linux/bcma/bcma.h b/include/linux/bcma/bcma.h
index 622fc50..8fee028 100644
--- a/include/linux/bcma/bcma.h
+++ b/include/linux/bcma/bcma.h
@@ -72,7 +72,19 @@ struct bcma_host_ops {
/* Core-ID values. */
#define BCMA_CORE_OOB_ROUTER 0x367 /* Out of band */
#define BCMA_CORE_4706_CHIPCOMMON 0x500
+#define BCMA_CORE_PCIEG2 0x501
+#define BCMA_CORE_DMA 0x502
+#define BCMA_CORE_SDIO3 0x503
+#define BCMA_CORE_USB20 0x504
+#define BCMA_CORE_USB30 0x505
+#define BCMA_CORE_A9JTAG 0x506
+#define BCMA_CORE_DDR23 0x507
+#define BCMA_CORE_ROM 0x508
+#define BCMA_CORE_NAND 0x509
+#define BCMA_CORE_QSPI 0x50A
+#define BCMA_CORE_CHIPCOMMON_B 0x50B
#define BCMA_CORE_4706_SOC_RAM 0x50E
+#define BCMA_CORE_ARMCA9 0x510
#define BCMA_CORE_4706_MAC_GBIT 0x52D
#define BCMA_CORE_AMEMC 0x52E /* DDR1/2 memory controller core */
#define BCMA_CORE_ALTA 0x534 /* I2S core */
--
1.7.10.4
^ permalink raw reply related
* [PATCH 2/5] bcma: make it possible to select SoC support without mips
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
In-Reply-To: <1373886908-4460-1-git-send-email-hauke@hauke-m.de>
To make it possible to use the SoC host interface with ARM SoCs do not
depend on the MIPS driver any more.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/bcma/Kconfig | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/bcma/Kconfig b/drivers/bcma/Kconfig
index 380a200..7c081b3 100644
--- a/drivers/bcma/Kconfig
+++ b/drivers/bcma/Kconfig
@@ -35,8 +35,14 @@ config BCMA_DRIVER_PCI_HOSTMODE
PCI core hostmode operation (external PCI bus).
config BCMA_HOST_SOC
- bool
- depends on BCMA_DRIVER_MIPS
+ bool "Support for BCMA in a SoC"
+ depends on BCMA
+ help
+ Host interface for a Broadcom AIX bus directly mapped into
+ the memory. This only works with the Broadcom SoCs from the
+ BCM47XX line.
+
+ If unsure, say N
config BCMA_DRIVER_MIPS
bool "BCMA Broadcom MIPS core driver"
--
1.7.10.4
^ permalink raw reply related
* [PATCH 3/5] bcma: add constants for new ARM based SoCs
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
In-Reply-To: <1373886908-4460-1-git-send-email-hauke@hauke-m.de>
These are the chipIDs of some ARM based SoCs from the BCM47xx line.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
include/linux/bcma/bcma.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/include/linux/bcma/bcma.h b/include/linux/bcma/bcma.h
index 8fee028..4d043c3 100644
--- a/include/linux/bcma/bcma.h
+++ b/include/linux/bcma/bcma.h
@@ -189,6 +189,11 @@ struct bcma_host_ops {
#define BCMA_PKG_ID_BCM5357 11
#define BCMA_CHIP_ID_BCM53572 53572
#define BCMA_PKG_ID_BCM47188 9
+#define BCMA_CHIP_ID_BCM4707 53010
+#define BCMA_PKG_ID_BCM4707 1
+#define BCMA_PKG_ID_BCM4708 2
+#define BCMA_PKG_ID_BCM4709 0
+#define BCMA_CHIP_ID_BCM53018 53018
/* Board types (on PCI usually equals to the subsystem dev id) */
/* BCM4313 */
--
1.7.10.4
^ permalink raw reply related
* [PATCH 4/5] bcma: return correct error code when bus scan failed
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
In-Reply-To: <1373886908-4460-1-git-send-email-hauke@hauke-m.de>
It is better to return the actual error code than just -1.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/bcma/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/bcma/main.c b/drivers/bcma/main.c
index 0067422..90ee350 100644
--- a/drivers/bcma/main.c
+++ b/drivers/bcma/main.c
@@ -237,7 +237,7 @@ int bcma_bus_register(struct bcma_bus *bus)
err = bcma_bus_scan(bus);
if (err) {
bcma_err(bus, "Failed to scan: %d\n", err);
- return -1;
+ return err;
}
/* Early init CC core */
--
1.7.10.4
^ permalink raw reply related
* [PATCH 5/5] bcma: fix handling of big addrl
From: Hauke Mehrtens @ 2013-07-15 11:15 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, zajec5, Hauke Mehrtens
In-Reply-To: <1373886908-4460-1-git-send-email-hauke@hauke-m.de>
The return value of bcma_erom_get_addr_desc() is a unsigned value and it
could wrap around in the two complement writing. This happens for one
core in the BCM4708 SoC.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
drivers/bcma/scan.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/bcma/scan.c b/drivers/bcma/scan.c
index f2f1415..cd6b20f 100644
--- a/drivers/bcma/scan.c
+++ b/drivers/bcma/scan.c
@@ -213,7 +213,7 @@ static s32 bcma_erom_get_mst_port(struct bcma_bus *bus, u32 __iomem **eromptr)
return ent;
}
-static s32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
+static u32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
u32 type, u8 port)
{
u32 addrl, addrh, sizel, sizeh = 0;
@@ -225,7 +225,7 @@ static s32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
((ent & SCAN_ADDR_TYPE) != type) ||
(((ent & SCAN_ADDR_PORT) >> SCAN_ADDR_PORT_SHIFT) != port)) {
bcma_erom_push_ent(eromptr);
- return -EINVAL;
+ return (u32)-EINVAL;
}
addrl = ent & SCAN_ADDR_ADDR;
@@ -273,7 +273,7 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
struct bcma_device_id *match, int core_num,
struct bcma_device *core)
{
- s32 tmp;
+ u32 tmp;
u8 i, j;
s32 cia, cib;
u8 ports[2], wrappers[2];
@@ -351,11 +351,11 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
* the main register space for the core
*/
tmp = bcma_erom_get_addr_desc(bus, eromptr, SCAN_ADDR_TYPE_SLAVE, 0);
- if (tmp <= 0) {
+ if (tmp == 0 || IS_ERR_VALUE(tmp)) {
/* Try again to see if it is a bridge */
tmp = bcma_erom_get_addr_desc(bus, eromptr,
SCAN_ADDR_TYPE_BRIDGE, 0);
- if (tmp <= 0) {
+ if (tmp == 0 || IS_ERR_VALUE(tmp)) {
return -EILSEQ;
} else {
bcma_info(bus, "Bridge found\n");
@@ -369,7 +369,7 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
for (j = 0; ; j++) {
tmp = bcma_erom_get_addr_desc(bus, eromptr,
SCAN_ADDR_TYPE_SLAVE, i);
- if (tmp < 0) {
+ if (IS_ERR_VALUE(tmp)) {
/* no more entries for port _i_ */
/* pr_debug("erom: slave port %d "
* "has %d descriptors\n", i, j); */
@@ -386,7 +386,7 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
for (j = 0; ; j++) {
tmp = bcma_erom_get_addr_desc(bus, eromptr,
SCAN_ADDR_TYPE_MWRAP, i);
- if (tmp < 0) {
+ if (IS_ERR_VALUE(tmp)) {
/* no more entries for port _i_ */
/* pr_debug("erom: master wrapper %d "
* "has %d descriptors\n", i, j); */
@@ -404,7 +404,7 @@ static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
for (j = 0; ; j++) {
tmp = bcma_erom_get_addr_desc(bus, eromptr,
SCAN_ADDR_TYPE_SWRAP, i + hack);
- if (tmp < 0) {
+ if (IS_ERR_VALUE(tmp)) {
/* no more entries for port _i_ */
/* pr_debug("erom: master wrapper %d "
* has %d descriptors\n", i, j); */
--
1.7.10.4
^ permalink raw reply related
* [PATCH 3.10 0/3] Enable 7000 device family on 3.10
From: Emmanuel Grumbach @ 2013-07-15 11:19 UTC (permalink / raw)
To: linux-wireless; +Cc: Emmanuel Grumbach
This small patch series enables 7260 and 3160 devices on 3.10
kernel. Three patches are already in linux.git (3.11-rc1).
One patch is 3.10 specific and disables configuration that is not
supported in 3.10.
Emmanuel Grumbach (1):
iwlwifi: mvm: support BSS only
Johannes Berg (2):
iwlwifi: mvm: adjust firmware D3 configuration API
iwlwifi: bump required firmware API version for 3160/7260
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
4 files changed, 12 insertions(+), 32 deletions(-)
--
1.7.10.4
^ permalink raw reply
* [PATCH 3.10 0/3] Enable 7000 device family on 3.10
From: Emmanuel Grumbach @ 2013-07-15 11:24 UTC (permalink / raw)
To: linux-wireless; +Cc: Emmanuel Grumbach
This small patch series enables 7260 and 3160 devices on 3.10
kernel. Three patches are already in linux.git (3.11-rc1).
One patch is 3.10 specific and disables configuration that is not
supported in 3.10.
Emmanuel Grumbach (1):
iwlwifi: mvm: support BSS only
Johannes Berg (2):
iwlwifi: mvm: adjust firmware D3 configuration API
iwlwifi: bump required firmware API version for 3160/7260
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
4 files changed, 12 insertions(+), 32 deletions(-)
--
1.7.10.4
^ permalink raw reply
* Re: kernel panic on 3.10.0-rc7
From: Krzysztof Mazur @ 2013-07-15 11:25 UTC (permalink / raw)
To: Felix Fietkau; +Cc: Sedat Dilek, peizhao.research, linux-wireless
In-Reply-To: <51E3C571.2060602@openwrt.org>
On Mon, Jul 15, 2013 at 11:48:33AM +0200, Felix Fietkau wrote:
> On 2013-07-15 11:35 AM, Krzysztof Mazur wrote:
> > On Mon, Jul 15, 2013 at 11:27:30AM +0200, Krzysztof Mazur wrote:
> >> On Mon, Jul 15, 2013 at 11:06:27AM +0200, Felix Fietkau wrote:
> >> > Please post the actual message output. Saying "it looks like something
> >> > wrong with the rate control mechanism" doesn't give me anything useful
> >> > to work with.
> >> >
> >>
> >> Sorry, I added you to Cc after I removed the original Oops.
> >>
> >
> > On my system the NULL pointer dereference occurs at 0x806389b0,
> > and the minstrel_get_rate() looks like:
> >
> > 80638990 <minstrel_get_rate>:
> > 80638990: 83 ec 1c sub $0x1c,%esp
> > 80638993: 89 7c 24 14 mov %edi,0x14(%esp)
> > 80638997: 8b 7c 24 20 mov 0x20(%esp),%edi
> > 8063899b: 89 5c 24 0c mov %ebx,0xc(%esp)
> > 8063899f: 89 cb mov %ecx,%ebx
> > 806389a1: 89 6c 24 18 mov %ebp,0x18(%esp)
> > 806389a5: 89 c5 mov %eax,%ebp
> > 806389a7: 89 d0 mov %edx,%eax
> > 806389a9: 89 74 24 10 mov %esi,0x10(%esp)
> > 806389ad: 8b 77 0c mov 0xc(%edi),%esi
> > * 806389b0: 0f b6 49 38 movzbl 0x38(%ecx),%ecx *
> > 806389b4: 8d 56 20 lea 0x20(%esi),%edx
> > 806389b7: 89 54 24 04 mov %edx,0x4(%esp)
> > 806389bb: 89 da mov %ebx,%edx
> > 806389bd: 88 4c 24 0b mov %cl,0xb(%esp)
> > 806389c1: 89 f9 mov %edi,%ecx
> > 806389c3: e8 38 2f fe ff call 8061b900 <rate_control_send_low>
> My x86 assembly is a a bit rusty (I usually work with ARM and MIPS), so
> I'm having trouble figuring out the exact line of code here. Please use
> gdb to track it down.
>
The priv_sta is NULL and it's later dereferenced in:
bool prev_sample = mi->prev_sample;
static void
minstrel_get_rate(void *priv, struct ieee80211_sta *sta,
void *priv_sta, struct ieee80211_tx_rate_control *txrc)
{
struct sk_buff *skb = txrc->skb;
struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
struct minstrel_sta_info *mi = priv_sta;
struct minstrel_priv *mp = priv;
struct ieee80211_tx_rate *rate = &info->control.rates[0];
struct minstrel_rate *msr, *mr;
unsigned int ndx;
bool mrr_capable;
bool prev_sample = mi->prev_sample;
int delta;
int sampling_ratio;
With:
diff --git a/net/mac80211/rc80211_minstrel.c b/net/mac80211/rc80211_minstrel.c
index ac7ef54..be17d52 100644
--- a/net/mac80211/rc80211_minstrel.c
+++ b/net/mac80211/rc80211_minstrel.c
@@ -290,9 +290,15 @@ minstrel_get_rate(void *priv, struct ieee80211_sta *sta,
struct minstrel_rate *msr, *mr;
unsigned int ndx;
bool mrr_capable;
- bool prev_sample = mi->prev_sample;
+ bool prev_sample;
int delta;
int sampling_ratio;
+
+ if (!mi) {
+ printk("Oops, mi is NULL\n");
+ return;
+ }
+ prev_sample = mi->prev_sample;
/* management/no-ack frames do not use rate control */
if (rate_control_send_low(sta, priv_sta, txrc))
the system no longer crashes and just prints a message.
Krzysiek
^ permalink raw reply related
* [PATCH 3.10 0/3] Enable 7000 device family on 3.10
From: Emmanuel Grumbach @ 2013-07-15 11:44 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
This small patch series enables 7260 and 3160 devices on 3.10
kernel. Three patches are already in linux.git (3.11-rc1).
One patch is 3.10 specific and disables configuration that is not
supported in 3.10.
Emmanuel Grumbach (1):
iwlwifi: mvm: support BSS only
Johannes Berg (2):
iwlwifi: mvm: adjust firmware D3 configuration API
iwlwifi: bump required firmware API version for 3160/7260
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
4 files changed, 12 insertions(+), 32 deletions(-)
--
1.7.10.4
^ permalink raw reply
* [PATCH 3.10 2/3] iwlwifi: mvm: adjust firmware D3 configuration API
From: Emmanuel Grumbach @ 2013-07-15 11:44 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
In-Reply-To: <1373888700-3040-1-git-send-email-emmanuel.grumbach@intel.com>
From: Johannes Berg <johannes.berg@intel.com>
commit dfcb4c3aacedee6838e436fb575b31e138505203 upstream.
The D3 firmware API changed to include a new field, adjust
the driver to it to avoid getting an NMI when configuring.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
index 51e015d..6f8b2c1 100644
--- a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
+++ b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
@@ -75,13 +75,15 @@ enum iwl_d3_wakeup_flags {
* struct iwl_d3_manager_config - D3 manager configuration command
* @min_sleep_time: minimum sleep time (in usec)
* @wakeup_flags: wakeup flags, see &enum iwl_d3_wakeup_flags
+ * @wakeup_host_timer: force wakeup after this many seconds
*
* The structure is used for the D3_CONFIG_CMD command.
*/
struct iwl_d3_manager_config {
__le32 min_sleep_time;
__le32 wakeup_flags;
-} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_3 */
+ __le32 wakeup_host_timer;
+} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_4 */
/* TODO: OFFLOADS_QUERY_API_S_VER_1 */
--
1.7.10.4
^ permalink raw reply related
* [PATCH 3.10 1/3] iwlwifi: mvm: support BSS only
From: Emmanuel Grumbach @ 2013-07-15 11:44 UTC (permalink / raw)
To: stable; +Cc: linux-wireless, Emmanuel Grumbach
In-Reply-To: <1373888700-3040-1-git-send-email-emmanuel.grumbach@intel.com>
Only BSS is supported in 3.10. In later kernels, other modes
have been fixed and tested to work.
This will at least allow user to use the regular wifi
functionality.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 36 +--------------------------
1 file changed, 1 insertion(+), 35 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index a5eb8c8..5b1b86f 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -78,32 +78,6 @@
#include "fw-api-scan.h"
#include "iwl-phy-db.h"
-static const struct ieee80211_iface_limit iwl_mvm_limits[] = {
- {
- .max = 1,
- .types = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_AP),
- },
- {
- .max = 1,
- .types = BIT(NL80211_IFTYPE_P2P_CLIENT) |
- BIT(NL80211_IFTYPE_P2P_GO),
- },
- {
- .max = 1,
- .types = BIT(NL80211_IFTYPE_P2P_DEVICE),
- },
-};
-
-static const struct ieee80211_iface_combination iwl_mvm_iface_combinations[] = {
- {
- .num_different_channels = 1,
- .max_interfaces = 3,
- .limits = iwl_mvm_limits,
- .n_limits = ARRAY_SIZE(iwl_mvm_limits),
- },
-};
-
#ifdef CONFIG_PM_SLEEP
static const struct nl80211_wowlan_tcp_data_token_feature
iwl_mvm_wowlan_tcp_token_feature = {
@@ -160,20 +134,12 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
hw->vif_data_size = sizeof(struct iwl_mvm_vif);
hw->chanctx_data_size = sizeof(struct iwl_mvm_phy_ctxt);
- hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_P2P_CLIENT) |
- BIT(NL80211_IFTYPE_AP) |
- BIT(NL80211_IFTYPE_P2P_GO) |
- BIT(NL80211_IFTYPE_P2P_DEVICE);
+ hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION);
hw->wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY |
WIPHY_FLAG_DISABLE_BEACON_HINTS |
WIPHY_FLAG_IBSS_RSN;
- hw->wiphy->iface_combinations = iwl_mvm_iface_combinations;
- hw->wiphy->n_iface_combinations =
- ARRAY_SIZE(iwl_mvm_iface_combinations);
-
hw->wiphy->max_remain_on_channel_duration = 10000;
hw->max_listen_interval = IWL_CONN_MAX_LISTEN_INTERVAL;
--
1.7.10.4
^ permalink raw reply related
* [PATCH 3.10 3/3] iwlwifi: bump required firmware API version for 3160/7260
From: Emmanuel Grumbach @ 2013-07-15 11:45 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
In-Reply-To: <1373888700-3040-1-git-send-email-emmanuel.grumbach@intel.com>
From: Johannes Berg <johannes.berg@intel.com>
commit a2d0909a687b4d250cc2b7481072e361678745ba upstream.
As the firmware API has changed significantly and we don't
have support code for the old APIs, bump the version to be
able to release the version 7 API firmware.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/iwl-7000.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/iwl-7000.c b/drivers/net/wireless/iwlwifi/iwl-7000.c
index 50263e8..dc94d44 100644
--- a/drivers/net/wireless/iwlwifi/iwl-7000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-7000.c
@@ -67,16 +67,16 @@
#include "iwl-agn-hw.h"
/* Highest firmware API version supported */
-#define IWL7260_UCODE_API_MAX 6
-#define IWL3160_UCODE_API_MAX 6
+#define IWL7260_UCODE_API_MAX 7
+#define IWL3160_UCODE_API_MAX 7
/* Oldest version we won't warn about */
-#define IWL7260_UCODE_API_OK 6
-#define IWL3160_UCODE_API_OK 6
+#define IWL7260_UCODE_API_OK 7
+#define IWL3160_UCODE_API_OK 7
/* Lowest firmware API version supported */
-#define IWL7260_UCODE_API_MIN 6
-#define IWL3160_UCODE_API_MIN 6
+#define IWL7260_UCODE_API_MIN 7
+#define IWL3160_UCODE_API_MIN 7
/* NVM versions */
#define IWL7260_NVM_VERSION 0x0a1d
--
1.7.10.4
^ permalink raw reply related
* [PATCH RESEND 3.9 0/4] Enable 7000 device family on 3.9
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
This small patch series enables 7260 and 3160 devices on 3.9
kernel. Three patches are already in linux.git (3.11-rc1).
One patch is 3.9 specific and disables configuration that is not
supported in 3.9.
Dor Shaish (1):
iwlwifi: mvm: don't use cts to self
Emmanuel Grumbach (1):
iwlwifi: mvm: support BSS only
Johannes Berg (2):
iwlwifi: mvm: adjust firmware D3 configuration API
iwlwifi: bump required firmware API version for 3160/7260
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
4 files changed, 12 insertions(+), 32 deletions(-)
--
1.7.10.4
^ permalink raw reply
* [PATCH RESEND 3.9 1/4] iwlwifi: mvm: don't use cts to self
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
In-Reply-To: <1373888804-3077-1-git-send-email-emmanuel.grumbach@intel.com>
From: Dor Shaish <dor.shaish@intel.com>
commit cc7ee2bab3d90b0a09651dcfa2d0c9ec1a115bc8 upstream.
The current fw doesn't currently support cts to self. There
is a bug in the fw that prevents us from using cts to self.
Use full protection (including RTS) for now.
Signed-off-by: Dor Shaish <dor.shaish@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c b/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
index bf76b17..864cd6d 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
@@ -553,9 +553,9 @@ static void iwl_mvm_mac_ctxt_cmd_common(struct iwl_mvm *mvm,
if (vif->bss_conf.qos)
cmd->qos_flags |= cpu_to_le32(MAC_QOS_FLG_UPDATE_EDCA);
+ /* Don't use cts to self as the fw doesn't support it currently. */
if (vif->bss_conf.use_cts_prot)
- cmd->protection_flags |= cpu_to_le32(MAC_PROT_FLG_TGG_PROTECT |
- MAC_PROT_FLG_SELF_CTS_EN);
+ cmd->protection_flags |= cpu_to_le32(MAC_PROT_FLG_TGG_PROTECT);
/*
* I think that we should enable these 2 flags regardless the HT PROT
--
1.7.10.4
^ permalink raw reply related
* [PATCH RESEND 3.9 2/4] iwlwifi: mvm: support BSS only
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless, Emmanuel Grumbach
In-Reply-To: <1373888804-3077-1-git-send-email-emmanuel.grumbach@intel.com>
Only BSS is support in 3.9. In later kernels, other modes
have been fixed and tested to work.
This will at least allow user to use the regular wifi
functionality.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
1 file changed, 1 insertion(+), 23 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index 8572358..c9569a0 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -76,23 +76,6 @@
#include "fw-api-scan.h"
#include "iwl-phy-db.h"
-static const struct ieee80211_iface_limit iwl_mvm_limits[] = {
- {
- .max = 1,
- .types = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_AP),
- },
-};
-
-static const struct ieee80211_iface_combination iwl_mvm_iface_combinations[] = {
- {
- .num_different_channels = 1,
- .max_interfaces = 3,
- .limits = iwl_mvm_limits,
- .n_limits = ARRAY_SIZE(iwl_mvm_limits),
- },
-};
-
int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
{
struct ieee80211_hw *hw = mvm->hw;
@@ -126,17 +109,12 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
hw->vif_data_size = sizeof(struct iwl_mvm_vif);
hw->chanctx_data_size = sizeof(struct iwl_mvm_phy_ctxt);
- hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_AP);
+ hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION);
hw->wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY |
WIPHY_FLAG_DISABLE_BEACON_HINTS |
WIPHY_FLAG_IBSS_RSN;
- hw->wiphy->iface_combinations = iwl_mvm_iface_combinations;
- hw->wiphy->n_iface_combinations =
- ARRAY_SIZE(iwl_mvm_iface_combinations);
-
hw->wiphy->max_remain_on_channel_duration = 500;
hw->max_listen_interval = IWL_CONN_MAX_LISTEN_INTERVAL;
--
1.7.10.4
^ permalink raw reply related
* [PATCH RESEND 3.9 3/4] iwlwifi: mvm: adjust firmware D3 configuration API
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
In-Reply-To: <1373888804-3077-1-git-send-email-emmanuel.grumbach@intel.com>
From: Johannes Berg <johannes.berg@intel.com>
commit dfcb4c3aacedee6838e436fb575b31e138505203 upstream.
The D3 firmware API changed to include a new field, adjust
the driver to it to avoid getting an NMI when configuring.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
index cf6f9a0..937665f 100644
--- a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
+++ b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
@@ -75,13 +75,15 @@ enum iwl_d3_wakeup_flags {
* struct iwl_d3_manager_config - D3 manager configuration command
* @min_sleep_time: minimum sleep time (in usec)
* @wakeup_flags: wakeup flags, see &enum iwl_d3_wakeup_flags
+ * @wakeup_host_timer: force wakeup after this many seconds
*
* The structure is used for the D3_CONFIG_CMD command.
*/
struct iwl_d3_manager_config {
__le32 min_sleep_time;
__le32 wakeup_flags;
-} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_3 */
+ __le32 wakeup_host_timer;
+} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_4 */
/* TODO: OFFLOADS_QUERY_API_S_VER_1 */
--
1.7.10.4
^ permalink raw reply related
* [PATCH RESEND 3.9 4/4] iwlwifi: bump required firmware API version for 3160/7260
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
In-Reply-To: <1373888804-3077-1-git-send-email-emmanuel.grumbach@intel.com>
From: Johannes Berg <johannes.berg@intel.com>
commit a2d0909a687b4d250cc2b7481072e361678745ba upstream.
As the firmware API has changed significantly and we don't
have support code for the old APIs, bump the version to be
able to release the version 7 API firmware.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/pcie/7000.c b/drivers/net/wireless/iwlwifi/pcie/7000.c
index 6e35b2b..25c33b0 100644
--- a/drivers/net/wireless/iwlwifi/pcie/7000.c
+++ b/drivers/net/wireless/iwlwifi/pcie/7000.c
@@ -31,16 +31,16 @@
#include "cfg.h"
/* Highest firmware API version supported */
-#define IWL7260_UCODE_API_MAX 6
-#define IWL3160_UCODE_API_MAX 6
+#define IWL7260_UCODE_API_MAX 7
+#define IWL3160_UCODE_API_MAX 7
/* Oldest version we won't warn about */
-#define IWL7260_UCODE_API_OK 6
-#define IWL3160_UCODE_API_OK 6
+#define IWL7260_UCODE_API_OK 7
+#define IWL3160_UCODE_API_OK 7
/* Lowest firmware API version supported */
-#define IWL7260_UCODE_API_MIN 6
-#define IWL3160_UCODE_API_MIN 6
+#define IWL7260_UCODE_API_MIN 7
+#define IWL3160_UCODE_API_MIN 7
/* NVM versions */
#define IWL7260_NVM_VERSION 0x0a1d
--
1.7.10.4
^ permalink raw reply related
* Re: [PATCH] brcmsmac: Further reduce log spam from tx phy messages
From: John Greene @ 2013-07-15 12:15 UTC (permalink / raw)
To: Joe Perches; +Cc: linville, arend, linux-wireless
In-Reply-To: <1373652022.2614.13.camel@joe-AO722>
On 07/12/2013 02:00 PM, Joe Perches wrote:
> On Fri, 2013-07-12 at 10:55 -0400, John Greene wrote:
>> Relegate 2 phy messages to debug status as they create excessive
>> log spam, noted in multiple bugzillas for brcmsmac v3.8 and up.
>
> Hi John,
>
> Just trivia:
>
>> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/ampdu.c b/drivers/net/wireless/brcm80211/brcmsmac/ampdu.c
> []
>> @@ -928,7 +928,7 @@ brcms_c_ampdu_dotxstatus_complete(struct ampdu_info *ampdu, struct scb *scb,
> []
>> - brcms_err(wlc->hw->d11core,
>> + brcms_dbg_ht(wlc->hw->d11core,
>> "%s: ampdu tx phy error (0x%x)\n",
>> __func__, txs->phyerr);
>
> Please keep the indentation of the arguments of
> the same statement aligned to the open parenthesis.
>
>> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/main.c b/drivers/net/wireless/brcm80211/brcmsmac/main.c
> []
>> @@ -882,7 +882,7 @@ brcms_c_dotxstatus(struct brcms_c_info *wlc, struct tx_status *txs)
> []
>> - brcms_err(wlc->hw->d11core, "phyerr 0x%x, rate 0x%x\n",
>> + brcms_dbg_tx(wlc->hw->d11core, "phyerr 0x%x, rate 0x%x\n",
>> txs->phyerr, txh->MainRates);
>
> Here too.
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
Thanks Joe. My oversight. I wish the checkpatch flagged this stuff.
I'll fix this and post v2.
--
John Greene
^ permalink raw reply
* Re: [PATCH] brcmsmac: Further reduce log spam from tx phy messages
From: Joe Perches @ 2013-07-15 12:23 UTC (permalink / raw)
To: John Greene; +Cc: linville, arend, linux-wireless
In-Reply-To: <51E3E7F0.7050308@redhat.com>
On Mon, 2013-07-15 at 08:15 -0400, John Greene wrote:
> On 07/12/2013 02:00 PM, Joe Perches wrote:
> > On Fri, 2013-07-12 at 10:55 -0400, John Greene wrote:
[]
> > Just trivia:
> >> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/ampdu.c b/drivers/net/wireless/brcm80211/brcmsmac/ampdu.c
> > []
> >> @@ -928,7 +928,7 @@ brcms_c_ampdu_dotxstatus_complete(struct ampdu_info *ampdu, struct scb *scb,
> > []
> >> - brcms_err(wlc->hw->d11core,
> >> + brcms_dbg_ht(wlc->hw->d11core,
> >> "%s: ampdu tx phy error (0x%x)\n",
> >> __func__, txs->phyerr);
> >
> > Please keep the indentation of the arguments of
> > the same statement aligned to the open parenthesis.
[]
> Thanks Joe. My oversight. I wish the checkpatch flagged this stuff.
It does if you use the --strict option.
^ permalink raw reply
* Re: pull request: bluetooth 2013-06-23
From: Pavel Machek @ 2013-07-15 12:28 UTC (permalink / raw)
To: Gustavo Padovan, Marcel Holtmann, linville, linux-wireless,
linux-bluetooth, linux-kernel, Rafael J. Wysocki
In-Reply-To: <20130626124736.GA3337@joana>
>On Wed 2013-06-26 13:47:36, Gustavo Padovan wrote:
> * Pavel Machek <pavel@ucw.cz> [2013-06-26 13:52:55 +0200]:
>
> > On Tue 2013-06-25 22:00:39, Gustavo Padovan wrote:
> > > Hi Marcel,
> > >
> > > * Marcel Holtmann <marcel@holtmann.org> [2013-06-25 13:49:19 -0700]:
> > >
> > > > Hi Pavel,
> > > >
> > > > >> Jaganath Kanakkassery (1):
> > > > >> Bluetooth: Fix invalid length check in l2cap_information_rsp()
> > > > >
> > > > > Could we add the "3.10 vs. thinkpad x60" patch that fixes regression?
> > > > > It is from Johan Hedberg…
> > > >
> > > > that one went into net-next tree. It is scheduled for 3.11 right now.
> > > >
> > > > After 3.10 is out, maybe it can go into -stable, but otherwise I think it is bit late now. Unless someone wants to cherry-pick it.
> > >
> > > That patch is actually in 3.10 already, it was included in the last pull
> > > request and John took it to wireless.git.
> >
> > Is it? I tried pulling yesterday (some updates) and today (no
> > changes), am on:
>
> Dave already pulled it so it should land in mainline anytime soon.
It seems to work in 3.10 and 3.11-rc1. Thanks!
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox