This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] WL1807MOD:DTS 中平台查询的含义=<1>

Guru**** 1930900 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1263838/wl1807mod-meaning-of-platform-quirks-1-in-dts

器件型号:WL1807MOD

大家好。 其目的是什么:

平台查询=<1>

...in dts 文件? 它是否与 wlcore.h 中的 WLCORE_quirk_定义相关?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Peter:

    您能指出您在哪里可以看到此选项吗? 您正在使用哪个内核版本?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Peter:

    我不确定自己。 我已经搜索了整个内核的"平台奇怪",我发现下面。 该属性已在较新的内核中被删除。  

    我没有使用"platform-quirks "属性,没有看到它在新的设备。 您可以忽略此警告。  

    它与 wlcore.h 中的 WLCORE_quirk_*宏命令无关。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、显然从4.1及以后的版本中删除了这一内容:

    commit 6f921fab5844941f7605b7f1a265f5fc7fe969a7
    Author: Luciano Coelho <luca@coelho.fi>
    Date:   Wed Mar 18 18:38:25 2015 +0200
    
        wlcore: set irq_trigger in board files instead of hiding behind a quirk
        
        The platform_quirk element in the platform data was used
        to change the way the IRQ is triggered.  When set,
        the EDGE_IRQ quirk would change the irqflags used
        and treat edge trigger differently from the rest.
        
        Instead of hiding this irq flag setting behind the quirk,
        have the board files set the irq_trigger explicitly.
        
        This will allow us to use standard irq DT definitions
        later on.
        
        Signed-off-by: Luciano Coelho <luca@coelho.fi>
        [Eliad - rebase, add irq_trigger field and pass it,
        update board file changes]
        Signed-off-by: Eliad Peller <eliad@wizery.com>
        Tested-by: Nikita Kiryanov <nikita@compulab.co.il>
        Acked-by: Kalle Valo <kvalo@codeaurora.org>
        Acked-by: Sekhar Nori <nsekhar@ti.com>
        Signed-off-by: Tony Lindgren <tony@atomide.com>
    
    diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
    index 6b5a97da9fe3..916589ca8d44 100644
    --- a/arch/arm/mach-davinci/board-da850-evm.c
    +++ b/arch/arm/mach-davinci/board-da850-evm.c
    @@ -1385,8 +1385,8 @@ static const short da850_wl12xx_pins[] __initconst = {
     
     static struct wl12xx_platform_data da850_wl12xx_wlan_data __initdata = {
            .irq                    = -1,
    +       .irq_trigger            = IRQ_TYPE_EDGE_RISING,
            .board_ref_clock        = WL12XX_REFCLOCK_38,
    -       .platform_quirks        = WL12XX_PLATFORM_QUIRK_EDGE_IRQ,
     };
    

    因此、我认为在 DTS 中使用"中断"关键字来指定 IRQ 标志就足够了。 我们目前正在使用以下工具:

    中断=<14 IRQ_TYPE_LEVEL_HIGH>;

    您知道边沿触发中断是否更适合 imx6? 以上所有这些链接都指定了 IMX6的平台奇怪-用于表示"平台不支持电平触发中断"-这表明...? 如何检查 IRQ 配置是否正常工作?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    具体而言、我不熟悉 IMX6平台、但 wlcore 驱动程序支持级别和边缘管理。 我的建议是、如果您有疑虑、可以使用 EDGE。  

    中断=<14 IRQ_TYPE_EDGE_RISING >;

    如果您能够在平台上启动驱动程序、则可以检查 IRQ 是否正常工作。 您还应该会在"ifconfig "中看到 wlan0接口。 如果它不工作、您可以共享 dmesg 日志。