Age | Commit message (Collapse) | Author |
|
RESIN_N PMIC input is commonly used as "Volume Down"
button on Quallcom platforms. Add support for it.
TODO: Do it better.
Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
|
|
release/qcomlt-4.2
|
|
Add receive DMA support for UARTDM type of controllers.
Tested on APQ8064, which have UARTDM v1.3 and ADM DMA engine
and APQ8016, which have UARTDM v1.4 and BAM DMA engine.
Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
|
|
Add transmit DMA support for UARTDM type of controllers.
Tested on APQ8064, which have UARTDM v1.3 and ADM DMA engine
and APQ8016, which have UARTDM v1.4 and BAM DMA engine.
Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
|
|
This patch removes the crci information from the dma channel property. At least
one client device requires using more than one CRCI value for a channel. This
does not match the current binding and the crci information needs to be removed.
Instead, the client device will provide this information via other means.
Signed-off-by: Andy Gross <agross@codeaurora.org>
|
|
Strongly ordered memory is occasionally needed for some DMA
allocations for specialized use cases. Add the corresponding
DMA attribute.
Change-Id: Idd9e756c242ef57d6fa6700e51cc38d0863b760d
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
|
|
integration-linux-qcomlt
* tracking-qcomlt-mainline-rpm-smd-pil: (46 commits)
regulator: smd: Add correct ifdef flag for stubs
spmi: Select IRQ_DOMAIN instead of depend on it
regulator: core: Print at debug level on debugfs creation failure
regulator: smd: Make set_{corner,floor} work with regulator struct
regulator: smd: Add floor and corner operations
mfd: qcom_rpm: Add MSM8916 support
HACK: soc: qcom: smd: Add debug to fix timing
remoteproc: tz_pil: Fixes to support 8916
gpio: qcom-smp2p: Fix compile issues
dt-binding: gpio: Introduce qcom,smp2p binding documentation
gpio: qcom-smp2p: Qualcomm Shared Memory Point to Point
soc: qcom: smd: Use correct smem id
gpio: smsm: Fix compiler warnings
gpio: smsm: Update smem prototypes
gpio: qcom-smsm: Add driver for Qualcomm SMSM
mfd: devicetree: qcom-rpm-smd: Add MSM8916
regulator: rpm-smd: Fix PM8841 table
regulator: qcom: smd: Add PM8916 support
mfd: qcom-smd-rpm: Add MSM8916 support
mfd: qcom-smd-rpm: Driver for the Qualcomm RPM over SMD
...
|
|
* tracking-qcomlt-dsi:
mdp4: Add iommu detach_dev in error path
drm/msm: mdp4 lvds: get panel node via of graph parsing
hack: drm/msm: dsi host: don't get esc_clk rate
drm/msm: remove pm_runtime_put() calls
clk: qcom: Allow DSI driver to set parent
drm/msm/dsi: external bridge support
drm/msm/dsi: Rename *dual panel* to *dual DSI*
drm/msm/dsi: Update source PLL selection in DSI PHY
|
|
* tracking-qcomlt-usb:
usb: phy: msm: Add D+/D- lines route control
usb: phy: msm: Trigger USB state detection work in DRD mode
usb: phy: msm: Ensure that workers are initialized before use
usb: phy: msm: Disable driver runtime PM
usb: phy: msm: HACK: Make Vddc configuration optional
usb: chipidea: Use extcon framework for VBUS and ID detect
|
|
* tracking-qcomlt-nvmem:
nvmem: Add to MAINTAINERS for nvmem framework
nvmem: sunxi: Move the SID driver to the nvmem framework
nvmem: qfprom: Add bindings for qfprom
nvmem: qfprom: Add Qualcomm QFPROM support.
Documentation: nvmem: add nvmem api level and how-to doc
nvmem: Add bindings for simple nvmem framework
nvmem: Add nvmem_device based consumer apis.
nvmem: Add a simple NVMEM framework for consumers
nvmem: Add a simple NVMEM framework for nvmem providers
|
|
* tracking-qcomlt-tsens:
thermal: qcom: tsens-8960: Add support for 8960 family of SoCs
thermal: qcom: tsens-8974: Add support for 8974 family of SoCs
thermal: qcom: tsens-8916: Add support for 8916 family of SoCs
thermal: qcom: tsens: Add a skeletal TSENS drivers
|
|
* tracking-qcomlt-clk: (39 commits)
rpmcc,clk-a53: Remove unnecessary init hooks
clk: Add support for safe frequency
clk: qcom: Handle safe frequency for krait
clk: qcom: move smd specific rpm-clk to 8916 platforms
clk: qcom: Add A53 clock driver
clk: qcom: Add support for regmap mux-div clocks
clk: qcom: Add support for SR2 PLLs
clk: qcom: Add MSM8916 audio clocks
clk: qcom: Add MSM8916 gpu clocks
clk: qcom: Add support for RCGs with shared branches
clk: qcom: Add MSM8916 iommu clocks
clk: rpm-msm8916: Max up the bimc and snoc clks.
clk: qcom: Add MSM8916 RPM clock driver
clk: qcom: Add initial support for RPM Clocks
clk : qcom: apq8064 :add rpm clock controller.
cpufreq: Add module to register cpufreq on Krait CPUs
clk: qcom: Add Krait clock controller driver
clk: qcom: Add KPSS ACC/GCC driver
clk: qcom: Add support for Krait clocks
clk: qcom: Add IPQ806X's HFPLLs
...
|
|
* tracking-qcomlt-arm64: (22 commits)
defconfig: add tsens and spmi regulator support
arm64: defconfig: Enable drivers for WCNSS
arm64: defconfig: qcom: enable iommu v1 in defconfig
arm64: defconfig: Enable CPU frequency scaling
arm64: defconfig: Enable CPR driver
arm64: defconfig: Enable SPMI regulator driver
arm64: defconfig: Enable A53 CPU clock
arm64: defconfig: Clean-up defconfig with savedefconfig
arm64: defconfig: remove 8064 rpm clock controller selection.
arm64: defconfig: Enable LED drivers
arm64: Enable Qualcomm SMEM, RPM, and SMD drivers
arm64: defconfig: Enable dsi and hdmi audio related kconfigs
arm64: remove TASK_HUNG config
arm64: qcom: add cpu operations
arm64: smp: move the pen to a header file
arm64: introduce CPU_OF_TABLES for cpu ops selection
devicetree: bindings: Document qcom,msm-id and qcom,board-id
arm64: defconfig: qcom: Enable restart driver
arm64: defconfig: qcom: Enable USB related drivers
arm64: defconfig: Enable extcon usb gpio driver
...
|
|
* tracking-qcomlt-dt: (66 commits)
dts: apq8064: Add generic iommu master bindings data for gfx and mdp
ARM:dts: ifc6410: add inforce LVDS panel support
ARM: dts: apq8064: fix missing gsbi cell-index
arm64: dt: Add WCNSS related nodes
DT: arm64: add iommu dtsi files
WIP: dt: add support for gpu on msm8916/apq8016
arm64: dts: msm8916: Add cpu cooling maps
arm64: dts: Avoid phandle conflicts.
arm64: dts: Add spmi-regulator nodes for pm8916
arm64: dts: msm8916: Add thermal zones, tsens and eeprom nodes
arm: dts: apq8084: Add thermal zones, tsens and eeprom nodes
arm: dts: apq8064: Add thermal zones, tsens and eeprom nodes
arm: dts: msm8974: Add thermal zones, tsens and eeprom nodes
arm64: dts: Add cpu-supply properties for cpufreq
arm64: dts: Add CPR DT node for msm8916
arm64: dts: Add clock-latency for msm8916
arm64: dts: Add cpufreq-dt support for msm8916
arm64: dts: qcom: msm8916: Add A53 DT node
arm64: dts: qcom: msm8916: Add RPMCC DT node
arm64: dts: qcom: Enable USB manual pullup on msm8916
...
|
|
* tracking-qcomlt-iommu: (23 commits)
drm/msm: temp: Add a check to be compatible against both iommuv0/v1
iommu: of: Handle IOMMU lookup failure with deferred probing or error
iommu: of: Document the of_iommu_configure() function
drivers: platform: Configure dma operations at probe time
of: dma: Split of_configure_dma() into mask and ops configuration
of: dma: Make of_dma_deconfigure() public
of: dma: Move range size workaround to of_dma_get_range()
arm: dma-mapping: Don't override dma_ops in arch_setup_dma_ops()
temp: Add dummy msm_iommu_get_ctx and fix broken build
iommu/msm: Set cacheability attributes without tex remap
iommu/msm: Add support for generic master bindings
iommu/msm: Move the contents from msm_iommu_dev.c to msm_iommu.c
iommu/msm: Add DT adaptation
DOWNSTREAM: drm/msm: use downstream iommu
qcom: iommu: Make use of domain_alloc and domain_free
arm64: provide dma cache routines with same API as 32 bit
iommu: msm: Invalidate properly from iommu_unmap
iommu: qcom: v1: fix wrong sg interator
iommu: qcom: v1: rework secure part and build
iommu: qcom: forward port iommu v1
...
|
|
The driver currently works based on platform data. Remove this
and add support for DT. A single master can have multiple ports
connected to more than one iommu.
master
|
|
|
------------------------
| |
IOMMU0 IOMMU1
| |
ctx0 ctx1 ctx0 ctx1
This association of master and iommus/contexts were previously
represented by platform data parent/child device details. The client
drivers were responsible for programming all of the iommus/contexts
for the device. Now while adapting to generic DT bindings we maintain the
list of iommus, contexts that each master domain is connected to and
program all of them on attach/detach.
Signed-off-by: Sricharan R <sricharan@codeaurora.org>
|
|
apq8016-sbc board is using Dual SPDT USB Switch (TC7USB40MU),
witch is controlled by GPIO to de/multiplex D+/D- USB lines to
USB2513B Hub and uB connector. Add support for this.
Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
|
|
On recent Qualcomm platforms VBUS and ID lines are not routed to
USB PHY LINK controller. Use extcon framework to receive connect
and disconnect ID and VBUS notification.
Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
|
|
Introduce binding documentation for the Qualcomm Shared Memory Point 2 Point
protocol implemented as gpio and interrupt controllers.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
This patch adds binding documentation for the MSM8916 and PM8916.
Signed-off-by: Andy Gross <agross@codeaurora.org>
|
|
Add binding documentation for the Qualcomm Resource Power Manager (RPM)
using shared memory (Qualcomm SMD) as transport mechanism. This is found
in 8974 and newer based devices.
The binding currently describes the rpm itself and the regulator
subnodes.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
Add device tree binding documentation for the Qualcomm Shared Memory
Device, used for communication between the various CPUs in the Qualcomm
SoCs.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
Add device tree binding documentation for the Qualcom Shared Memory
Manager.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
The top level qcom,msm-id and qcom,board-id are utilized by bootloaders
on Qualcomm MSM platforms to determine which device tree should be
utilized and passed to the kernel.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
|
|
The current term of *dual panel* in DSI driver code causes confusion.
It is supposed to indicate the panel using two DSI links. Rename it
to *dual DSI*.
Change-Id: I7c84ad6b031abfd4a80aae7c7e4b419a6c3d94b5
Signed-off-by: Hai Li <hali@codeaurora.org>
|
|
Now that we have the nvmem framework, we can consolidate the common
driver code. Move the driver to the framework, and hopefully, it will
fix the sysfs file creation race.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
[srinivas.kandagatla: Moved to regmap based EEPROM framework]
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
This patch adds bindings for qfprom found in QCOM SOCs. QFPROM driver
is based on simple nvmem framework.
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
This patch add basic how-to and api summary documentation for simple
NVMEM framework.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
This patch adds bindings for simple nvmem framework which allows nvmem
consumers to talk to nvmem providers to get access to nvmem cell data.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
[Maxime Ripard: intial version of eeprom framework]
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
TSENS is Qualcomms' thermal temperature sensor device. It
supports reading temperatures from multiple thermal sensors
present on various QCOM SoCs.
Calibration data is generally read from a eeprom device.
Add a skeleton driver with all the necessary abstractions so
a variety of qcom device families which support TSENS can
add driver extensions.
Also add the required device tree bindings which can be used
to descibe the TSENS device in DT.
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Lina Iyer <lina.iyer@linaro.org>
|
|
Add a driver for the A53 subsystem PLL, so that we can provide higher
frequency clocks for use by the system.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Add support for clocks that are controlled by the RPM processor.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Register a cpufreq-generic device whenever we detect that a
"qcom,krait" compatible CPU is present in DT.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
The Krait CPU clocks are made up of a primary mux and secondary
mux for each CPU and the L2, controlled via cp15 accessors. For
Kraits within KPSSv1 each secondary mux accepts a different aux
source, but on KPSSv2 each secondary mux accepts the same aux
source.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
The ACC and GCC regions present in KPSSv1 contain registers to
control clocks and power to each Krait CPU and L2. For CPUfreq
purposes probe these devices and expose a mux clock that chooses
between PXO and PLL8.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
On some devices (MSM8974 for example), the HFPLLs are
instantiated within the Krait processor subsystem as separate
register regions. Add a driver for these PLLs so that we can
provide HFPLL clocks for use by the system.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
Add qcom cpu operations for arm-v8 cpus. Implement secondary cpu boot ops
As a part of this change update device tree documentation for:
1. Arm cortex-a ACC device which provides percpu reg
2. Armv8 cortex-a compatible string in arm/cpus.txt
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
|
|
The top level qcom,msm-id and qcom,board-id are utilized by bootloaders
on Qualcomm MSM platforms to determine which device tree should be
utilized and passed to the kernel.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
|
|
The top level qcom,msm-id and qcom,board-id are utilized by bootloaders
on Qualcomm MSM platforms to determine which device tree should be
utilized and passed to the kernel.
Cc: <devicetree@vger.kernel.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
|
|
This introduces pinctrl drivers for gpio and mpp blocks found in family A
PMICs.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
The "function" of the MPP driver was inherited from the GPIO driver, but the
differences between the two hardware blocks makes both the driver and the
device tree binding to be awkward.
Instead of overloading the "normal" function with various modes this patch
transposes the pinmux function to represent the three operating modes of the
MPP (digital, analog and current sink). The properties of pin pairing and DTEST
routing is moved to separate properties.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
When the MPP is configured for analog output the output level is selected by
the AOUT_CTL register, this patch makes it possible to control this.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
The MPP supports three modes; digital, analog and sink mode. This patch
implements support for the latter.
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Olof Johansson:
"A smallish batch of fixes, a little more than expected this late, but
all fixes are contained to their platforms and seem reasonably low
risk:
- a somewhat large SMP fix for ux500 that still seemed warranted to
include here
- OMAP DT fixes for pbias regulator specification that broke due to
some DT reshuffling
- PCIe IRQ routing bugfix for i.MX
- networking fixes for keystone
- runtime PM for OMAP GPMC
- a couple of error path bug fixes for exynos"
* tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
ARM: dts: keystone: Fix the mdio bindings by moving it to soc specific file
ARM: dts: keystone: fix the clock node for mdio
memory: omap-gpmc: Don't try to save uninitialized GPMC context
ARM: imx6: correct i.MX6 PCIe interrupt routing
ARM: ux500: add an SMP enablement type and move cpu nodes
ARM: dts: dra7: Fix broken pbias device creation
ARM: dts: OMAP5: Fix broken pbias device creation
ARM: dts: OMAP4: Fix broken pbias device creation
ARM: dts: omap243x: Fix broken pbias device creation
ARM: EXYNOS: fix double of_node_put() on error path
ARM: EXYNOS: Fix potentian kfree() of ro memory
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input subsystem fixes from Dmitry Torokhov:
"Just small ALPS and Elan touchpads, and other driver fixups"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: elantech - add special check for fw_version 0x470f01 touchpad
Input: twl4030-vibra - fix ERROR: Bad of_node_put() warning
Input: alps - only Dell laptops have separate button bits for v2 dualpoint sticks
Input: axp20x-pek - add module alias
Input: turbografx - fix potential out of bound access
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB fixes from Greg KH:
"Here are some USB and PHY fixes for 4.2-rc6 that resolve some reported
issues.
All of these have been in the linux-next tree for a while, full
details on the patches are in the shortlog below"
* tag 'usb-4.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
ARM: dts: dra7: Add syscon-pllreset syscon to SATA PHY
drivers/usb: Delete XHCI command timer if necessary
xhci: fix off by one error in TRB DMA address boundary check
usb: udc: core: add device_del() call to error pathway
phy: ti-pipe3: i783 workaround for SATA lockup after dpll unlock/relock
phy-sun4i-usb: Add missing EXPORT_SYMBOL_GPL for sun4i_usb_phy_set_squelch_detect
USB: sierra: add 1199:68AB device ID
usb: gadget: f_printer: actually limit the number of instances
usb: gadget: f_hid: actually limit the number of instances
usb: gadget: f_uac2: fix calculation of uac2->p_interval
usb: gadget: bdc: fix a driver crash on disconnect
usb: chipidea: ehci_init_driver is intended to call one time
USB: qcserial: Add support for Dell Wireless 5809e 4G Modem
USB: qcserial/option: make AT URCs work for Sierra Wireless MC7305/MC7355
|
|
The "cpus" node cannot be inside the "soc" node, while this
works for the CoreSight blocks, the early boot code will look
for "cpus" directly under the root node, so this is a hard
convention. So move the CPU nodes.
Augment the "reg" property to match what is actually in the
hardware: 0x300 and 0x301 respectively.
Then add an SMP enablement type to be used by the SMP init
code, "ste,dbx500-smp".
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/kishon/linux-phy into usb-linus
Kishon writes:
phy: for 4.2-rc6
*) Fix compiler error when sun4i usb phy driver is built as module
*) Fix SATA Lockup issue in dra7 SoC
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
|
|
sticks
It turns out that only Dell laptops have the separate button bits for
v2 dualpoint sticks and that commit 92bac83dd79e ("Input: alps - non
interleaved V2 dualpoint has separate stick button bits") causes
regressions on Toshiba laptops.
This commit adds a check for Dell laptops to the code for handling these
extra button bits, fixing this regression.
This patch has been tested on a Dell Latitude D620 to make sure that it
does not reintroduce the original problem.
Reported-and-tested-by: Douglas Christman <douglaschristman@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
|
git://git.infradead.org/users/vkoul/slave-dma
Pull dmaengine fixes from Vinod Koul:
"We had a regression due to reuse of descriptor so we have reverted
that.
The rest are driver fixes:
- at_hdmac and at_xdmac for residue, trannfer width, and channel config
- pl330 final fix for dma fails and overflow issue
- xgene resouce map fix
- mv_xor big endian op fix"
* tag 'dmaengine-fix-4.2-rc5' of git://git.infradead.org/users/vkoul/slave-dma:
Revert "dmaengine: virt-dma: don't always free descriptor upon completion"
dmaengine: mv_xor: fix big endian operation in register mode
dmaengine: xgene-dma: Fix the resource map to handle overlapping
dmaengine: at_xdmac: fix transfer data width in at_xdmac_prep_slave_sg()
dmaengine: at_hdmac: fix residue computation
dmaengine: at_xdmac: fix bug about channel configuration
dmaengine: pl330: Really fix choppy sound because of wrong residue calculation
dmaengine: pl330: Fix overflow when reporting residue in memcpy
|