aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-07-10acpi.conf : add essential options for debugging on machines/modelsleg-20150710.2Graeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10acpi.conf : turn on ACPI supported machinesGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10efi.conf : 64k pages by defaultGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10acpi.conf : add CONFIG_PCI=yGraeme Gregory
From patch series V8 this is required. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10distribution.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-07-10linaro-configs: add enterprise-distro.confGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10linaro-configs: add acpi and efi fragmentsGraeme Gregory
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2015-07-10Merge tag 'leg-kernel-mainline-20150710.2' into leg-kernelGraeme Gregory
Conflicts: drivers/Kconfig drivers/Makefile
2015-07-10Merge branch 'topic-capsule' into leg-kernelGraeme Gregory
2015-07-10Merge branch 'acpi-topic-nodevmem' into leg-kernelGraeme Gregory
2015-07-10Merge branch 'acpi-topic-mmconfig' into leg-kernelGraeme Gregory
2015-07-10Merge branch 'acpi-topic-arm64-apei' into leg-kernelGraeme Gregory
Conflicts: arch/arm64/kernel/Makefile
2015-07-10Merge branch 'acpi-topic-sbsa-watchdog' into leg-kernelGraeme Gregory
2015-07-10Merge branch 'acpi-topic-seattle' into leg-kernelGraeme Gregory
2015-07-10ata: 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-07-10ACPI / 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-07-10arm64: add parking protocol supportMark Salter
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>
2015-07-10amd-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> [Add back AMD_XGBE_PHY removed upstream for B0 driver] Signed-off-by: Mark Salter <msalter@redhat.com>
2015-07-08Merge branch 'tracking-llct-misc-fixes' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-07-08Merge branch 'tracking-gator' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-07-08Merge branch 'tracking-basic-board-configs' into ↵Andrey Konovalov
merge-linux-linaro-core-tracking
2015-07-08Merge branch 'tracking-core-configs' into merge-linux-linaro-core-trackingAndrey Konovalov
2015-07-07HACK: of: Limit FDT size for CRC check on arm64Jon Medhurst
There is a bug in the UEFI implementation used on Juno and 64-bit FVPs which corrupts the reported size of the FDT. Work around this by limiting the size for CRC checks to 2MB. See http://lists.infradead.org/pipermail/linux-arm-kernel/2014-December/310106.html Signed-off-by: Jon Medhurst <tixy@linaro.org>
2015-07-07Makefile: Unset stack-protector gcc flag if it is not supportedMarkos Chandras
In case the compiler does not support the stack-protector option, unset the flag to avoid build failures. Printing a warning is enough to let the user know that this flag will not be used. Fixes the following build problem when using a toolchain which does not support the -fstack-protector-strong flag: Makefile:614: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler mips-linux-gnu-gcc: error: unrecognized command line option '-fstack-protector-strong' scripts/Makefile.build:308: recipe for target 'scripts/mod/empty.o' failed make[2]: *** [scripts/mod/empty.o] Error 1 make[2]: *** Waiting for unfinished jobs.... scripts/Makefile.build:455: recipe for target 'scripts/mod' failed Cc: Michal Marek <mmarek@suse.cz> Cc: linux-kbuild@vger.kernel.org Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
2015-07-07amd-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-07-07arm64/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-07-07acpi: fix build errorGeoff Levand
Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-07ACPI: 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-07-07ACPI: 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-07-07ACPI: 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-07-07DO NOT MERGE: patch for testing UpdateCapsule() runtime serviceSemen Protsenko
Change-Id: Ifa871bad23aceecc1c049e277df787f3616366fc Signed-off-by: Semen Protsenko <semen.protsenko@linaro.org>
2015-07-07clocksource: 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-07-07Watchdog: enable ACPI GTDT support for ARM SBSA watchdog driverFu Wei
This patch enables ACPI GTDT support for ARM SBSA watchdog driver automatically, if ACPI support is enabled. Signed-off-by: Fu Wei <fu.wei@linaro.org>
2015-07-07ACPI: 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-07-07Watchdog: 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-07-07Watchdog: 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-07-07ARM64: 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-07-07ARM64: 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-07-07Documentation: 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-07-07ACPI: 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-07-07pci, 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-07-07pci, 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-07-07x86, 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-07-07x86, 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-07-07pci, 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-07-07x86, 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-07-07x86, 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-07-07x86, 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-07-07x86, 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-07-07ACPI, APEI, ARM64: APEI initial support for aarch64.Tomasz Nowicki
This commit provides APEI arch-specific bits for aarch64 Signed-off-by: Tomasz Nowicki <tomasz.nowicki@linaro.org>