summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'pci/misc' into nextBjorn Helgaas2013-09-2812-95/+96
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pci/misc: PCI: Remove unused PCI_MSIX_FLAGS_BIRMASK definition PCI: acpiphp_ibm: Convert to dynamic debug PCI: acpiphp: Convert to dynamic debug PCI: Remove Intel Haswell D3 delays PCI: Pass type, width, and prefetchability for window alignment PCI: Document reason for using pci_is_root_bus() PCI: Use pci_is_root_bus() to check for root bus PCI: Remove unused "is_pcie" from pci_dev structure PCI: Update pci_find_slot() description in pci.txt [SCSI] qla2xxx: Use standard PCIe Capability Link register field names PCI: Fix comment typo, remove unnecessary !! in pci_is_pcie() PCI: Drop "setting latency timer" messages
| * PCI: Remove unused PCI_MSIX_FLAGS_BIRMASK definitionYijing Wang2013-09-271-1/+0
| | | | | | | | | | | | | | PCI_MSIX_FLAGS_BIRMASK has been replaced by PCI_MSIX_TABLE_BIR for better readability. Now no one uses it, remove it. No functional change. Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: acpiphp_ibm: Convert to dynamic debugLan Tianyu2013-09-261-34/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch is to use pr_debug/info/warn/err to replace acpiphp_ibm debug functions and remove module's debug param. User interface change: before this patch, boot with the "acpiphp_ibm.debug" kernel parameter to turn on debug. After this patch, set CONFIG_DYNAMIC_DEBUG=y and boot with "acpiphp_ibm.dyndebug=+p" instead. See Documentation/dynamic-debug-howto.txt. [bhelgaas: changelog] Signed-off-by: Lan Tianyu <tianyu.lan@intel.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: acpiphp: Convert to dynamic debugLan Tianyu2013-09-263-40/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch is to use pr_debug/info/warn/err to replace acpiphp debug functions and remove module's debug param. User interface change: before this patch, boot with the "acpiphp.debug" kernel parameter to turn on debug. After this patch, set CONFIG_DYNAMIC_DEBUG=y and boot with "acpiphp.dyndebug=+p" instead. See Documentation/dynamic-debug-howto.txt. [bhelgaas: changelog] Signed-off-by: Lan Tianyu <tianyu.lan@intel.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: Remove Intel Haswell D3 delaysTodd E Brandt2013-09-251-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latest Intel Haswell chipsets have a hardware optimization which allows on-chip PCI devices to ignore the 10ms delay before entering or exiting D3 suspend. This patch implements the optimization as a PCI quirk, since we want tight control over which devices use it. This way we can test each device individually to be sure there are no issues before we enable the quirk. The first set of devices are from the Haswell platform, which includes every PCI device that is on the northbridge and southbridge. This patch reduces the Haswell suspend time from 93 ms to 47 ms and resume time from 160 ms to 64 ms. Signed-off-by: Todd Brandt <todd.e.brandt@linux.intel.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI: Pass type, width, and prefetchability for window alignmentWei Yang2013-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | When calculating window_alignment(), type information like IORESOURCE_MEM and IORESOURCE_PREFETCH may not be enough. For example, on powernv, we need to know whether the window is 64-bit or not. This patch passes the full resource type (res->flags) for window alignment. [bhelgaas: changelog] Signed-off-by: Wei Yang <weiyang@linux.vnet.ibm.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Gavin Shan <shangw@linux.vnet.ibm.com>
| * PCI: Document reason for using pci_is_root_bus()Bjorn Helgaas2013-09-251-0/+4
| | | | | | | | | | | | | | | | | | Some code assumes "bus->self == NULL" means the bus is a root bus. This adds a comment explaining why this is incorrect ("virtual" buses added for SR-IOV have "bus->self == NULL" but are not root buses). No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: Use pci_is_root_bus() to check for root busWei Yang2013-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In __pci_bus_size_bridges() we check whether a bus is a root bus by testing bus->self. As indicated by commit 79af72d7 ("PCI: pci_is_root_bus helper"), bus->self == NULL is not a proper way to check for a root bus. One issue is that "virtual" buses added for SR-IOV (via virtfn_add_bus()) have bus->self == NULL but are not root buses. This patch changes it to pci_is_root_bus() to check whether it is a root bus. [bhelgaas: changelog] Signed-off-by: Wei Yang <weiyang@linux.vnet.ibm.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: Remove unused "is_pcie" from pci_dev structureYijing Wang2013-09-252-3/+0
| | | | | | | | | | | | No one uses "is_pcie" now; remove this obsolete member. Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: Update pci_find_slot() description in pci.txtYijing Wang2013-09-251-3/+5
| | | | | | | | | | | | | | | | pci_find_slot() has been removed from the kernel. Document its closest replacement, pci_get_domain_bus_and_slot(), instead. [bhelgaas: fix indentation, keep mention in "obsolete" section] Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * [SCSI] qla2xxx: Use standard PCIe Capability Link register field namesBjorn Helgaas2013-09-251-9/+5
| | | | | | | | | | | | | | | | | | Use the standard #defines for PCIe Link Capability register fields rather than bare numbers. This also uses the new PCI Express Capability accessor rather than reading the capability directly. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Acked-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
| * PCI: Fix comment typo, remove unnecessary !! in pci_is_pcie()Joe Perches2013-09-251-2/+2
| | | | | | | | | | | | | | Use normal kernel-doc "Returns:" instead of "retrun" Assignment to bool is always 1 or 0 so the !! isn't necessary. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * PCI: Drop "setting latency timer" messagesBjorn Helgaas2013-09-251-1/+1
| | | | | | | | | | | | | | | | | | This message isn't useful any more, so drop it. Reference: https://bugzilla.kernel.org/show_bug.cgi?id=60636 Reported-by: Oleksil Shevchuk <alxchk@gmail.com> Reference: http://lkml.kernel.org/r/CALCETrWkr53ZjqdN3t7rTTfr=+ZKZXJoYsuBcwPf0kN_33GfAw@mail.gmail.com Reported-by: Andy Lutomirski <luto@amacapital.net> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
* | Merge branch 'pci/host-tegra' into nextBjorn Helgaas2013-09-271-2/+2
|\ \ | | | | | | | | | | | | * pci/host-tegra: PCI: tegra: Add missing __iomem annotation
| * | PCI: tegra: Add missing __iomem annotationJingoo Han2013-09-261-2/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added missing __iomem annotation in order to fix the following sparse warnings: drivers/pci/host/pci-tegra.c:411:41: warning: incorrect type in return expression (different address spaces) drivers/pci/host/pci-tegra.c:411:41: expected void [noderef] <asn:2>* drivers/pci/host/pci-tegra.c:411:41: got void *addr drivers/pci/host/pci-tegra.c:419:25: warning: incorrect type in return expression (different address spaces) drivers/pci/host/pci-tegra.c:419:25: expected void [noderef] <asn:2>* drivers/pci/host/pci-tegra.c:419:25: got void *addr Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Thierry Reding <treding@nvidia.com>
* | Merge branch 'pci/host-imx6' into nextBjorn Helgaas2013-09-275-1/+596
|\ \ | | | | | | | | | | | | | | | * pci/host-imx6: PCI: imx6: Add support for i.MX6 PCIe controller ARM: imx6q: Add PCIe bits to GPR syscon definition
| * | PCI: imx6: Add support for i.MX6 PCIe controllerSean Cross2013-09-274-1/+588
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for the PCIe port present on the i.MX6 family of controllers. These use the Synopsis Designware core tied to their own PHY. Signed-off-by: Sean Cross <xobs@kosagi.com> Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | ARM: imx6q: Add PCIe bits to GPR syscon definitionSean Cross2013-09-271-0/+8
| |/ | | | | | | | | | | | | | | PCIe requires additional bits be defined for GPR8 and GPR12. Signed-off-by: Sean Cross <xobs@kosagi.com> Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
* | Merge branch 'pci/host-exynos' into nextBjorn Helgaas2013-09-274-0/+372
|\ \ | | | | | | | | | | | | | | | | | | * pci/host-exynos: PCI: exynos: Turn off power of phy block when link failed PCI: exynos: Add support for MSI MAINTAINERS: Add Jingoo Han as Samsung Exynos PCIe driver maintainer
| * | PCI: exynos: Turn off power of phy block when link failedJingoo Han2013-09-261-0/+68
| | | | | | | | | | | | | | | | | | | | | | | | When link failed, there is no need to turn on phy block. Also, turning on phy block is added, in order to turn on phy block regardless of the default value of phy registers. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * | PCI: exynos: Add support for MSIJingoo Han2013-09-263-0/+298
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for Message Signaled Interrupt in the Exynos PCIe driver using Synopsys designware PCIe core IP. Signed-off-by: Siva Reddy Kallam <siva.kallam@samsung.com> Signed-off-by: Srikanth T Shivanand <ts.srikanth@samsung.com> Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: Pratyush Anand <pratyush.anand@st.com> Cc: Mohit KUMAR <Mohit.KUMAR@st.com>
| * | MAINTAINERS: Add Jingoo Han as Samsung Exynos PCIe driver maintainerJingoo Han2013-09-261-0/+6
| |/ | | | | | | | | | | Add myself as maintainer for Samsung Exynos PCIe driver. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
* | Merge branch 'pci/yijing-pci_is_pcie-v2' into nextBjorn Helgaas2013-09-248-77/+33
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * pci/yijing-pci_is_pcie-v2: powerpc/pci: Use pci_is_pcie() to simplify code [SCSI] qla2xxx: Use pcie_is_pcie() to simplify code [SCSI] csiostor: Use pcie_capability_clear_and_set_word() to simplify code [SCSI] bfa: Use pcie_set()/get_readrq() to simplify code x86/pci: Use cached pci_dev->pcie_cap to simplify code PCI: Use pci_is_pcie() to simplify code
| * | powerpc/pci: Use pci_is_pcie() to simplify codeYijing Wang2013-09-242-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use pci_is_pcie() to simplify code. Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Reviewed-by: Gavin Shan <shangw@linux.vnet.ibm.com> Cc: Gavin Shan <shangw@linux.vnet.ibm.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org>
| * | [SCSI] qla2xxx: Use pcie_is_pcie() to simplify codeYijing Wang2013-09-241-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use pci_is_pcie() instead of pci_find_capability() to simplify code. Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Chad Dupuis <chad.dupuis@qlogic.com> Cc: Andrew Vasquez <andrew.vasquez@qlogic.com> Cc: linux-driver@qlogic.com Cc: "James E.J. Bottomley" <JBottomley@parallels.com>
| * | [SCSI] csiostor: Use pcie_capability_clear_and_set_word() to simplify codeYijing Wang2013-09-242-19/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pci_is_pcie() and pcie_capability_clear_and_set_word() make it trivial to set the PCIe Completion Timeout, so just fold the csio_set_pcie_completion_timeout() function into its caller. [bhelgaas: changelog, fold csio_set_pcie_completion_timeout() into caller] Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: Jiang Liu <jiang.liu@huawei.com> Cc: "James E.J. Bottomley" <JBottomley@parallels.com> Cc: Naresh Kumar Inna <naresh@chelsio.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Jesper Juhl <jj@chaosbits.net>
| * | [SCSI] bfa: Use pcie_set()/get_readrq() to simplify codeYijing Wang2013-09-241-41/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use pcie_get_readrq()/pcie_set_readrq() to simplify code. Jon Mason proposed a similar patch a couple years ago (see below). [bhelgaas: validate pcie_max_read_reqsz, add pointer to Jon's patch] Reference: http://lkml.kernel.org/r/1309191190-14670-1-git-send-email-jdmason@kudzu.us Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: Jiang Liu <jiang.liu@huawei.com> Cc: Anil Gurumurthy <agurumur@brocade.com> Cc: Vijaya Mohan Guvva <vmohan@brocade.com> Cc: "James E.J. Bottomley" <JBottomley@parallels.com>
| * | x86/pci: Use cached pci_dev->pcie_cap to simplify codeYijing Wang2013-09-241-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PCI core caches the PCIe Capability offset in pci_dev->pcie_cap, so use that instead of pci_find_capability(). Use pci_bus_set_ops() when replacing the device pci_ops. And use #defines instead of numeric constants. [bhelgaas: changelog, also use PCI_EXP_LNKCTL_ASPMC] Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| * | PCI: Use pci_is_pcie() to simplify codeYijing Wang2013-09-241-2/+1
| |/ | | | | | | | | | | Use pci_is_pcie() instead of pci_find_capability() to simplify code. Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
* | Merge branch 'pci/bjorn-osc' into nextBjorn Helgaas2013-09-246-156/+199
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pci/bjorn-osc: PCI/ACPI: Decode _OSC bitmasks symbolically PCI/ACPI: Separate out _OSC "we don't support enough services" path PCI/ACPI: Separate out _OSC "PCIe port services disabled" path PCI/ACPI: Skip _OSC control tests if _OSC support call failed PCI/ACPI: Run _OSC only once for OSPM feature support PCI/ACPI: Split _OSC "support" and "control" flags into separate variables PCI/ACPI: Move _OSC stuff from acpi_pci_root_add() to negotiate_os_control() PCI/ACPI: Drop unnecessary _OSC existence tests PCI/ACPI: Name _OSC #defines more consistently ACPI: Write OSC_PCI_CONTROL_MASKS like OSC_PCI_SUPPORT_MASKS ACPI: Remove unused OSC_PCI_NATIVE_HOTPLUG ACPI: Tidy acpi_run_osc() declarations ACPI: Rename OSC_QUERY_TYPE to OSC_QUERY_DWORD ACPI: Write _OSC bit field definitions in hex
| * PCI/ACPI: Decode _OSC bitmasks symbolicallyBjorn Helgaas2013-09-241-17/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updates _OSC-related messages to be more human-readable. We now always show the features we declare support for (this was previously invisible) as well as the features we are granted control of. Typical changes: -acpi PNP0A08:00: Requesting ACPI _OSC control (0x1d) -acpi PNP0A08:00: ACPI _OSC control (0x1d) granted +acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI] +acpi PNP0A08:00: _OSC: OS now controls [PCIeHotplug PME AER PCIeCapability] Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Separate out _OSC "we don't support enough services" pathBjorn Helgaas2013-09-241-42/+42
| | | | | | | | | | | | | | | | Test the services we support (extended config space, ASPM, MSI) separately so we can give a better message. Previously we said "Unable to request _OSC control..."; now we'll say "we support %#02x but %#02x are required". Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Separate out _OSC "PCIe port services disabled" pathBjorn Helgaas2013-09-241-2/+6
| | | | | | | | | | | | | | | | | | | | | | Test "pcie_ports_disabled" separately so we can give a better message. Previously we said "Unable to request _OSC control..."; now we'll say "PCIe port services disabled; not requesting _OSC control". "pcie_ports_disabled" is true when CONFIG_PCIEPORTBUS=n or we boot with "pcie_ports=compat". Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Skip _OSC control tests if _OSC support call failedBjorn Helgaas2013-09-241-5/+5
| | | | | | | | | | | | | | | | | | If the _OSC support notification fails, we will never request control (because "support == OSC_PCI_SEGMENT_GROUPS_SUPPORT", which doesn't include all the features in ACPI_PCIE_REQ_SUPPORT), so we can return early to simplify the code. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Run _OSC only once for OSPM feature supportBjorn Helgaas2013-09-241-12/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we ran _OSC once to tell the platform that we support PCI Segment Groups, then we ran it again if we supported any additional features (ASPM, MSI, or extended config space). I don't think it's necessary to run it twice, since we can easily build the complete mask of features we support before running _OSC the first time. We run _OSC again later when requesting control of PCIe features; that's unaffected by this change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Split _OSC "support" and "control" flags into separate variablesBjorn Helgaas2013-09-241-17/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Previously we used "flags" for both: - the bitmask of features we support (segments, ASPM, MSI, etc.), and - the bitmask of features we want to control (native hotplug, AER, etc.) To reduce confusion, this patch splits this into two variables: "support" is the bitmask of features we support, and "control" is the bitmask of features we want to control. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Move _OSC stuff from acpi_pci_root_add() to negotiate_os_control()Bjorn Helgaas2013-09-241-61/+71
| | | | | | | | | | | | | | | | This doesn't change any of the _OSC code; it just moves it out into a new function so it doesn't clutter acpi_pci_root_add() so much. This also enables future simplifications. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Drop unnecessary _OSC existence testsBjorn Helgaas2013-09-241-10/+1
| | | | | | | | | | | | | | | | There's no need to check whether _OSC exists here; we eventually call acpi_evaluate_object(..., "_OSC", ...), and that will fail gracefully if _OSC doesn't exist. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * PCI/ACPI: Name _OSC #defines more consistentlyBjorn Helgaas2013-09-244-18/+17
| | | | | | | | | | | | Make PCI Host Bridge _OSC #defines more consistent. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * ACPI: Write OSC_PCI_CONTROL_MASKS like OSC_PCI_SUPPORT_MASKSBjorn Helgaas2013-09-241-6/+1
| | | | | | | | | | | | | | We write OSC_PCI_SUPPORT_MASKS as a simple 0x1f, so do the same for OSC_PCI_CONTROL_MASKS. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * ACPI: Remove unused OSC_PCI_NATIVE_HOTPLUGBjorn Helgaas2013-09-241-3/+0
| | | | | | | | | | | | | | OSC_PCI_NATIVE_HOTPLUG is completely unused, so remove it. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * ACPI: Tidy acpi_run_osc() declarationsBjorn Helgaas2013-09-241-5/+5
| | | | | | | | | | | | | | Move the acpi_run_osc() prototype next to the related structure and update comments. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * ACPI: Rename OSC_QUERY_TYPE to OSC_QUERY_DWORDBjorn Helgaas2013-09-244-22/+23
| | | | | | | | | | | | | | | | | | OSC_QUERY_TYPE isn't a "type"; it's an index into the _OSC Capabilities Buffer of DWORDs. Rename OSC_QUERY_TYPE, OSC_SUPPORT_TYPE, and OSC_CONTROL_TYPE to OSC_QUERY_DWORD, etc., to make this clear. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
| * ACPI: Write _OSC bit field definitions in hexBjorn Helgaas2013-09-241-27/+27
|/ | | | | | | | Update _OSC definition comments to correspond to the 1-based spec wording (DWORD 1, etc.) Write _OSC field #defines as hex to make clear that they are bits in a 32-bit DWORD, not arbitrary values. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
* Linux 3.12-rc2v3.12-rc2Linus Torvalds2013-09-241-1/+1
|
* Merge tag 'staging-3.12-rc2' of ↵Linus Torvalds2013-09-2335-97/+160
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging Pull staging fixes from Greg KH: "Here are a number of small staging tree and iio driver fixes. Nothing major, just lots of little things" * tag 'staging-3.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (34 commits) iio:buffer_cb: Add missing iio_buffer_init() iio: Prevent race between IIO chardev opening and IIO device free iio: fix: Keep a reference to the IIO device for open file descriptors iio: Stop sampling when the device is removed iio: Fix crash when scan_bytes is computed with active_scan_mask == NULL iio: Fix mcp4725 dev-to-indio_dev conversion in suspend/resume iio: Fix bma180 dev-to-indio_dev conversion in suspend/resume iio: Fix tmp006 dev-to-indio_dev conversion in suspend/resume iio: iio_device_add_event_sysfs() bugfix staging: iio: ade7854-spi: Fix return value staging:iio:hmc5843: Fix measurement conversion iio: isl29018: Fix uninitialized value staging:iio:dummy fix kfifo_buf kconfig dependency issue if kfifo modular and buffer enabled for built in dummy driver. iio: at91: fix adc_clk overflow staging: line6: add bounds check in snd_toneport_source_put() Staging: comedi: Fix dependencies for drivers misclassified as PCI staging: r8188eu: Adjust RX gain staging: r8188eu: Fix smatch warning in core/rtw_ieee80211. staging: r8188eu: Fix smatch error in core/rtw_mlme_ext.c staging: r8188eu: Fix Smatch off-by-one warning in hal/rtl8188e_hal_init.c ...
| * Merge tag 'iio-fixes-for-3.12a' of ↵Greg Kroah-Hartman2013-09-2213-36/+91
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus Jonathan writes: First round of IIO fixes for 3.12 A series of wrong 'struct dev' assumptions in suspend/resume callbacks following on from this issue being identified in a new driver review. One to watch out for in future. A number of driver specific fixes 1) at91 - fix a overflow in clock rate computation 2) dummy - Kconfig dependency issue 3) isl29018 - uninitialized value 4) hmc5843 - measurement conversion bug introduced by recent cleanup. 5) ade7854-spi - wrong return value. Some IIO core fixes 1) Wrong value picked up for event code creation for a modified channel 2) A null dereference on failure to initialize a buffer after no buffer has been in use, when using the available_scan_masks approach. 3) Sampling not stopped when a device is removed. Effects forced removal such as hot unplugging. 4) Prevent device going away if a chrdev is still open in userspace. 5) Prevent race on chardev opening and device being freed. 6) Add a missing iio_buffer_init in the call back buffer. These last few are the first part of a set from Lars-Peter Clausen who has been taking a closer look at our removal paths and buffer handling than anyone has for quite some time.
| | * iio:buffer_cb: Add missing iio_buffer_init()Lars-Peter Clausen2013-09-211-0/+2
| | | | | | | | | | | | | | | | | | | | | Make sure to properly initialize the IIO buffer data structure. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
| | * iio: Prevent race between IIO chardev opening and IIO device freeLars-Peter Clausen2013-09-211-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the IIO device as the parent for the character device We need to make sure that the IIO device is not freed while the character device exists, otherwise the freeing of the IIO device might race against the file open callback. Do this by setting the character device's parent to the IIO device, this will cause the character device to grab a reference to the IIO device and only release it once the character device itself has been removed. Also move the registration of the character device before the registration of the IIO device to avoid the (rather theoretical case) that the IIO device is already freed again before we can add the character device and grab a reference to the IIO device. We also need to move the call to cdev_del() from iio_dev_release() to iio_device_unregister() (where it should have been in the first place anyway) to avoid a reference cycle. As iio_dev_release() is only called once all reference are dropped, but the character device holds a reference to the IIO device. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
| | * iio: fix: Keep a reference to the IIO device for open file descriptorsLars-Peter Clausen2013-09-212-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | Make sure that the IIO device is not freed while we still have file descriptors for it. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>