Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1335922

Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536

From Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com>
Newsgroups linux.kernel
Subject Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536
Date 2016-02-17 00:30 +0100
Message-ID <r2Xea-6hl-9@gated-at.bofh.it> (permalink)
References (4 earlier) <r2P6V-Gk-1@gated-at.bofh.it> <r2TDA-3Mh-11@gated-at.bofh.it> <r2TDA-3Mh-9@gated-at.bofh.it> <r2TWW-3TM-1@gated-at.bofh.it> <r2Vcm-4Wo-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



On 02/16/2016 01:14 PM, Robert Richter wrote:
> On 16.02.16 11:50:44, Tirumalesh Chalamarla wrote:
>>
>>
>> On 02/16/2016 11:38 AM, David Daney wrote:
>>> On 02/16/2016 11:14 AM, Tirumalesh Chalamarla wrote:
>>>>
>>>>
>>>> On 02/16/2016 06:42 AM, Robert Richter wrote:
>>>>> On 15.02.16 13:30:41, Tejun Heo wrote:
>>>>>> On Sun, Feb 14, 2016 at 07:36:18PM -0800, Tirumalesh Chalamarla wrote:
>>>>>>> There is no need for special Driver, AHCI is sufficient for
>>>>>>> ThunderX, the
>>>>>>> file only contains this interrupt handler,
>>>>>>> is it preferable if this interrupt handler in libahci.c with others,
>>>>>>> instead
>>>>>>> of separate file?
>>>>>>
>>>>>> Yeap, just fold it in ahci.c with surrounding #ifdef guard.
>>>>>
>>>>> Yes, please use #ifdef CONFIG_CAVIUM_ERRATUM_22536 ... and add a
>>>>> kconfig entry for this to arch/arm64/Kconfig.
>>>>>
>>>> Are you sure, this is not a workaround that is based on alternative
>>>> framework rather on pci device and vendor
>>>>
>>>> do you think CONFIG_ARCH_THUNDER a good alternative?
>>>
>>> No.  CONFIG_ARCH_THUNDER should be removed all together.
>>>
>>> Grouping a bunch of unrelated features under a single config variable
>>> creates a very brittle system.  What are you going to do when a new
>>> hardware revision is released?  Create CONFIG_ARCH_THUNDER2?  Which one
>>> of these two would you select if building a kernel?  It is a choice that
>>> we don't want to force users (kernel builders) to have to waste mental
>>> energy on.
>>>
>>> Instead, let's try to make things work out of the box without having to
>>> set a bunch of random config variables.
>>>
>>> If a generic arm64 kernel won't get too bloated, I would suggest just
>>> enabling the compilation of the code unconditionally (at least for
>>> arm64).  The use of the code would still be gated by the PCI version
>>> probe that is part of the patch.
>>>
>>
>> exactly, that is my initial choice with v1, and only depends on vendor and
>> device id.
>>
>> but it seems a config is needed. how about ARCH_ARM64 then?
>
> CONFIG_CAVIUM_ERRATUM_22536 is exactly that you need. It is not only
> used for core interrupts, e.g. also for gicv3 devices (and now also
> for ahci). Non-core errata (e.g. CONFIG_CAVIUM_ERRATUM_23144) are not
> enabled in the arm64 cpu errata framework (not handled in
> arch/arm64/kernel/cpu_errata.c).
>
> Thus,
>
> #ifdef CONFIG_CAVIUM_ERRATUM_22536
> 	if (pdev->vendor == 0x177d && pdev->device == 0xa01c)
> 		ahci_thunderx_init(&pdev->dev, hpriv);
> #endif
>
> is the correct enablement of the workaround by device id.
>
> And, CAVIUM_ERRATUM_* is very easy to handle, enable and document.
>
The code will only run for Thunder and AHCI, becuase its PCI.

> -Robert
>

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH V2] AHCI: Workaround for ThunderX Errata#22536 <tchalamarla@caviumnetworks.com> - 2016-02-13 00:30 +0100
  Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-02-13 18:00 +0100
  Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tejun Heo <tj@kernel.org> - 2016-02-14 18:10 +0100
    Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com> - 2016-02-15 05:00 +0100
      Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tejun Heo <tj@kernel.org> - 2016-02-15 19:40 +0100
        Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Robert Richter <rric@kernel.org> - 2016-02-16 15:50 +0100
          Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 David Daney <ddaney@caviumnetworks.com> - 2016-02-16 20:40 +0100
            Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com> - 2016-02-16 21:00 +0100
              Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Robert Richter <rric@kernel.org> - 2016-02-16 22:20 +0100
                Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com> - 2016-02-17 00:30 +0100
                Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Will Deacon <will.deacon@arm.com> - 2016-02-17 12:30 +0100
                Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 David Daney <ddaney@caviumnetworks.com> - 2016-02-17 20:00 +0100
                Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tejun Heo <tj@kernel.org> - 2016-02-17 21:10 +0100
                Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com> - 2016-02-17 22:50 +0100
          Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Tirumalesh Chalamarla <tchalamarla@caviumnetworks.com> - 2016-02-16 20:40 +0100

csiph-web