aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-28acpi.conf : turn on ACPI supported machinesGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28efi.conf : 64k pages by defaultGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28acpi.conf : add CONFIG_PCI=yGraeme Gregory
From patch series V8 this is required. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28distribution.conf : disable STRICT_DEVMEM NOT FOR PRODUCTION USEGraeme Gregory
This is termporary to allow FWTS evaluation to continue! Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28linaro-configs: add enterprise-distro.confGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28linaro-configs: add acpi and efi fragmentsGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-28Merge remote-tracking branch 'gg/leg-kernel' into leg-kernelGraeme Gregory
Conflicts: drivers/Kconfig drivers/Makefile
2015-06-26Merge branch 'tracking-llct-misc-fixes' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-06-26Merge branch 'tracking-linaro-builddeb-tweaks' into ↵Andrey Konovalov
merge-linux-linaro-core-tracking
2015-06-26Merge branch 'tracking-gator' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-06-26Merge branch 'tracking-linaro-android-llct' into ↵Andrey Konovalov
merge-linux-linaro-core-tracking
2015-06-26Merge branch 'tracking-basic-board-configs' into ↵Andrey Konovalov
merge-linux-linaro-core-tracking
2015-06-26Merge branch 'tracking-core-configs' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-06-23Merge branch 'topic-capsule' into leg-kernelGraeme Gregory
2015-06-23Merge branch 'acpi-topic-nodevmem' into leg-kernelGraeme Gregory
2015-06-23Merge branch 'acpi-topic-mmconfig' into leg-kernelGraeme Gregory
2015-06-23Merge branch 'acpi-topic-arm64-apei' into leg-kernelGraeme Gregory
Conflicts: arch/arm64/kernel/acpi.c
2015-06-23Merge branch 'acpi-topic-seattle' into leg-kernelGraeme Gregory
2015-06-23DO NOT MERGE: patch for testing UpdateCapsule() runtime serviceSemen Protsenko
Change-Id: Ifa871bad23aceecc1c049e277df787f3616366fc Signed-off-by: Semen Protsenko <semen.protsenko@linaro.org>
2015-06-23ata: ahci_platform: Add ACPI _CLS matchingSuravee Suthikulpanit
This patch adds ACPI supports for AHCI platform driver, which uses _CLS method to match the device. The following is an example of ASL structure in DSDT for a SATA controller, which contains _CLS package to be matched by the ahci_platform driver: Device (AHC0) // AHCI Controller { Name(_HID, "AMDI0600") Name (_CCA, 1) Name (_CLS, Package (3) { 0x01, // Base Class: Mass Storage 0x06, // Sub-Class: serial ATA 0x01, // Interface: AHCI }) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xE0300000, 0x00010000) Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive,,,) { 387 } }) } Also, since ATA driver should not require PCI support for ATA_ACPI, this patch removes dependency in the driver/ata/Kconfig. Acked-by: Tejun Heo <tj@kernel.org> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Hanjun Guo <hanjun.guo@linaro.org> Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
2015-06-23ACPI / scan: Add support for ACPI _CLS device matchingSuravee Suthikulpanit
Device drivers typically use ACPI _HIDs/_CIDs listed in struct device_driver acpi_match_table to match devices. However, for generic drivers, we do not want to list _HID for all supported devices. Also, certain classes of devices do not have _CID (e.g. SATA, USB). Instead, we can leverage ACPI _CLS, which specifies PCI-defined class code (i.e. base-class, subclass and programming interface). This patch adds support for matching ACPI devices using the _CLS method. To support loadable module, current design uses _HID or _CID to match device's modalias. With the new way of matching with _CLS this would requires modification to the current ACPI modalias key to include _CLS. This patch appends PCI-defined class-code to the existing ACPI modalias as following. acpi:<HID>:<CID1>:<CID2>:..:<CIDn>:<bbsspp>: E.g: # cat /sys/devices/platform/AMDI0600:00/modalias acpi:AMDI0600:010601: where bb is th base-class code, ss is te sub-class code, and pp is the programming interface code Since there would not be _HID/_CID in the ACPI matching table of the driver, this patch adds a field to acpi_device_id to specify the matching _CLS. static const struct acpi_device_id ahci_acpi_match[] = { { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) }, {}, }; In this case, the corresponded entry in modules.alias file would be: alias acpi*:010601:* ahci_platform Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Hanjun Guo <hanjun.guo@linaro.org> Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
2015-06-23ACPICA: Utilities: Add _CLS processingSuravee Suthikulpanit
ACPI Device object often contains a _CLS object to suppy PCI-defined class code for the device. This patch introduces logic to process the _CLS object. Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Hanjun Guo <hanjun.guo@linaro.org> Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com>
2015-06-23DO NOT UPSTREAM - arm64: fix dma_ops for ACPI and PCI devicesMark Salter
Commit 2189064795dc3fb4101e5: arm64: Implement set_arch_dma_coherent_ops() to replace bus notifiers removed the bus notifiers from dma-mapping.c. This patch adds the notifier back for ACPI and PCI devices until a better permanent solution is worked out. Signed-off-by: Mark Salter <msalter@redhat.com>
2015-06-23acpi: add utility to test for device dma coherencyMark Salter
ACPI 5.1 adds a _CCA object to indicate memory coherency of a bus master device. It is an integer with zero meaning non-coherent and one meaning coherent. This attribute may be inherited from a parent device. It may also be missing entirely, in which case, an architecture-specific default is assumed. This patch adds a utility function to parse a device handle (and its parents) for a _CCA object and return the coherency attribute if found. Signed-off-by: Mark Salter <msalter@redhat.com>
2015-06-23amd-xgbe-phy-a0: Add support for XGBE PHY on A0Tom Lendacky
Add XGBE phy driver support for A0 hardware. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
2015-06-23amd-xgbe-a0: Add support for XGBE on A0Tom Lendacky
Add XGBE driver support for A0 hardware. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
2015-06-23DO NOT UPSTREAM: arm64: add parking protocol support for SeattleAl Stone
This is a first-cut effort at parking protocol support. It is very much a work in progress (as is the spec it is based on). This code deviates from the current spec in a number of ways to work around current firmware issues and issues with kernels using 64K page sizes. caveat utilitor Signed-off-by: Mark Salter <msalter@redhat.com> Modified to match the revisions to acpi.c for the v9 set of the ACPI core patches for arm64. Signed-off-by: Al Stone <ahs3@redhat.com> Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-23arm64/perf: add ACPI supportMark Salter
Add ACPI support to perf_event driver. This involves getting the irq info from the MADT and registering a platform device when booting with ACPI. This requires updated firmware for Mustang and FM for PMU driver to get correct info from ACPI. Signed-off-by: Mark Salter <msalter@redhat.com>
2015-06-23acpi: fix build errorGeoff Levand
Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-06-23ACPI: arm64: use SPCR to find the boot console by defaultAl Stone
Using the ACPI code to parse the SPCR, use the information in the table to set up the console on arm64. This is the default behavior; using console= on the command line will of course override this. Signed-off-by: Jon Masters <jcm@redhat.com> Signed-off-by: Torez Smith <torez@redhat.com> Signed-off-by: Al Stone <ahs3@redhat.com>
2015-06-23ACPI: serial: allow for OF or ACPI SPCR configuration of the consoleAl Stone
Signed-off-by: Jon Masters <jcm@redhat.com> Signed-off-by: Torez Smith <torez@redhat.com>
2015-06-23ACPI: provide basic support needed to use the SPCR tableAl Stone
If console= is not added to the kernel command line, the console is not registered until much further into the booting process. This patch provides generic parsing of the SPCR ACPI table in order to pull out console information early on. Signed-off-by: Jon Masters <jcm@redhat.com> Signed-off-by: Torez Smith <torez@redhat.com> Signed-off-by: Al Stone <ahs3@redhat.com>
2015-06-23clocksource: simplify ACPI code in arm_arch_timer.cFu Wei
The patch update arm_arch_timer driver to use the function provided by the new GTDT driver of ACPI. By this way, arm_arch_timer.c can be simplified, and separate all the ACPI GTDT knowledge from this timer driver. Signed-off-by: Fu Wei <fu.wei@linaro.org> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
2015-06-23ACPI: add GTDT table parse driver into ACPI driverFu Wei
This driver adds support for parsing SBSA Generic Watchdog Structure in GTDT, and creating a platform device with that information. This allows the operating system to obtain device data from the resource of platform device. The platform device named "sbsa-gwdt" can be used by the ARM SBSA Generic Watchdog driver. Signed-off-by: Fu Wei <fu.wei@linaro.org> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
2015-06-23Watchdog: introduce ARM SBSA watchdog driverFu Wei
This driver bases on linux kernel watchdog framework, and use "pretimeout" in the framework. It supports getting timeout and pretimeout from parameter and FDT at the driver init stage. In first timeout, the interrupt routine run panic to save system context. Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-06-23Watchdog: introdouce "pretimeout" into frameworkFu Wei
Also update Documentation/watchdog/watchdog-kernel-api.txt to introduce: (1)the new elements in the watchdog_device and watchdog_ops struct; (2)the new API "watchdog_init_timeouts" Reasons: (1)kernel already has two watchdog drivers are using "pretimeout": drivers/char/ipmi/ipmi_watchdog.c drivers/watchdog/kempld_wdt.c(but the definition is different) (2)some other drivers are going to use this: ARM SBSA Generic Watchdog Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-06-23ARM64: add SBSA Generic Watchdog device node in amd-seattle-soc.dtsiFu Wei
This can be a example of adding SBSA Generic Watchdog device node into some dts files for the Soc which contains SBSA Generic Watchdog. Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com> Tested-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com> Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-06-23ARM64: add SBSA Generic Watchdog device node in foundation-v8.dtsFu Wei
This can be a example of adding SBSA Generic Watchdog device node into some dts files for the Soc which contains SBSA Generic Watchdog. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-06-23Documentation: add sbsa-gwdt.txt documentationFu Wei
The sbsa-gwdt.txt documentation in devicetree/bindings/watchdog is for introducing SBSA(Server Base System Architecture) Generic Watchdog device node info into FDT. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-06-23ACPI: sysfs expose root tables RSDP/RSDT/XSDTGraeme Gregory
On some architectures /dev/mem is being removed. For debug/analysis tools like FWTS/acpidump we therefore need to expose the ACPI root tables in sysfs like the other tables. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-06-23pci, ecam: Improve naming for ecam.c content and areas where it is used.Tomasz Nowicki
This commit is consequence of making x86 MMCONFIG code available for all architectures. Current code has old name fashion so for the sake of making it more understandable and express where it comes from, we are changing functions/variables/macros etc. name *mmconfig* -> *ecam* Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23pci, acpi, mcfg: Share ACPI PCI config space accessors.Tomasz Nowicki
MCFG can be used perfectly for all architectures which support ACPI. ACPI mandates MCFG to describe PCI config space ranges which means we should use MMCONFIG accessors by default. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci, ecam: mmconfig_64.c becomes default implementation for ECAM driver.Tomasz Nowicki
Architectures which want to take advantage of ECAM generic goodness should select CONFIG_PCI_ECAM_GENERIC. Otherwise, like x86 32bits machines, are obligated to provide own low-level ECAM calls. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci: mmconfig_{32,64}.c code refactoring - remove code duplication.Tomasz Nowicki
mmconfig_64.c version is going to be default implementation for arch agnostic low-level direct PCI config space accessors for ECAM dirver. However, now it initialize raw_pci_ext_ops pointer which is x86 specific code only. Moreover, mmconfig_32.c is doing the same thing at the same time. Move it to mmconfig_shared.c so it becomes common for both and mmconfig_64.c turns out to be purely arch agnostic. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23pci, acpi, mcfg: Provide generic implementation of MCFG code initialization.Tomasz Nowicki
First function acpi_mcfg_check_entry() does not apply any quirks by default. Last two functions are required by ACPI subsystem to make PCI config space accessible. Generic code assume to do nothing for early init call but late init call does as follow: - parse MCFG table and add regions to ECAM resource list - map regions - add regions to iomem_resource Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci, acpi: Move arch-agnostic MMCONFIG (aka ECAM) and ACPI code out of ↵Tomasz Nowicki
arch/x86/ directory ECAM standard and MCFG table are architecture independent and it makes sense to share common code across all architectures. Both are going to corresponding files - ecam.c and mcfg.c While we are here, rename pci_parse_mcfg to acpi_parse_mcfg. We already have acpi_parse_mcfg prototype which is used nowhere. At the same time, we need pci_parse_mcfg been global so acpi_parse_mcfg can be used perfectly here. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci: Reorder logic of pci_mmconfig_insert() functionTomasz Nowicki
This patch is the first step for MMCONFIG refactoring process. Code that uses pci_mmcfg_lock will be moved to common file and become accessible for all architectures. pci_mmconfig_insert() cannot be moved so easily since it is mixing generic mmconfig code with x86 specific logic inside of mutual exclusive block guarded by pci_mmcfg_lock. To get rid of that constraint, we reorder actions as follow: 1. sanity check for mmconfig region presence, if we already have such region it doesn't make snese to alloc new mmconfig list entry 2. mmconfig entry allocation, no need to lock 3. insertion to iomem_resource has its own lock, no need to wrap it into mutex 4. insertion to mmconfig list can be done as the final step in separate function (candidate for further refactoring) and needs another mmconfig lookup to avoid race condition. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci: Abstract PCI config accessors and use AMD Fam10h workaround ↵Tomasz Nowicki
exclusively. From now on, readb()/writeb()/etc. generic calls are used as default approach. Special MMIO accessors are registered for AMD Fam10h CPUs only. Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23x86, pci: Clean up comment about buggy MMIO config space access for AMD ↵Tomasz Nowicki
Fam10h CPUs. - fix typo - improve explanation - add reference to the related document Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>
2015-06-23acpi: fix build errorGeoff Levand
Signed-off-by: Geoff Levand <geoff@infradead.org>