1. 09 6月, 2023 1 次提交
  2. 06 3月, 2023 1 次提交
  3. 27 2月, 2023 3 次提交
  4. 22 11月, 2022 4 次提交
  5. 14 1月, 2022 1 次提交
  6. 18 11月, 2021 1 次提交
    • J
      topology: Represent clusters of CPUs within a die · c84cd40a
      Jonathan Cameron 提交于
      mainline inclusion
      from tip/sched/core for v5.15-release
      commit: c5e22fef
      category: feature
      bugzilla: https://gitee.com/openeuler/kernel/issues/I4GEZS
      CVE: NA
      Reference: https://lore.kernel.org/lkml/20210924085104.44806-1-21cnbao@gmail.com/
      
      ------------------------------------------------------------------------
      
      Both ACPI and DT provide the ability to describe additional layers of
      topology between that of individual cores and higher level constructs
      such as the level at which the last level cache is shared.
      In ACPI this can be represented in PPTT as a Processor Hierarchy
      Node Structure [1] that is the parent of the CPU cores and in turn
      has a parent Processor Hierarchy Nodes Structure representing
      a higher level of topology.
      
      For example Kunpeng 920 has 6 or 8 clusters in each NUMA node, and each
      cluster has 4 cpus. All clusters share L3 cache data, but each cluster
      has local L3 tag. On the other hand, each clusters will share some
      internal system bus.
      
      +-----------------------------------+                          +---------+
      |  +------+    +------+             +--------------------------+         |
      |  | CPU0 |    | cpu1 |             |    +-----------+         |         |
      |  +------+    +------+             |    |           |         |         |
      |                                   +----+    L3     |         |         |
      |  +------+    +------+   cluster   |    |    tag    |         |         |
      |  | CPU2 |    | CPU3 |             |    |           |         |         |
      |  +------+    +------+             |    +-----------+         |         |
      |                                   |                          |         |
      +-----------------------------------+                          |         |
      +-----------------------------------+                          |         |
      |  +------+    +------+             +--------------------------+         |
      |  |      |    |      |             |    +-----------+         |         |
      |  +------+    +------+             |    |           |         |         |
      |                                   |    |    L3     |         |         |
      |  +------+    +------+             +----+    tag    |         |         |
      |  |      |    |      |             |    |           |         |         |
      |  +------+    +------+             |    +-----------+         |         |
      |                                   |                          |         |
      +-----------------------------------+                          |   L3    |
                                                                     |   data  |
      +-----------------------------------+                          |         |
      |  +------+    +------+             |    +-----------+         |         |
      |  |      |    |      |             |    |           |         |         |
      |  +------+    +------+             +----+    L3     |         |         |
      |                                   |    |    tag    |         |         |
      |  +------+    +------+             |    |           |         |         |
      |  |      |    |      |             |    +-----------+         |         |
      |  +------+    +------+             +--------------------------+         |
      +-----------------------------------|                          |         |
      +-----------------------------------|                          |         |
      |  +------+    +------+             +--------------------------+         |
      |  |      |    |      |             |    +-----------+         |         |
      |  +------+    +------+             |    |           |         |         |
      |                                   +----+    L3     |         |         |
      |  +------+    +------+             |    |    tag    |         |         |
      |  |      |    |      |             |    |           |         |         |
      |  +------+    +------+             |    +-----------+         |         |
      |                                   |                          |         |
      +-----------------------------------+                          |         |
      +-----------------------------------+                          |         |
      |  +------+    +------+             +--------------------------+         |
      |  |      |    |      |             |   +-----------+          |         |
      |  +------+    +------+             |   |           |          |         |
      |                                   |   |    L3     |          |         |
      |  +------+    +------+             +---+    tag    |          |         |
      |  |      |    |      |             |   |           |          |         |
      |  +------+    +------+             |   +-----------+          |         |
      |                                   |                          |         |
      +-----------------------------------+                          |         |
      +-----------------------------------+                          |         |
      |  +------+    +------+             +--------------------------+         |
      |  |      |    |      |             |  +-----------+           |         |
      |  +------+    +------+             |  |           |           |         |
      |                                   |  |    L3     |           |         |
      |  +------+    +------+             +--+    tag    |           |         |
      |  |      |    |      |             |  |           |           |         |
      |  +------+    +------+             |  +-----------+           |         |
      |                                   |                          +---------+
      +-----------------------------------+
      
      That means spreading tasks among clusters will bring more bandwidth
      while packing tasks within one cluster will lead to smaller cache
      synchronization latency. So both kernel and userspace will have
      a chance to leverage this topology to deploy tasks accordingly to
      achieve either smaller cache latency within one cluster or an even
      distribution of load among clusters for higher throughput.
      
      This patch exposes cluster topology to both kernel and userspace.
      Libraried like hwloc will know cluster by cluster_cpus and related
      sysfs attributes. PoC of HWLOC support at [2].
      
      Note this patch only handle the ACPI case.
      
      Special consideration is needed for SMT processors, where it is
      necessary to move 2 levels up the hierarchy from the leaf nodes
      (thus skipping the processor core level).
      
      Note that arm64 / ACPI does not provide any means of identifying
      a die level in the topology but that may be unrelate to the cluster
      level.
      
      [1] ACPI Specification 6.3 - section 5.2.29.1 processor hierarchy node
          structure (Type 0)
      [2] https://github.com/hisilicon/hwloc/tree/linux-clusterSigned-off-by: NJonathan Cameron <Jonathan.Cameron@huawei.com>
      Signed-off-by: NTian Tao <tiantao6@hisilicon.com>
      Signed-off-by: NBarry Song <song.bao.hua@hisilicon.com>
      Signed-off-by: NPeter Zijlstra (Intel) <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20210924085104.44806-2-21cnbao@gmail.comSigned-off-by: NYicong Yang <yangyicong@hisilicon.com>
      Reviewed-by: Ntao zeng <prime.zeng@hisilicon.com>
      Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
      c84cd40a
  7. 15 10月, 2021 1 次提交
    • X
      ACPI / PPTT: get PPTT table in the first beginning · d3aa4401
      Xiongfeng Wang 提交于
      Offering: HULK
      hulk inclusion
      category: bugfix
      bugzilla: 174524 https://gitee.com/openeuler/kernel/issues/I4DDEL
      
      -------------------------------------------------
      
      When I added might_sleep() in down_timeout(), I got the following
      Calltrace:
      
      [    8.775671] BUG: sleeping function called from invalid context at kernel/locking/semaphore.c:160
      [    8.777070] in_atomic(): 1, irqs_disabled(): 128, non_block: 0, pid: 14, name: cpuhp/0
      [    8.778474] CPU: 0 PID: 14 Comm: cpuhp/0 Not tainted 5.10.0-06616-g1fcfee258bd9-dirty #416
      [    8.782067] Hardware name: QEMU QEMU Virtual Machine, BIOS 0.0.0 02/06/2015
      [    8.783452] Call trace:
      [    8.783878]  dump_backtrace+0x0/0x1c0
      [    8.784512]  show_stack+0x18/0x68
      [    8.784976]  dump_stack+0xd8/0x134
      [    8.785428]  ___might_sleep+0x108/0x170
      [    8.785928]  __might_sleep+0x54/0x90
      [    8.786425]  down_timeout+0x30/0x88
      [    8.786918]  acpi_os_wait_semaphore+0x70/0xb8
      [    8.787483]  acpi_ut_acquire_mutex+0x4c/0xb8
      [    8.788016]  acpi_get_table+0x38/0xc4
      [    8.788521]  acpi_find_last_cache_level+0x94/0x178
      [    8.789088]  _init_cache_level+0xd0/0xe0
      [    8.789563]  generic_exec_single+0xa0/0x100
      [    8.790122]  smp_call_function_single+0x160/0x1e0
      [    8.790714]  init_cache_level+0x38/0x60
      [    8.791247]  cacheinfo_cpu_online+0x30/0x898
      [    8.791880]  cpuhp_invoke_callback+0x88/0x258
      [    8.792707]  cpuhp_thread_fun+0xd8/0x170
      [    8.793231]  smpboot_thread_fn+0x194/0x290
      [    8.793838]  kthread+0x15c/0x160
      [    8.794273]  ret_from_fork+0x10/0x34
      
      It is because generic_exec_single() will disable local irq before
      calling _init_cache_level(). _init_cache_level() use acpi_get_table() to
      get the PPTT table, but this function could schedule out.
      
      To fix this issue, we use a static pointer to record the mapped PPTT
      table in the first beginning. Later, we use that pointer to reference
      the PPTT table in acpi_find_last_cache_level(). We also modify other
      functions in pptt.c to use the pointer to reference PPTT table.
      Signed-off-by: NXiongfeng Wang <wangxiongfeng2@huawei.com>
      Reviewed-by: NHanjun Guo <guohanjun@huawei.com>
      Signed-off-by: NChen Jun <chenjun102@huawei.com>
      Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
      d3aa4401
  8. 22 4月, 2021 1 次提交
  9. 09 4月, 2021 3 次提交
  10. 28 1月, 2021 1 次提交
  11. 26 10月, 2020 1 次提交
  12. 14 10月, 2020 1 次提交
    • D
      x86/numa: add 'nohmat' option · 3b0d3101
      Dan Williams 提交于
      Disable parsing of the HMAT for debug, to workaround broken platform
      instances, or cases where it is otherwise not wanted.
      
      [rdunlap@infradead.org: fix build when CONFIG_ACPI is not set]
        Link: https://lkml.kernel.org/r/70e5ee34-9809-a997-7b49-499e4be61307@infradead.orgSigned-off-by: NDan Williams <dan.j.williams@intel.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
      Cc: Ard Biesheuvel <ardb@kernel.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Brice Goglin <Brice.Goglin@inria.fr>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Dave Jiang <dave.jiang@intel.com>
      Cc: David Airlie <airlied@linux.ie>
      Cc: David Hildenbrand <david@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Ira Weiny <ira.weiny@intel.com>
      Cc: Jason Gunthorpe <jgg@mellanox.com>
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Cc: Jia He <justin.he@arm.com>
      Cc: Joao Martins <joao.m.martins@oracle.com>
      Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Mike Rapoport <rppt@linux.ibm.com>
      Cc: Paul Mackerras <paulus@ozlabs.org>
      Cc: Pavel Tatashin <pasha.tatashin@soleen.com>
      Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
      Cc: Tom Lendacky <thomas.lendacky@amd.com>
      Cc: Vishal Verma <vishal.l.verma@intel.com>
      Cc: Wei Yang <richard.weiyang@linux.alibaba.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
      Cc: Hulk Robot <hulkci@huawei.com>
      Cc: Jason Yan <yanaijie@huawei.com>
      Cc: "Jérôme Glisse" <jglisse@redhat.com>
      Cc: Juergen Gross <jgross@suse.com>
      Cc: kernel test robot <lkp@intel.com>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: Stefano Stabellini <sstabellini@kernel.org>
      Cc: Vivek Goyal <vgoyal@redhat.com>
      Link: https://lkml.kernel.org/r/159643095540.4062302.732962081968036212.stgit@dwillia2-desk3.amr.corp.intel.comSigned-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3b0d3101
  13. 03 10月, 2020 2 次提交
  14. 01 10月, 2020 1 次提交
  15. 25 9月, 2020 1 次提交
  16. 24 9月, 2020 2 次提交
  17. 28 7月, 2020 1 次提交
    • L
      ACPI/IORT: Add an input ID to acpi_dma_configure() · b8e069a2
      Lorenzo Pieralisi 提交于
      Some HW devices are created as child devices of proprietary busses,
      that have a bus specific policy defining how the child devices
      wires representing the devices ID are translated into IOMMU and
      IRQ controllers device IDs.
      
      Current IORT code provides translations for:
      
      - PCI devices, where the device ID is well identified at bus level
        as the requester ID (RID)
      - Platform devices that are endpoint devices where the device ID is
        retrieved from the ACPI object IORT mappings (Named components single
        mappings). A platform device is represented in IORT as a named
        component node
      
      For devices that are child devices of proprietary busses the IORT
      firmware represents the bus node as a named component node in IORT
      and it is up to that named component node to define in/out bus
      specific ID translations for the bus child devices that are
      allocated and created in a bus specific manner.
      
      In order to make IORT ID translations available for proprietary
      bus child devices, the current ACPI (and IORT) code must be
      augmented to provide an additional ID parameter to acpi_dma_configure()
      representing the child devices input ID. This ID is bus specific
      and it is retrieved in bus specific code.
      
      By adding an ID parameter to acpi_dma_configure(), the IORT
      code can map the child device ID to an IOMMU stream ID through
      the IORT named component representing the bus in/out ID mappings.
      Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Hanjun Guo <guohanjun@huawei.com>
      Cc: Sudeep Holla <sudeep.holla@arm.com>
      Cc: Robin Murphy <robin.murphy@arm.com>
      Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
      Link: https://lore.kernel.org/r/20200619082013.13661-6-lorenzo.pieralisi@arm.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      b8e069a2
  18. 27 6月, 2020 2 次提交
  19. 05 4月, 2020 1 次提交
    • H
      ACPI: PM: Add acpi_[un]register_wakeup_handler() · ddfd9dcf
      Hans de Goede 提交于
      Since commit fdde0ff8 ("ACPI: PM: s2idle: Prevent spurious SCIs from
      waking up the system") the SCI triggering without there being a wakeup
      cause recognized by the ACPI sleep code will no longer wakeup the system.
      
      This works as intended, but this is a problem for devices where the SCI
      is shared with another device which is also a wakeup source.
      
      In the past these, from the pov of the ACPI sleep code, spurious SCIs
      would still cause a wakeup so the wakeup from the device sharing the
      interrupt would actually wakeup the system. This now no longer works.
      
      This is a problem on e.g. Bay Trail-T and Cherry Trail devices where
      some peripherals (typically the XHCI controller) can signal a
      Power Management Event (PME) to the Power Management Controller (PMC)
      to wakeup the system, this uses the same interrupt as the SCI.
      These wakeups are handled through a special INT0002 ACPI device which
      checks for events in the GPE0a_STS for this and takes care of acking
      the PME so that the shared interrupt stops triggering.
      
      The change to the ACPI sleep code to ignore the spurious SCI, causes
      the system to no longer wakeup on these PME events. To make things
      worse this means that the INT0002 device driver interrupt handler will
      no longer run, causing the PME to not get cleared and resulting in the
      system hanging. Trying to wakeup the system after such a PME through e.g.
      the power button no longer works.
      
      Add an acpi_register_wakeup_handler() function which registers
      a handler to be called from acpi_s2idle_wake() and when the handler
      returns true, return true from acpi_s2idle_wake().
      
      The INT0002 driver will use this mechanism to check the GPE0a_STS
      register from acpi_s2idle_wake() and to tell the system to wakeup
      if a PME is signaled in the register.
      
      Fixes: fdde0ff8 ("ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system")
      Cc: 5.4+ <stable@vger.kernel.org> # 5.4+
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      ddfd9dcf
  20. 29 3月, 2020 1 次提交
    • K
      PCI/DPC: Add Error Disconnect Recover (EDR) support · ac1c8e35
      Kuppuswamy Sathyanarayanan 提交于
      Error Disconnect Recover (EDR) is a feature that allows ACPI firmware to
      notify OSPM that a device has been disconnected due to an error condition
      (ACPI v6.3, sec 5.6.6).  OSPM advertises its support for EDR on PCI devices
      via _OSC (see [1], sec 4.5.1, table 4-4).  The OSPM EDR notify handler
      should invalidate software state associated with disconnected devices and
      may attempt to recover them.  OSPM communicates the status of recovery to
      the firmware via _OST (sec 6.3.5.2).
      
      For PCIe, firmware may use Downstream Port Containment (DPC) to support
      EDR.  Per [1], sec 4.5.1, table 4-6, even if firmware has retained control
      of DPC, OSPM may read/write DPC control and status registers during the EDR
      notification processing window, i.e., from the time it receives an EDR
      notification until it clears the DPC Trigger Status.
      
      Note that per [1], sec 4.5.1 and 4.5.2.4,
      
        1. If the OS supports EDR, it should advertise that to firmware by
           setting OSC_PCI_EDR_SUPPORT in _OSC Support.
      
        2. If the OS sets OSC_PCI_EXPRESS_DPC_CONTROL in _OSC Control to request
           control of the DPC capability, it must also set OSC_PCI_EDR_SUPPORT in
           _OSC Support.
      
      Add an EDR notify handler to attempt recovery.
      
      [1] Downstream Port Containment Related Enhancements ECN, Jan 28, 2019,
          affecting PCI Firmware Specification, Rev. 3.2
          https://members.pcisig.com/wg/PCI-SIG/document/12888
      
      [bhelgaas: squash add/enable patches into one]
      Link: https://lore.kernel.org/r/90f91fe6d25c13f9d2255d2ce97ca15be307e1bb.1585000084.git.sathyanarayanan.kuppuswamy@linux.intel.comSigned-off-by: NKuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
      Cc: Len Brown <lenb@kernel.org>
      ac1c8e35
  21. 18 2月, 2020 1 次提交
  22. 27 12月, 2019 1 次提交
  23. 16 12月, 2019 1 次提交
    • R
      ACPI: processor: Export function to claim _CST control · bc946388
      Rafael J. Wysocki 提交于
      The intel_idle driver will be modified to use ACPI _CST subsequently
      and it will need to notify the platform firmware of that if
      acpi_gbl_FADT.cst_control is set, so add a routine for this purpose,
      acpi_processor_claim_cst_control(), to acpi_processor.c (so that it
      is always present which is required by intel_idle) and export it
      to allow the ACPI processor driver (which is modular) to call it.
      
      No intentional functional impact.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      bc946388
  24. 15 10月, 2019 1 次提交
  25. 20 8月, 2019 1 次提交
    • J
      acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down · 41fa1ee9
      Josh Boyer 提交于
      This option allows userspace to pass the RSDP address to the kernel, which
      makes it possible for a user to modify the workings of hardware. Reject
      the option when the kernel is locked down. This requires some reworking
      of the existing RSDP command line logic, since the early boot code also
      makes use of a command-line passed RSDP when locating the SRAT table
      before the lockdown code has been initialised. This is achieved by
      separating the command line RSDP path in the early boot code from the
      generic RSDP path, and then copying the command line RSDP into boot
      params in the kernel proper if lockdown is not enabled. If lockdown is
      enabled and an RSDP is provided on the command line, this will only be
      used when parsing SRAT (which shouldn't permit kernel code execution)
      and will be ignored in the rest of the kernel.
      
      (Modified by Matthew Garrett in order to handle the early boot RSDP
      environment)
      Signed-off-by: NJosh Boyer <jwboyer@redhat.com>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NMatthew Garrett <mjg59@google.com>
      Reviewed-by: NKees Cook <keescook@chromium.org>
      cc: Dave Young <dyoung@redhat.com>
      cc: linux-acpi@vger.kernel.org
      Signed-off-by: NJames Morris <jmorris@namei.org>
      41fa1ee9
  26. 12 8月, 2019 1 次提交
  27. 31 7月, 2019 1 次提交
  28. 30 7月, 2019 1 次提交
    • R
      ACPI: PM: Set up EC GPE for system wakeup from drivers that need it · 10a08fd6
      Rafael J. Wysocki 提交于
      The EC GPE needs to be set up for system wakeup only if there is a
      driver depending on it, either intel-hid or intel-vbtn, bound to a
      button device that is expected to wake up the system from sleep (such
      as the power button on some Dell systems, like the XPS13 9360).  It
      doesn't need to be set up for waking up the system from sleep in any
      other cases and whether or not it is expected to wake up the system
      from sleep doesn't depend on whether or not the LPS0 device is
      present in the ACPI namespace.
      
      For this reason, rearrange the ACPI suspend-to-idle code to make the
      drivers depending on the EC GPE wakeup take care of setting it up and
      decouple that from the LPS0 device handling.
      
      While at it, make intel-hid and intel-vbtn prepare for system wakeup
      only if they are allowed to wake up the system from sleep by user
      space (via sysfs).
      
      [Note that acpi_ec_mark_gpe_for_wake() and acpi_ec_set_gpe_wake_mask()
       are there to prevent the EC GPE from being disabled by the
       acpi_enable_all_wakeup_gpes() call in acpi_s2idle_prepare(), so on
       systems with either intel-hid or intel-vbtn this change doesn't
       affect any interactions with the hardware or platform firmware.]
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Reviewed-by: NAndy Shevchenko <andy.shevchenko@gmail.com>
      10a08fd6
  29. 15 7月, 2019 1 次提交
    • A
      ACPI: fix false-positive -Wuninitialized warning · dfd6f9ad
      Arnd Bergmann 提交于
      clang gets confused by an uninitialized variable in what looks
      to it like a never executed code path:
      
      arch/x86/kernel/acpi/boot.c:618:13: error: variable 'polarity' is uninitialized when used here [-Werror,-Wuninitialized]
              polarity = polarity ? ACPI_ACTIVE_LOW : ACPI_ACTIVE_HIGH;
                         ^~~~~~~~
      arch/x86/kernel/acpi/boot.c:606:32: note: initialize the variable 'polarity' to silence this warning
              int rc, irq, trigger, polarity;
                                            ^
                                             = 0
      arch/x86/kernel/acpi/boot.c:617:12: error: variable 'trigger' is uninitialized when used here [-Werror,-Wuninitialized]
              trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE;
                        ^~~~~~~
      arch/x86/kernel/acpi/boot.c:606:22: note: initialize the variable 'trigger' to silence this warning
              int rc, irq, trigger, polarity;
                                  ^
                                   = 0
      
      This is unfortunately a design decision in clang and won't be fixed.
      
      Changing the acpi_get_override_irq() macro to an inline function
      reliably avoids the issue.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Reviewed-by: NNathan Chancellor <natechancellor@gmail.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      dfd6f9ad
  30. 03 7月, 2019 1 次提交