[RFC][TRUSTY] X-Gene platform support

Ming Lei ming.lei at canonical.com
Fri Mar 14 02:02:15 UTC 2014


On Fri, Mar 14, 2014 at 6:17 AM, Tim Gardner <tim.gardner at canonical.com> wrote:
> On 03/13/2014 02:13 PM, Tim Gardner wrote:
>>
>> On 03/13/2014 10:07 AM, Ming Lei wrote:
>>>
>>> Hi Tim,
>>>
>>> On Thu, Mar 13, 2014 at 10:22 PM, Tim Gardner
>>> <tim.gardner at canonical.com> wrote:
>>>>
>>>> On 03/11/2014 12:15 PM, Dann Frazier wrote:
>>>>>
>>>>>
>>>>> Hi,
>>>>>    I've assembled a git tree with support for the X-Gene platform:
>>>>>
>>>>> git://kernel.ubuntu.com/dannf/trusty-xgene.git for-ubuntu-20140310
>>>>>
>>>>> The PCI changes in the above are fairly significant and still under
>>>>> upstream review. I've therefore provided a separate branch with these
>>>>> changes backed out and replaced with an earlier version of the host
>>>>> controller driver, with fewer dependencies:
>>>>>
>>>>> git://kernel.ubuntu.com/dannf/trusty-xgene.git
>>>>> for-ubuntu-20140310-oldpci
>>>>>
>>>>
>>>> Ugh! Even with the PCI reverts there are some questionable patches
>>>> wrt to
>>>> maintenance and stability.
>>>>
>>>> I could _probably_ accept the ahci_platform patches since they are
>>>> already
>>>> in linux-next and will likely make it into 3.15 (though I'll remind
>>>> you that
>>>> I _really_ like to just cherry-pick the final patch from Linus'
>>>> repo). Are
>>>> the "Library-ise" patches necessary ?
>>>
>>>
>>> Yes, the latest ahci-xgene patches depends on the library-ise patches
>>> too, and the 'library-ise' patches have been in -next tree already.
>>>
>>>>
>>>> My knee jerk reaction is a NAK to all of the KVM patches. They appear
>>>> to be
>>>> a work in progress and likely won't even make the 3.15 merge window.
>>>
>>>
>>> Without these KVM patches, qemu can't boot a kernel on APM
>>> mustang, also I just found these patches have been merged
>>> to -next tree already, see below:
>>>
>>>
>>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/log/?id=refs%2Ftags%2Fnext-20140312&qt=author&q=Marc+Zyngier+
>>>
>>>
>>> So they should land 3.15 if everything is OK.
>>>
>>>
>>> Thanks,
>>> --
>>> Ming Lei
>>>
>>
>> How about this patch set ? Is it sufficient ? I've left out the reverts,
>> rtc, QMTM, and PCIe support.
>>
>> The following changes since commit
>> 76d1f103727cd09f8f5b37c2fcb1bf187d89eb47:
>>
>>    UBUNTU: [Config] CONFIG_AHCI_XGENE=m (2014-03-13 12:58:23 -0600)
>>
>> are available in the git repository at:
>>
>>    git://kernel.ubuntu.com/rtg/ubuntu-trusty.git xgene
>>
>> for you to fetch changes up to da455837afe2da91ce0f236886cddaaf4378bd43:
>>
>>    UBUNTU: SAUCE: arm64: Add APM X-Gene SoC AHCI SATA host controller
>> DTS entries (2014-03-13 12:59:03 -0600)
>>
>> ----------------------------------------------------------------
>> Anup Patel (2):
>>        UBUNTU: SAUCE: KVM: Documentation: Fix typo for KVM_ARM_VCPU_INIT
>> ioctl
>>        UBUNTU: SAUCE: arm64: KVM: Force undefined exception for Guest
>> SMC intructions
>>
>> Hans de Goede (7):
>>        phy-core: Don't propagate -ENOSUPP from phy_pm_runtime_get_sync
>> to caller
>>        UBUNTU: SAUCE: libahci: Allow drivers to override start_engine
>>        UBUNTU: SAUCE: ahci-platform: Add support for devices with more
>> then 1 clock
>>        UBUNTU: SAUCE: ahci-platform: Add support for an optional
>> regulator for sata-target power
>>        UBUNTU: SAUCE: ahci-platform: Add enable_ / disable_resources
>> helper functions
>>        UBUNTU: SAUCE: ahci-platform: "Library-ise" ahci_probe
>> functionality
>>        UBUNTU: SAUCE: ahci-platform: "Library-ise" suspend / resume
>> functionality
>>
>> Loc Ho (7):
>>        UBUNTU: SAUCE: Documentation: Add APM X-Gene SoC 15Gbps
>> Multi-purpose PHY driver binding documentation
>>        UBUNTU: SAUCE: PHY: add APM X-Gene SoC 15Gbps Multi-purpose PHY
>> driver
>>        UBUNTU: SAUCE: arm64: Add APM X-Gene SoC 15Gbps Multi-purpose PHY
>> DTS entries
>>        UBUNTU: SAUCE: clk: arm64: Fix the clock-names property for
>> pcppll, socpll, and socplldiv2
>>        UBUNTU: SAUCE: Documentation: Add documentation for the APM
>> X-Gene SoC SATA host controller DTS binding
>>        UBUNTU: SAUCE: ata: Add APM X-Gene SoC AHCI SATA host controller
>> driver
>>        UBUNTU: SAUCE: arm64: Add APM X-Gene SoC AHCI SATA host
>> controller DTS entries
>>
>> Marc Zyngier (5):
>>        UBUNTU: SAUCE: arm64: KVM: force cache clean on page fault when
>> caches are off
>>        UBUNTU: SAUCE: arm64: KVM: allows discrimination of AArch32
>> sysreg access
>>        UBUNTU: SAUCE: arm64: KVM: trap VM system registers until MMU and
>> caches are ON
>>        UBUNTU: SAUCE: ARM: KVM: introduce kvm_p*d_addr_end
>>        UBUNTU: SAUCE: arm64: KVM: flush VM pages before letting the
>> guest enable caches
>>
>> Ravi Patel (2):
>>        UBUNTU: SAUCE: Documentation: misc-devices: APM X-Gene SoC QMTM
>>        UBUNTU: SAUCE: Documentation: devicetree: bindings for APM X-Gene
>> SoC QMTM
>>
>> Roger Quadros (2):
>>        UBUNTU: SAUCE: ata: ahci_platform: Manage SATA PHY
>>        UBUNTU: SAUCE: ata: ahci_platform: runtime resume the device
>> before use
>>
>> Tim Gardner (1):
>>        UBUNTU: SAUCE: arch/arm64/kvm/sys_regs.c: Added include
>>
>>   .../devicetree/bindings/ata/ahci-platform.txt      |    2 +
>>   .../devicetree/bindings/ata/apm-xgene.txt          |   70 +
>>   .../devicetree/bindings/misc/apm-xgene-qmtm.txt    |   51 +
>>   .../devicetree/bindings/phy/apm-xgene-phy.txt      |   79 +
>>   Documentation/misc-devices/apm-xgene-qmtm          |  149 ++
>>   Documentation/virtual/kvm/api.txt                  |    2 +-
>>   arch/arm/include/asm/kvm_mmu.h                     |   19 +-
>>   arch/arm/kvm/mmu.c                                 |  107 +-
>>   arch/arm64/boot/dts/apm-storm.dtsi                 |  156 +-
>>   arch/arm64/include/asm/kvm_arm.h                   |    3 +-
>>   arch/arm64/include/asm/kvm_asm.h                   |    3 +-
>>   arch/arm64/include/asm/kvm_mmu.h                   |   23 +-
>>   arch/arm64/kvm/handle_exit.c                       |    3 -
>>   arch/arm64/kvm/sys_regs.c                          |   99 +-
>>   arch/arm64/kvm/sys_regs.h                          |    2 +
>>   drivers/ata/Kconfig                                |    7 +
>>   drivers/ata/Makefile                               |    1 +
>>   drivers/ata/ahci.c                                 |    6 +-
>>   drivers/ata/ahci.h                                 |   14 +-
>>   drivers/ata/ahci_platform.c                        |  498 ++++--
>>   drivers/ata/ahci_xgene.c                           |  490 ++++++
>>   drivers/ata/libahci.c                              |   26 +-
>>   drivers/ata/sata_highbank.c                        |    3 +-
>>   drivers/phy/Kconfig                                |    7 +
>>   drivers/phy/Makefile                               |    1 +
>>   drivers/phy/phy-core.c                             |    4 +
>>   drivers/phy/phy-xgene.c                            | 1750
>> ++++++++++++++++++++
>>   include/linux/ahci_platform.h                      |   25 +
>>   28 files changed, 3459 insertions(+), 141 deletions(-)
>>   create mode 100644 Documentation/devicetree/bindings/ata/apm-xgene.txt
>>   create mode 100644
>> Documentation/devicetree/bindings/misc/apm-xgene-qmtm.txt
>>   create mode 100644
>> Documentation/devicetree/bindings/phy/apm-xgene-phy.txt
>>   create mode 100644 Documentation/misc-devices/apm-xgene-qmtm
>>   create mode 100644 drivers/ata/ahci_xgene.c
>>   create mode 100644 drivers/phy/phy-xgene.c
>>
>
> Hmm, those ahci_platform patches are causing compile problems with
> amd64/i386.

Thanks for taking these patches.

We built these patches on arm64 and didn't find they cause build
warning/failure, could you post the compiling log so that we can
figure out one fix?

Thanks,
--
Ming Lei




More information about the kernel-team mailing list