[RFC][TRUSTY] X-Gene platform support
Dann Frazier
dann.frazier at canonical.com
Fri Mar 14 18:49:51 UTC 2014
On Thu, Mar 13, 2014 at 2:13 PM, Tim Gardner <tim.gardner at canonical.com> 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.
Thanks Tim.
Apparently CONFIG_PHY_XGENE needs to be =y (initramfs doesn't autoload
the module), but other than that this tree works as expected. System
boots, SATA works,
and KVM smoke tests (booted a guest kernel, which didn't work before,
but I haven't attached
other devices yet).
I'm not sure what you mean by "sufficient" - if you mean do the
drivers you added work
sufficiently - then yes. If you mean is this enough to make it a
usable platform, then no
(no ethernet support, etc) - but I'm assuming that's obvious :)
-dann
> 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
>
> --
> Tim Gardner tim.gardner at canonical.com
More information about the kernel-team
mailing list