Unverified Commit b81cf416 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!2620 coresight: etm4x: Migrate ACPI AMBA devices to platform drive

Merge Pull Request from: @ci-robot 
 
PR sync from: Junhao He <hejunhao3@huawei.com>
https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/NDURFIOYEZDZJJRMECJM53R2YVSDVE3R/ 
CoreSight ETM4x devices could be accessed either via MMIO (handled via
amba_driver) or CPU system instructions (handled via platform driver). But
this has the following issues :

  - Each new CPU comes up with its own PID and thus we need to keep on
    adding the "known" PIDs to get it working with AMBA driver. While
    the ETM4 architecture (and CoreSight architecture) defines way to
    identify a device as ETM4. Thus older kernels  won't be able to
    "discover" a newer CPU, unless we add the PIDs.

  - With ACPI, the ETM4x devices have the same HID to identify the device
    different drivers (both AMBA based driver and platform driver) would
    hook into the "HID" and could conflict. e.g., if AMBA driver gets
    hold of a non-MMIO device, the probe fails. If we have single driver
    hooked into the given "HID", we could handle them seamlessly,

  - CoreSight is heavily dependent on the runtime power management. With
    ACPI, amba_driver doesn't get us anywhere with handling the power
    and thus one need to always turn the power ON to use them. Moving to
    platform driver gives us the power management for free.

Due to all of the above, we are moving ACPI MMIO based etm4x devices to be
supported via tha platform driver. The series makes the existing platform
AMBA driver would still continue to support DT based etm4x MMIO devices.
Although some problems still remain, such as manually adding PIDs for all
new AMBA DT based devices.


Anshuman Khandual (5):
  coresight: etm4x: Allocate and device assign 'struct etmv4_drvdata'
    earlier
  coresight: etm4x: Drop iomem 'base' argument from etm4_probe()
  coresight: etm4x: Drop pid argument from etm4_probe()
  coresight: etm4x: Change etm4_platform_driver driver for MMIO devices
  coresight: etm4x: Ensure valid drvdata and clock before clk_put()

Junhao He (1):
  Revert "coresight: ete: Add acpi match id for Hip09"

Suzuki K Poulose (2):
  coresight: platform: acpi: Ignore the absence of graph
  coresight: etm4x: Add ACPI support in platform driver


-- 
2.33.0
 
https://gitee.com/openeuler/kernel/issues/I89TNS 
 
Link:https://gitee.com/openeuler/kernel/pulls/2620

 

Signed-off-by: default avatarJialin Zhang <zhangjialin11@huawei.com>
parents 37a2ee54 2e480726
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment