Krzysztof Kozlowski <[email protected]> writes:
> Interrupt line can be configured on different hardware in different way,
> even inverted. Therefore driver should not enforce specific trigger
> type - edge rising - but instead rely on Devicetree to configure it.
>
> All Qualcomm DTSI with WCN3990 define the interrupt type as level high,
> so the mismatch between DTSI and driver causes rebind issues:
>
> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/unbind
> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/bind
> [ 44.763114] irq: type mismatch, failed to map hwirq-446 for interrupt-controller@17a00000!
> [ 44.763130] ath10k_snoc 18800000.wifi: error -ENXIO: IRQ index 0 not found
> [ 44.763140] ath10k_snoc 18800000.wifi: failed to initialize resource: -6
So you tested on WCN3990? On what firmware version? I can add the
Tested-on tag if you provide that.
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
On 5/13/22 10:57 AM, Kalle Valo wrote:
> Krzysztof Kozlowski <[email protected]> writes:
>
>> Interrupt line can be configured on different hardware in different way,
>> even inverted. Therefore driver should not enforce specific trigger
>> type - edge rising - but instead rely on Devicetree to configure it.
>>
>> All Qualcomm DTSI with WCN3990 define the interrupt type as level high,
>> so the mismatch between DTSI and driver causes rebind issues:
>>
>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/unbind
>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/bind
>> [ 44.763114] irq: type mismatch, failed to map hwirq-446 for interrupt-controller@17a00000!
>> [ 44.763130] ath10k_snoc 18800000.wifi: error -ENXIO: IRQ index 0 not found
>> [ 44.763140] ath10k_snoc 18800000.wifi: failed to initialize resource: -6
> So you tested on WCN3990? On what firmware version? I can add the
> Tested-on tag if you provide that.
>
Hello Krzystof, Kalle,
I have seen this issue as well on a Lenovo Flex 5G, which has a WCN3990:
wcn3990 hw1.0 target 0x00000008 chip_id 0x00000000 sub 0000:0000
kconfig debug 0 debugfs 0 tracing 0 dfs 0 testmode 0
firmware ver api 5 features wowlan,mgmt-tx-by-reference,non-bmi crc32
b3d4b790
htt-ver 3.86 wmi-op 4 htt-op 3 cal file max-sta 32 raw 0 hwcrypto 1
With this patch applied, I no longer see the error message in the commit
message, when I unbind/bind when wifi stops working.
Tested-by: Steev Klimaszewski <[email protected]>
-- Steev
On 5/14/22 12:05 AM, Steev Klimaszewski wrote:
>
> On 5/13/22 10:57 AM, Kalle Valo wrote:
>> Krzysztof Kozlowski <[email protected]> writes:
>>
>>> Interrupt line can be configured on different hardware in different
>>> way,
>>> even inverted. Therefore driver should not enforce specific trigger
>>> type - edge rising - but instead rely on Devicetree to configure it.
>>>
>>> All Qualcomm DTSI with WCN3990 define the interrupt type as level high,
>>> so the mismatch between DTSI and driver causes rebind issues:
>>>
>>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/unbind
>>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/bind
>>> [ 44.763114] irq: type mismatch, failed to map hwirq-446 for
>>> interrupt-controller@17a00000!
>>> [ 44.763130] ath10k_snoc 18800000.wifi: error -ENXIO: IRQ index
>>> 0 not found
>>> [ 44.763140] ath10k_snoc 18800000.wifi: failed to initialize
>>> resource: -6
>> So you tested on WCN3990? On what firmware version? I can add the
>> Tested-on tag if you provide that.
>>
> Hello Krzystof, Kalle,
>
> I have seen this issue as well on a Lenovo Flex 5G, which has a WCN3990:
>
> wcn3990 hw1.0 target 0x00000008 chip_id 0x00000000 sub 0000:0000
> kconfig debug 0 debugfs 0 tracing 0 dfs 0 testmode 0
> firmware ver api 5 features wowlan,mgmt-tx-by-reference,non-bmi crc32
> b3d4b790
> htt-ver 3.86 wmi-op 4 htt-op 3 cal file max-sta 32 raw 0 hwcrypto 1
>
> With this patch applied, I no longer see the error message in the
> commit message, when I unbind/bind when wifi stops working.
>
> Tested-by: Steev Klimaszewski <[email protected]>
>
> -- Steev
>
Apologies for the second email - I've tested this now on both the Lenovo
Flex 5G, as I have seen the issue on it as well, as well as on the
Lenovo Yoga C630, where I did not but I did have issues with attempting
to rebind the device, prior to this patch.
Firmware version for the Flex 5G is
qmi chip_id 0x30224 chip_family 0x4001 board_id 0xff soc_id 0x40060000
qmi fw_version 0x32080009 fw_build_timestamp 2020-11-16 14:44
fw_build_id
QC_IMAGE_VERSION_STRING=WLAN.HL.3.2.0.c8-00009-QCAHLSWSC8180XMTPLZ-1
Firmware version on the Yoga C630 is
qmi chip_id 0x30214 chip_family 0x4001 board_id 0xff soc_id 0x40030001
qmi fw_version 0x2009856b fw_build_timestamp 2018-07-19 12:28
fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HL.2.0-01387-QCAHLSWMTPLZ-1
On 14/05/2022 20:09, Steev Klimaszewski wrote:
>> wcn3990 hw1.0 target 0x00000008 chip_id 0x00000000 sub 0000:0000
>> kconfig debug 0 debugfs 0 tracing 0 dfs 0 testmode 0
>> firmware ver api 5 features wowlan,mgmt-tx-by-reference,non-bmi crc32
>> b3d4b790
>> htt-ver 3.86 wmi-op 4 htt-op 3 cal file max-sta 32 raw 0 hwcrypto 1
>>
>> With this patch applied, I no longer see the error message in the
>> commit message, when I unbind/bind when wifi stops working.
>>
>> Tested-by: Steev Klimaszewski <[email protected]>
>>
>> -- Steev
>>
> Apologies for the second email - I've tested this now on both the Lenovo
> Flex 5G, as I have seen the issue on it as well, as well as on the
> Lenovo Yoga C630, where I did not but I did have issues with attempting
> to rebind the device, prior to this patch.
>
> Firmware version for the Flex 5G is
>
> qmi chip_id 0x30224 chip_family 0x4001 board_id 0xff soc_id 0x40060000
> qmi fw_version 0x32080009 fw_build_timestamp 2020-11-16 14:44
> fw_build_id
> QC_IMAGE_VERSION_STRING=WLAN.HL.3.2.0.c8-00009-QCAHLSWSC8180XMTPLZ-1
>
> Firmware version on the Yoga C630 is
>
> qmi chip_id 0x30214 chip_family 0x4001 board_id 0xff soc_id 0x40030001
> qmi fw_version 0x2009856b fw_build_timestamp 2018-07-19 12:28
> fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HL.2.0-01387-QCAHLSWMTPLZ-1
>
Thanks for testing, much appreciated!
Best regards,
Krzysztof
On 13/05/2022 17:57, Kalle Valo wrote:
> Krzysztof Kozlowski <[email protected]> writes:
>
>> Interrupt line can be configured on different hardware in different way,
>> even inverted. Therefore driver should not enforce specific trigger
>> type - edge rising - but instead rely on Devicetree to configure it.
>>
>> All Qualcomm DTSI with WCN3990 define the interrupt type as level high,
>> so the mismatch between DTSI and driver causes rebind issues:
>>
>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/unbind
>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/bind
>> [ 44.763114] irq: type mismatch, failed to map hwirq-446 for interrupt-controller@17a00000!
>> [ 44.763130] ath10k_snoc 18800000.wifi: error -ENXIO: IRQ index 0 not found
>> [ 44.763140] ath10k_snoc 18800000.wifi: failed to initialize resource: -6
>
> So you tested on WCN3990? On what firmware version?
I run it on a Qualcomm RB3 board with Qualcomm SDM845 and WCN3990.
However on that kernel I did not manage to WiFi actually work -
regardless of that patch - so I would no count it yet as fully tested.
It would be great if someone would provide some tests. I saw Steev's
replies - thanks!
Best regards,
Krzysztof
Steev Klimaszewski <[email protected]> writes:
> On 5/14/22 12:05 AM, Steev Klimaszewski wrote:
>>
>> On 5/13/22 10:57 AM, Kalle Valo wrote:
>>> Krzysztof Kozlowski <[email protected]> writes:
>>>
>>>> Interrupt line can be configured on different hardware in
>>>> different way,
>>>> even inverted. Therefore driver should not enforce specific trigger
>>>> type - edge rising - but instead rely on Devicetree to configure it.
>>>>
>>>> All Qualcomm DTSI with WCN3990 define the interrupt type as level high,
>>>> so the mismatch between DTSI and driver causes rebind issues:
>>>>
>>>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/unbind
>>>> $ echo 18800000.wifi > /sys/bus/platform/drivers/ath10k_snoc/bind
>>>> [ 44.763114] irq: type mismatch, failed to map hwirq-446 for
>>>> interrupt-controller@17a00000!
>>>> [ 44.763130] ath10k_snoc 18800000.wifi: error -ENXIO: IRQ
>>>> index 0 not found
>>>> [ 44.763140] ath10k_snoc 18800000.wifi: failed to initialize
>>>> resource: -6
>>> So you tested on WCN3990? On what firmware version? I can add the
>>> Tested-on tag if you provide that.
>>>
>> Hello Krzystof, Kalle,
>>
>> I have seen this issue as well on a Lenovo Flex 5G, which has a WCN3990:
>>
>> wcn3990 hw1.0 target 0x00000008 chip_id 0x00000000 sub 0000:0000
>> kconfig debug 0 debugfs 0 tracing 0 dfs 0 testmode 0
>> firmware ver api 5 features wowlan,mgmt-tx-by-reference,non-bmi
>> crc32 b3d4b790
>> htt-ver 3.86 wmi-op 4 htt-op 3 cal file max-sta 32 raw 0 hwcrypto 1
>>
>> With this patch applied, I no longer see the error message in the
>> commit message, when I unbind/bind when wifi stops working.
>>
>> Tested-by: Steev Klimaszewski <[email protected]>
>>
>> -- Steev
>>
> Apologies for the second email - I've tested this now on both the
> Lenovo Flex 5G, as I have seen the issue on it as well, as well as on
> the Lenovo Yoga C630, where I did not but I did have issues with
> attempting to rebind the device, prior to this patch.
>
> Firmware version for the Flex 5G is
>
> qmi chip_id 0x30224 chip_family 0x4001 board_id 0xff soc_id 0x40060000
> qmi fw_version 0x32080009 fw_build_timestamp 2020-11-16 14:44
> fw_build_id
> QC_IMAGE_VERSION_STRING=WLAN.HL.3.2.0.c8-00009-QCAHLSWSC8180XMTPLZ-1
>
> Firmware version on the Yoga C630 is
>
> qmi chip_id 0x30214 chip_family 0x4001 board_id 0xff soc_id 0x40030001
> qmi fw_version 0x2009856b fw_build_timestamp 2018-07-19 12:28
> fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HL.2.0-01387-QCAHLSWMTPLZ-1
In the pending branch I added these to the commit log:
Tested-on: WCN3990 hw1.0 SNOC WLAN.HL.3.2.0.c8-00009-QCAHLSWSC8180XMTPLZ-1
Tested-on: WCN3990 hw1.0 SNOC WLAN.HL.2.0-01387-QCAHLSWMTPLZ-1
Thanks for testing, very much appreciated!
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches