]> git.kernelconcepts.de Git - karo-tx-linux.git/log
karo-tx-linux.git
8 years agoMerge remote-tracking branch 'srini/v4.4-audio-capture' into release/qcomlt-4.4
Nicolas Dechesne [Fri, 5 Feb 2016 08:26:11 +0000 (09:26 +0100)]
Merge remote-tracking branch 'srini/v4.4-audio-capture' into release/qcomlt-4.4

8 years agoarm64: dts: qcom: add audio capture support
Srinivas Kandagatla [Thu, 4 Feb 2016 13:23:04 +0000 (13:23 +0000)]
arm64: dts: qcom: add audio capture support

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: add audio routing support
Srinivas Kandagatla [Thu, 4 Feb 2016 13:06:27 +0000 (13:06 +0000)]
ASoC: add audio routing support

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: apq8016-sbc: add mic support
Srinivas Kandagatla [Thu, 28 Jan 2016 15:22:06 +0000 (15:22 +0000)]
ASoC: qcom: apq8016-sbc: add mic support

This patch add mic support on apq8016-sbc board aka db410c. Tested it
with headset mic.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add mic support
Srinivas Kandagatla [Thu, 28 Jan 2016 15:55:16 +0000 (15:55 +0000)]
ASoC: qcom: add mic support

This patch adds mic support to the lpass driver, most of the driver is
reused as it is, only the register level access is changed depending on
te direction of the stream.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: apq8016: set the correct max register for regmap
Srinivas Kandagatla [Thu, 28 Jan 2016 15:41:22 +0000 (15:41 +0000)]
ASoC: qcom: apq8016: set the correct max register for regmap

Now that we are ready to access wrdma registers, set the max register
and other regmap related configs to use correct values.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add generic bit masks for RDMA and WRDMA
Srinivas Kandagatla [Mon, 1 Feb 2016 13:16:58 +0000 (13:16 +0000)]
ASoC: qcom: add generic bit masks for RDMA and WRDMA

This patch adds generic masks for accessing bits in rdma/wrdma
registers. Doing this would simplify the driver and adding capture
support would be much simpler. Also there is no point in having same
bit masks for bits in both rdma and wrdma registers.

This patch also deletes the RDMA specific bit masks and makes the code
use the generic bit masks.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add wrdma register definations
Srinivas Kandagatla [Thu, 28 Jan 2016 15:38:05 +0000 (15:38 +0000)]
ASoC: qcom: add wrdma register definations

This patch adds wrdma registers into the lpaif-reg.h.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: apq8016: add wrdma support
Srinivas Kandagatla [Thu, 28 Jan 2016 15:28:40 +0000 (15:28 +0000)]
ASoC: qcom: apq8016: add wrdma support

This patch adds wrdma support in lpass-apq8016 by providing the register
offsets and adding support in dma channel allocation callback.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: rename rdma_ch_bit_map to dma_ch_bit_map
Srinivas Kandagatla [Mon, 1 Feb 2016 12:44:20 +0000 (12:44 +0000)]
ASoC: qcom: rename rdma_ch_bit_map to dma_ch_bit_map

rdma_ch_bit_map can be reused for wrdma channel allocations as wrdma
channel numbering start after rdma channel numbers.
With capture support referring rdma_ch_bit_map for wrdma channel allocation
is confusing, so renaming rdma_ch_bit_map to dma_ch_bit_map makes sense.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add wrdma dma channel start
Srinivas Kandagatla [Thu, 28 Jan 2016 14:55:01 +0000 (14:55 +0000)]
ASoC: qcom: add wrdma dma channel start

wrdma channel numbering starts at 5 on APQ8016 and is different on other chips.

This patch adds wrdma_channel_start map to variant structure for dma channel
allocations.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add mic related i2s control register defines
Srinivas Kandagatla [Thu, 28 Jan 2016 14:59:37 +0000 (14:59 +0000)]
ASoC: qcom: add mic related i2s control register defines

This patch adds mic related bitmasks and offsets in the i2c control
register.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: ipq806x: add wrdma related register offsets
Srinivas Kandagatla [Mon, 1 Feb 2016 14:18:06 +0000 (14:18 +0000)]
ASoC: qcom: ipq806x: add wrdma related register offsets

This patch adds wrdma related register offsets to the lpass variant data
of ipq806x.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: ipq806x: add error in dma allocation.
Srinivas Kandagatla [Mon, 1 Feb 2016 11:25:57 +0000 (11:25 +0000)]
ASoC: qcom: ipq806x: add error in dma allocation.

ipq806x is only ever tested for playback so return error in dma allocation
if the stream direction is capture.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: pass direction to dma allocation
Srinivas Kandagatla [Thu, 28 Jan 2016 13:46:24 +0000 (13:46 +0000)]
ASoC: qcom: pass direction to dma allocation

This patch updates the internal dma allocation callbacks to take the
stream direction so that it can allocate channels suitable for that
stream direction. Before the capture support this was not necessary.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: rename rdmactl_audif_start to dmactrl_audif_start
Srinivas Kandagatla [Thu, 28 Jan 2016 13:42:49 +0000 (13:42 +0000)]
ASoC: qcom: rename rdmactl_audif_start to dmactrl_audif_start

This patch renames rdmactl_audif_start to dmactrl_audif_start as this
is common for both rdma and wrdma. Without this patch the name would be
bit misleading to the readers.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: add wrdma register details to lpass_variant
Srinivas Kandagatla [Thu, 28 Jan 2016 12:40:08 +0000 (12:40 +0000)]
ASoC: qcom: add wrdma register details to lpass_variant

This patch adds wrdma related register offsets and shifts into lpass
variant structure.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: use snd_dma_alloc/free* apis
Srinivas Kandagatla [Mon, 1 Feb 2016 15:07:16 +0000 (15:07 +0000)]
ASoC: qcom: use snd_dma_alloc/free* apis

There is no point in having local allocation functions when the driver
can use snd_dma_alloc/free() apis. This patch replaces the local versions
of the dma allocation apis with the snd_dma_alloc/free() apis.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoAdd capture support to msm8x16-wcd codec
Srinivas Kandagatla [Fri, 5 Feb 2016 08:08:20 +0000 (08:08 +0000)]
Add capture support to msm8x16-wcd codec

This patch adds msm8x16-wcd codec support which has been tested for
Audio In using Headset Mic/Secondary Mic/Primary Mic and Audio out via
Speaker/Headset.

Below are mixer setups for capture and playbacks.

amixer cset numid=18,iface=MIXER,name='RX1 MIX1 INP1' 'RX1'
amixer cset numid=21,iface=MIXER,name='RX2 MIX1 INP1' 'RX2'
amixer cset numid=5,iface=MIXER,name='RX1 Digital Volume' 100
amixer cset numid=6,iface=MIXER,name='RX2 Digital Volume' 100
amixer cset numid=30,iface=MIXER,name='RDAC2 MUX' 'RX2'

amixer cset numid=23,iface=MIXER,name='RX3 MIX1 INP1' 'RX1'
amixer cset numid=17,iface=MIXER,name='SPK DAC Switch' 1

amixer cset numid=28,iface=MIXER,name='DEC1 MUX' 'ADC2'
amixer cset numid=3,iface=MIXER,name='ADC2 Volume' 70
amixer cset numid=27,iface=MIXER,name='ADC2 MUX' 'INP2'
arecord -D plughw:0,2 -r 16000 -f S16_LE /tmp/f-16000.wav

amixer cset numid=28,iface=MIXER,name='DEC1 MUX' 'ADC2'
amixer cset numid=3,iface=MIXER,name='ADC2 Volume' 70
amixer cset numid=27,iface=MIXER,name='ADC2 MUX' 'INP3'

amixer cset numid=27,iface=MIXER,name='DEC1 MUX' 'DMIC1'

TODO:
headset jack/Mic detection
headset Buttons

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agowcn36xx: remove references to IFF_PROMISC
Nicolas Dechesne [Wed, 27 Jan 2016 09:26:24 +0000 (10:26 +0100)]
wcn36xx: remove references to IFF_PROMISC

Since commit df140465 (mac80211: remove support for IFF_PROMISC), IFF_PROMISC no
longer exists, so we need to remove all references to it.

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agoMerge remote-tracking branch 'bjorn/for-srini/wcn36xx-fixes-4.4' into release/qcomlt-4.4
Nicolas Dechesne [Tue, 26 Jan 2016 20:35:02 +0000 (21:35 +0100)]
Merge remote-tracking branch 'bjorn/for-srini/wcn36xx-fixes-4.4' into release/qcomlt-4.4

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agowcn36xx: Disable power save for now
Bjorn Andersson [Mon, 11 Jan 2016 18:33:27 +0000 (10:33 -0800)]
wcn36xx: Disable power save for now

Enabling power save results in extremely long ping times and stalling
transfers. So disable it for not until we can figure out how to work
around this.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
8 years agowcn36xx: Use correct command struct for EXIT_BMPS_REQ
Pontus Fuchs [Wed, 2 Apr 2014 07:49:29 +0000 (09:49 +0200)]
wcn36xx: Use correct command struct for EXIT_BMPS_REQ

EXIT_BMPS_REQ was using the command struct for ENTER_BMPS_REQ. I
spotted this when looking at command dumps.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: don't pad beacons for mesh
Jason Mobarak [Tue, 11 Mar 2014 22:49:01 +0000 (15:49 -0700)]
wcn36xx: don't pad beacons for mesh

Patch "wcn36xx: Pad TIM PVM if needed" has caused a regression in mesh
beaconing.  The field tim_off is always 0 for mesh mode, and thus
pvm_len (referring to the TIM length field) and pad are both incorrectly
calculated.  Thus, msg_body.beacon_length is incorrectly calculated for
mesh mode. Fix this.

Signed-off-by: Jason Mobarak <jam@cozybit.com>
Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@cozybit.com>
8 years agowcn36xx: Implement multicast filtering
Pontus Fuchs [Tue, 18 Feb 2014 10:45:30 +0000 (11:45 +0100)]
wcn36xx: Implement multicast filtering

Pass the multicast list to FW.

This patch also adds a way to build the smd command in place. This is
needed because the MC list command is too big for the stack.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Track association state
Pontus Fuchs [Wed, 26 Feb 2014 17:46:41 +0000 (18:46 +0100)]
wcn36xx: Track association state

Knowing the association state is needed for mc filtering.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Clear encrypt_type when deleting bss key
Pontus Fuchs [Fri, 21 Feb 2014 22:12:07 +0000 (23:12 +0100)]
wcn36xx: Clear encrypt_type when deleting bss key

This fixes a problem connecting to an open network after being
connected to an encrypted network.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Use allocated self sta index instead of hard coded
Pontus Fuchs [Mon, 17 Feb 2014 19:41:55 +0000 (20:41 +0100)]
wcn36xx: Use allocated self sta index instead of hard coded

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Copy all members in config_sta v1 conversion
Pontus Fuchs [Mon, 17 Feb 2014 07:36:13 +0000 (08:36 +0100)]
wcn36xx: Copy all members in config_sta v1 conversion

When converting to version 1 of the config_sta struct not all
members where copied. This fixes the problem of multicast frames
not being delivered on an encrypted network.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Parse trigger_ba response properly
Pontus Fuchs [Wed, 19 Feb 2014 16:15:59 +0000 (17:15 +0100)]
wcn36xx: Parse trigger_ba response properly

This message does not follow the canonical format and needs it's own
parser.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Remove sta pointer in private vif struct
Pontus Fuchs [Mon, 17 Feb 2014 20:34:53 +0000 (21:34 +0100)]
wcn36xx: Remove sta pointer in private vif struct

This does not work with multiple sta's in a vif.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Add helper macros to cast sta to priv
Pontus Fuchs [Mon, 17 Feb 2014 20:20:53 +0000 (21:20 +0100)]
wcn36xx: Add helper macros to cast sta to priv

While poking at this I also change two related things. I rename one
variable to make the names consistent. I also move one assignment of
priv_sta to the declaration to save a few lines.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Fetch private sta data from sta entry instead of from vif
Pontus Fuchs [Tue, 18 Feb 2014 12:28:14 +0000 (13:28 +0100)]
wcn36xx: Fetch private sta data from sta entry instead of from vif

For consistency with other code.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Use define for invalid index and fix typo
Pontus Fuchs [Sat, 15 Feb 2014 20:21:11 +0000 (21:21 +0100)]
wcn36xx: Use define for invalid index and fix typo

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Use consistent name for private vif
Pontus Fuchs [Wed, 12 Feb 2014 21:04:35 +0000 (22:04 +0100)]
wcn36xx: Use consistent name for private vif

Some code used priv_vif and some used vif_priv. Convert all to vif_priv
for consistency.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Add helper macros to cast vif to private vif and vice versa
Pontus Fuchs [Wed, 12 Feb 2014 20:52:12 +0000 (21:52 +0100)]
wcn36xx: Add helper macros to cast vif to private vif and vice versa

Makes the code a little easier to read.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Pad TIM PVM if needed
Pontus Fuchs [Mon, 10 Feb 2014 20:33:54 +0000 (21:33 +0100)]
wcn36xx: Pad TIM PVM if needed

The wcn36xx FW expects a fixed size TIM PVM in the beacon template. If
supplied with a shorter than expected PVM it will overwrite the IE
following the TIM.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: Clean up wcn36xx_smd_send_beacon
Pontus Fuchs [Mon, 10 Feb 2014 20:32:11 +0000 (21:32 +0100)]
wcn36xx: Clean up wcn36xx_smd_send_beacon

Needed for coming improvements. No functional changes.

Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
8 years agowcn36xx: split DMA mask register writing.
Fengwei Yin [Sun, 20 Dec 2015 13:20:41 +0000 (21:20 +0800)]
wcn36xx: split DMA mask register writing.

Per comments from Bjorn Andersson <bjorn.andersson@sonymobile.com>,
split DMA mask register writing as seperate patch in case we need
bi-sect in the furture.

Signed-off-by: Fengwei Yin <fengwei.yin@linaro.org>
8 years agowcn36xx: handle rx skb allocation failure to avoid system crash
Fengwei Yin [Sun, 20 Dec 2015 13:20:40 +0000 (21:20 +0800)]
wcn36xx: handle rx skb allocation failure to avoid system crash

Lawrence reported that git clone could make system crash on a
Qualcomm ARM soc based device (DragonBoard, 1G memory without
swap) running 64bit Debian.

It's turned out the crash is related with rx skb allocation
failure. git could consume more than 600MB anonymous memory.
And system is in extremely memory shortage case.

But driver didn't handle the rx allocation failure case. This patch
doesn't submit skb to upper layer if rx skb allocation fails.
Instead, it reuse the old skb for rx DMA again. It's more like
drop the packets if system is in memory shortage case.

With this change, git clone is OOMed instead of system crash.

Reported-by: King, Lawrence <lking@qti.qualcomm.com>
Signed-off-by: Fengwei Yin <fengwei.yin@linaro.org>
8 years agofixup! ARM: qcom_defconfig: Add QCOM specific drivers
Nicolas Dechesne [Mon, 25 Jan 2016 14:29:41 +0000 (15:29 +0100)]
fixup! ARM: qcom_defconfig: Add QCOM specific drivers

8 years agokernel: configs: add CONFIG_INPUT_JOYDEV in distro.config
Nicolas Dechesne [Tue, 15 Dec 2015 13:31:49 +0000 (14:31 +0100)]
kernel: configs: add CONFIG_INPUT_JOYDEV in distro.config

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agokernel: configs: add I2C_CHARDEV in distro.config
Nicolas Dechesne [Fri, 25 Sep 2015 19:15:41 +0000 (12:15 -0700)]
kernel: configs: add I2C_CHARDEV in distro.config

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agokernel: add DRM_LOAD_EDID_FIRMWARE in distro.config
Nicolas Dechesne [Wed, 23 Sep 2015 06:35:58 +0000 (23:35 -0700)]
kernel: add DRM_LOAD_EDID_FIRMWARE in distro.config

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agoMerge branch 'tracking-qcomlt-config-fragments' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:34 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-config-fragments' into integration-linux-qcomlt

* tracking-qcomlt-config-fragments:
  kernel: configs: Enable input misc device drivers
  kernel: configs: update distro config from release branch
  kernel: configs: improve distro.config, mostly for systemd
  kernel: configs: update distro.config
  kernel: configs: move linaro distro.conf as proper %.config fragment
  linaro: add defconfig fragment with basic linaro config

8 years agoMerge branch 'tracking-qcomlt-wcnss' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:34 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-wcnss' into integration-linux-qcomlt

* tracking-qcomlt-wcnss: (21 commits)
  wcn36xx: avoid alloc mem with GFP_KERNEL in smd callback.
  wcn36xx: eliminate the warning for unsupported SMD_EVENT
  wcn36xx: Update the smd client driver to use new smd channel match method.
  Bluetooth: btqcomsmd: Qualcomm WCNSS HCI driver
  Bluetooth: Add HCI device identifier for Qualcomm SMD
  Migrate the wifi driver from old smd driver to new smd driver.
  Update the initialization sequence to enable DB410c.
  Set the dma mask for platform device which is not created from DT.
  Got workable wireless driver.
  wcn36xx: add later fw capabilities
  net wireless wcn36xx adapt wcnss platform to select module by DT
  net wireless wcn36xx add wcnss platform code
  wcn3620: use new response format for wcn3620 remove_bsskey
  wcn3620: use new response format for wcn3620 trigger_ba
  wcn36xx: handle new hal response format
  wcn36xx: remove powersaving for wcn3620
  wcn36xx: swallow two wcn3620 IND messages
  wcn36xx: introduce WCN36XX_HAL_AVOID_FREQ_RANGE_IND
  wcn36xx: use 3680 dxe regs for 3620
  wcn36xx: get chip type from platform ops
  ...

8 years agoMerge branch 'tracking-qcomlt-scm' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:33 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-scm' into integration-linux-qcomlt

* tracking-qcomlt-scm:
  firmware: scm: add proc restart support
  firmware: qcom: scm: Fixup arm64 asm
  firmware: qcom: scm: add video (vidc) scm calls
  firmware: qcom: scm: Support IOMMU scm calls
  firmware: qcom: scm: Support PIL SCMs
  firmware: qcom: scm: Split out 32-bit specific SCM code
  firmware: qcom: scm: Fix NULL coherent device
  firmware: qcom: scm: Add 64 bit PAS APIs
  firmware: qcom: scm: Peripheral Authentication Service
  firmware: qcom: scm: Add boot APIs
  firmware: qcom: scm: Generalize shared error map
  firmware: qcom: scm: Add support for ARM64 SoCs

8 years agoMerge branch 'tracking-qcomlt-power-regulator' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:33 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-power-regulator' into integration-linux-qcomlt

* tracking-qcomlt-power-regulator:
  cpufreq-dt: Add missing rcu_read_lock() for find_device_opp()
  cpufreq-dt: Add L2 frequency scaling support
  pwer:avs: cpr: fix with new reg_sequence structures
  power: avs: cpr: Fix Duplicate OPPs warning
  power: avs: Register CPR with cpufreq-dt
  power: avs: cpr: Use raw mem access for qfprom
  power: avs: Add support for CPR (Core Power Reduction)
  cpufreq-dt: Handle OPP voltage adjust events
  OPP: Allow notifiers to call dev_pm_opp_get_{voltage, freq} RCU-free
  PM / OPP: Support adjusting OPP voltages at runtime

8 years agoMerge branch 'tracking-qcomlt-mainline-rpm-smd-pil' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:32 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-mainline-rpm-smd-pil' into integration-linux-qcomlt

* tracking-qcomlt-mainline-rpm-smd-pil: (65 commits)
  Move to new qcom_smem_get() api
  Fix: Make it buildable on v4.3
  soc: qcom: Stub IPCRTR client driver
  soc: qcom: rpm_log: Add rpm log driver
  soc: qcom: Add msm_bus driver
  remoteproc: tz: Allow no scm clocks support
  WIP: remoteproc: HACK to get it working on  DB410c
  WIP: remoteproc: q6: add support to scm restart
  WIP: remoteproc: q6: add support to memory-region
  WIP:remoteproc:q6pil: add segment_is_loadable and segment_is_relocatable macros
  WIP: remoteproc: q6: remove some commented out code
  soc: qcom: smd: Support opening additional channels
  soc: qcom: smd: Support multiple channels per sdev
  soc: qcom: smd: Refactor channel open and close handling
  soc: qcom: smd: Split discovery and state change work
  soc: qcom: smd: Introduce callback setter
  soc: smd: Migrate the wifi driver from old smd driver to new smd driver.
  qcom-smd-rpm: Add MSM8916 support
  gpio:smp2p:qcom: kill set_irq_flags and use genirq
  remoteproc: tz_pil: skip waiting ready irq if it not provided
  ...

8 years agoMerge branch 'tracking-qcomlt-card-detect' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:32 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-card-detect' into integration-linux-qcomlt

* tracking-qcomlt-card-detect:
  mmc: sdhci-msm: Add SDHCI_QUIRK_NO_CARD_NO_RESET
  mmc: sdhci: let GPIO based card detection have higher precedence

8 years agoMerge branch 'tracking-qcomlt-dsi' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:31 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-dsi' into integration-linux-qcomlt

* tracking-qcomlt-dsi:
  drm/msm/mdp5: Update bus scaling support
  drm/msm/dsi: Update the "vdd" voltage range
  drm/msm: remove pm_runtime_put() calls
  mdp4: Add iommu detach_dev in error path
  HACK: drm/msm/mdp5: Make sure mdp5 clocks aren't disbaled when we need them
  drm/msm/dsi: Don't call hpd helper unconditionally
  drm/msm/dsi: Remove incorrect warning on host attach
  drm/msm/dsi: Add a delay when performing software reset
  drm/msm/dsi: Parse lane swap information from DT

8 years agoMerge branch 'tracking-qcomlt-audio' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:31 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-audio' into integration-linux-qcomlt

* tracking-qcomlt-audio:
  ASoC: qcom: use correct device pointer in dma allocation
  WIP: drm: msm: add proper hdmi codec driver.
  sound: qcom: add dsp support to apq8064
  sound: codec: Add support to msm8x16_wcd codec.
  ALSA: pcm: add IEC958 channel status helper for hw_params
  ASoC: hdmi-codec: Add hdmi-codec for external HDMI-encoders

8 years agoMerge branch 'tracking-qcomlt-i2c' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:30 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-i2c' into integration-linux-qcomlt

* tracking-qcomlt-i2c:
  i2c: qup: Remove verbose messages.
  i2c: qup: Add bam dma capabilities
  i2c: qup: Transfer each i2c_msg in i2c_msgs without a stop bit
  i2c: qup: Add V2 tags support
  qup: i2c: factor out common code for reuse
  i2c: qup: Change qup_wait_writeready function to use for all timeouts

8 years agoMerge branch 'tracking-qcomlt-usb' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:30 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-usb' into integration-linux-qcomlt

* tracking-qcomlt-usb:
  drivers: usb: Add bus scaling suppport
  usb: host: ehci-msm: Use posted data writes on AHB
  usb: chipidea: msm: Use posted data writes on AHB
  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: phy: msm: fix error handling in probe.

8 years agoMerge branch 'tracking-qcomlt-coresight' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:29 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-coresight' into integration-linux-qcomlt

* tracking-qcomlt-coresight:
  coresight-etm3x: Add Qualcomm PTM v1.1 peripheral ID
  amba: Defer device peripheral ID read

8 years agoMerge branch 'tracking-qcomlt-tsens' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:29 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-tsens' into integration-linux-qcomlt

* 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

8 years agoMerge branch 'tracking-qcomlt-clk' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:28 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-clk' into integration-linux-qcomlt

* tracking-qcomlt-clk: (27 commits)
  clk:gcc-msm8916: add missing mss_q6_bimc_axi clock
  soc: qcom: Add support for SAW2 regulators
  clk: qcom: Add A53 clock driver
  clk: qcom: Add support for regmap mux-div clocks
  clk: qcom: Add support for apq8084 RPM-SMD clocks
  clk: qcom: msm8974: Remove gfx3d clock from MMCC
  clk: qcom: Add support for msm8974 RPM-SMD clocks
  clk: qcom: Add support for RPM Clocks
  clk: qcom: Add support for SMD-RPM Clocks
  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
  clk: qcom: Add MSM8960/APQ8064's HFPLLs
  clk: qcom: Add HFPLL driver
  clk: qcom: Add support for High-Frequency PLLs (HFPLLs)
  clk: Add safe switch hook
  clk: mux: Split out register accessors for reuse
  clk: Avoid sending high rates to downstream clocks during set_rate
  ...

8 years agoMerge branch 'tracking-qcomlt-adv7511' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:27 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-adv7511' into integration-linux-qcomlt

* tracking-qcomlt-adv7511:
  drm/i2c: adv7511: Init regulators
  drm/i2c: adv7511: fixup the dapm bias level access
  drm/i2c: adv7511: move to use reg_sequence
  HACK: drm/i2c: adv7511: Remove hotplug event handling
  drm/i2c: adv7511: Enable the audio data and clock pads on adv7533
  drm/i2c: adv7511: Add Audio support.
  drm/i2c: adv7511: Move the common data structures to header file
  drm/i2c: adv7511: Change DSI lanes dynamically
  drm/i2c: adv7511: Use internal timing generator
  drm/i2c: adv7511: setup CEC registers during power off-power-on sequence
  drm/i2c: adv7511: Create mipi_dsi_device for ADV7533
  drm/i2c: adv7511: Add drm_bridge/connector for ADV7533
  drm/i2c: adv7511: Refactor encoder slave functions
  drm/i2c: adv7511: Initial support for adv7533
  drm/i2c: adv7511: Fix mutex deadlock when interrupts are disabled
  drm/mipi_dsi: Get DSI host by DT device node
  drm/mipi_dsi: Create dummy DSI devices
  drm/mipi_dsi: check for used channels
  drm/mipi_dsi: refactor device creation

8 years agoMerge branch 'tracking-qcomlt-arm64' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:27 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-arm64' into integration-linux-qcomlt

* tracking-qcomlt-arm64:
  arm64: fixup for mm renames
  arm64: dma-mapping: map sg lists into the SMMU as virtually contiguous
  arm64: dma-mapping: fix DMA_ATTR_STRONGLY_ORDERED in __get_dma_pgprot
  arm64: mm: Fix a bug in iommu dma-mapping
  arm64: dma-mapping: add support for IOMMU mapper
  arm64: Add support for DMA_ATTR_STRONGLY_ORDERED
  arm: Add option to skip buffer zeroing
  common: DMA-mapping: Add strongly ordered memory attribute
  arm64: defconfig: add qcom specifics
  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
  ARM: cpuidle: Add cpuidle support for QCOM cpus

8 years agoMerge branch 'tracking-qcomlt-adm-dma' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:26 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-adm-dma' into integration-linux-qcomlt

* tracking-qcomlt-adm-dma:
  dmaengine: adm: Start next DMA even if there is no ongoing transaction
  dmaengine: adm: Don't reset controller during probe
  dmaengine: adm: Use 'soft' flush when stopping DMA
  dmaengine: adm: Fix ADM hardware descriptor creation when flow control is enabled
  dmaengine: Add ADM driver
  dt/bindings: qcom_adm: Fix channel specifiers

8 years agoMerge branch 'tracking-qcomlt-iommu' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:26 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-iommu' into integration-linux-qcomlt

* tracking-qcomlt-iommu: (25 commits)
  iommu: qcom: v1: move iommu-sec pgtable allocation
  pci: use new of_dma_configure* apis
  iommu/msm: Fix "scheduling while atomic" bug
  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
  ...

8 years agoMerge branch 'tracking-qcomlt-apq8016-dt' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:25 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-apq8016-dt' into integration-linux-qcomlt

* tracking-qcomlt-apq8016-dt: (72 commits)
  arm64: dts: add spmi prefix to regulators
  arm64: dts: move smem node after the soc node
  arm64: dts: apq8016-sbc: add regulators support
  arm64: dts: qcom: apq8016-sbc: Limit MPP4 high state to 1.8V
  arm64: dts: qcom: apq8016-sbc: Add Volume Down definitions
  arm64: dts: qcom: apq8016-sbc: Add Volume Up key device node
  arm64: dts: Align msm8916 cpu thermal trip point ranges
  arm64: msm8916-mdss.dtsi: Add bus scaling properties for mdp
  arm64: apq8016-sbc.dtsi: Add regulators needed by adv7533
  dts: arm64: qcom: apq8016-sbc: enable vidc and vidc-rproc
  dts: arm64: msm8916: add vidc dt nodes
  arm64: dts: Add rpm_log support
  arm64: dts: usb: Add bus scaling suppport
  arm64: dt: Add msm bus nodes
  WIP:dts: arm64: add q6v5 pil support
  wcn36xx: Update DT to support wcn36xx wifi driver
  arm64: dts: remove the #if 0 around bluetooth
  arm64: dts: Fix the hypervisor and tz memory region size
  dts: qcom: Add CoreSight components for MSM8916
  arm64: dts: qcom: Add msm8916 CoreSight components
  ...

8 years agoMerge branch 'tracking-qcomlt-apq8064-dt' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:25 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-apq8064-dt' into integration-linux-qcomlt

* tracking-qcomlt-apq8064-dt: (37 commits)
  arm: dts: remove duplicate entires
  arm: dts: apq8064: fix clock names according to new rpmcc
  dts: qcom: Add CoreSight components for APQ8064
  ARM: dts: ERAGON: fix uart pinctrl
  arm: dts: qcom: apq8064: Add fixed rate on-board oscillators
  arm: dts: qcom: apq8064: Add RPMCC DT node
  dts: arm: add support to digital audio via dsp
  arm: dts: apq8064: add support to smd apr_audio svc channel
  dts: arm: apq8064: add support to q6 pil via pil-tz
  arm: dts: apq8064: Add thermal zones, tsens and qfprom nodes
  ARM: dts: apq8064: Increase critical temperature to 110C
  ARM: dts: ifc6410: HACK add bt reset gpios to pwrseq
  arm: dts: Added eInfochips ERAGON600 board support
  ARM: dts: apq8064: Add ADM configuration node
  ARM: dts: apq8064: Add a DT node for the L2 data
  ARM: dts: apq8064: Add reference to the L2 clock
  ARM: dts: apq8064: Add voltage ranges of the SAW2 regulators
  ARM: dts: apq8064: Add thermal cooling maps
  ARM: dts: apq8064: Add OPP data for frequencies above 1ghz
  ARM: dts: apq8064: Assign a power supply to each CPU
  ...

8 years agoMerge branch 'tracking-qcomlt-panelpicker' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:24 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-panelpicker' into integration-linux-qcomlt

* tracking-qcomlt-panelpicker:
  drm/msm: mdp4 lvds: Check the panel node in detect_panel()
  drm/msm: mdp4 lvds: continue if the panel is not connected
  drm/panel: simple-panel: Add panel picker support.
  drm/edid: export edid_vendor()
  drm/edid: Add support to get edid early

8 years agoMerge branch 'tracking-qcomlt-mainline-pcie' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:24 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-mainline-pcie' into integration-linux-qcomlt

* tracking-qcomlt-mainline-pcie:
  PCI: qcom: Add Qualcomm PCIe controller driver
  DT: PCI: qcom: Document PCIe devicetree bindings
  PCI: designware: add memory barrier after enabling region

8 years agoMerge branch 'tracking-qcomlt-venus' into integration-linux-qcomlt
Srinivas Kandagatla [Thu, 14 Jan 2016 16:06:23 +0000 (16:06 +0000)]
Merge branch 'tracking-qcomlt-venus' into integration-linux-qcomlt

* tracking-qcomlt-venus:
  media: vidc: venc/vdec: vb2 structure reorganisation
  media: vidc: debug: fix build warnings
  media: vidc: Qualcomm video encoder/decoder driver
  media: v4l2-controls: add h264 5.2 level and constrained high profile

8 years agomulti_v7_defconfig: add msm iommu kconfig
Srinivas Kandagatla [Thu, 14 Jan 2016 12:50:11 +0000 (12:50 +0000)]
multi_v7_defconfig: add msm iommu kconfig

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agocpufreq-dt: Add missing rcu_read_lock() for find_device_opp()
Georgi Djakov [Wed, 13 Jan 2016 13:10:25 +0000 (15:10 +0200)]
cpufreq-dt: Add missing rcu_read_lock() for find_device_opp()

The function dev_pm_opp_get_notifier() must be called with held
rcu_read_lock. In order to keep the pointer valid, add rcu_read_lock().

Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
8 years agoarm: dts: remove duplicate entires
Srinivas Kandagatla [Thu, 14 Jan 2016 16:01:37 +0000 (16:01 +0000)]
arm: dts: remove duplicate entires

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoASoC: qcom: use correct device pointer in dma allocation
Srinivas Kandagatla [Mon, 11 Jan 2016 14:36:00 +0000 (14:36 +0000)]
ASoC: qcom: use correct device pointer in dma allocation

dev pointer in struct snd_soc_pcm_runtime does not have dma_ops set. In
v4.4 kernel dma_ops would end up pointing to dummy_dma_ops in such cases.
So attempting to use such device in allocating coherent memory on aarch64
would fail.

According to commit 1dccb598df549d892b6450c261da54cdd7af44b4 ("arm64:
simplify dma_get_ops") The current behavior of dma_get_ops is to fall
back to the global dma_ops when a device has not set its own dma_ops,
but only for DT based systems.

So, this patch fixes the driver to use correct device pointer while
allocating coherent memory, and also deletes un-necessary dma_mask setup
on soc_runtime->dev.

Without this patch lpass driver would fail with below log:
...
[    6.541542]  ADV7533: lpass_platform_alloc_buffer: Could not allocate DMA buffer
[    6.541914] apq8016-lpass-cpu 7708000.lpass-cpu: ASoC: pcm constructor failed: -12
[    6.548216] qcom-apq8016-sbc 7702000.sound: ASoC: can't create pcm ADV7533 :-12
[    6.555581] qcom-apq8016-sbc 7702000.sound: ASoC: failed to instantiate card -12
[    6.566072] qcom-apq8016-sbc: probe of 7702000.sound failed with error -12
...

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoWIP: drm: msm: add proper hdmi codec driver.
Srinivas Kandagatla [Thu, 14 Jan 2016 10:37:16 +0000 (10:37 +0000)]
WIP: drm: msm: add proper hdmi codec driver.

This patch adds proper hdmi-codec driver using hdmi-codec support in
asoc.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agosound: qcom: add dsp support to apq8064
Srinivas Kandagatla [Mon, 7 Dec 2015 12:01:09 +0000 (12:01 +0000)]
sound: qcom: add dsp support to apq8064

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agosound: codec: Add support to msm8x16_wcd codec.
Srinivas Kandagatla [Wed, 14 Oct 2015 10:26:46 +0000 (11:26 +0100)]
sound: codec: Add support to msm8x16_wcd codec.

On msm8x16 SOCs the codec integration is split into digital and analog
parts, digitial part is integrated with SOC and the analog part is
integrated as part of pmic chip pm8916.

This driver provides basic playback support with lot of todos:
1> Capture support
2> Cleanup
3> Multi button head set support.
4> Impedenace matching logic.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoALSA: pcm: add IEC958 channel status helper for hw_params
Jyri Sarha [Fri, 18 Sep 2015 11:06:39 +0000 (14:06 +0300)]
ALSA: pcm: add IEC958 channel status helper for hw_params

Add IEC958 channel status helper that gets the audio properties from
snd_pcm_hw_params instead of snd_pcm_runtime. This is needed to
produce the channel status bits already in audio stream configuration
phase.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
8 years agoASoC: hdmi-codec: Add hdmi-codec for external HDMI-encoders
Jyri Sarha [Fri, 18 Sep 2015 11:06:40 +0000 (14:06 +0300)]
ASoC: hdmi-codec: Add hdmi-codec for external HDMI-encoders

The hdmi-codec is a platform device driver to be registered from
drivers of external HDMI encoders with I2S and/or spdif interface. The
driver in turn registers an ASoC codec for the HDMI encoder's audio
functionality.

The structures and definitions in the API header are mostly redundant
copies of similar structures in ASoC headers. This is on purpose to
avoid direct dependencies to ASoC structures in video side driver.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
Conflicts:
sound/soc/codecs/Makefile

Conflicts:
sound/soc/codecs/Makefile

8 years agodrivers: usb: Add bus scaling suppport
Rajendra Nayak [Tue, 13 Oct 2015 12:08:52 +0000 (17:38 +0530)]
drivers: usb: Add bus scaling suppport

Add msm bus scaling support and hack to request
max bandwith at probe

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
8 years agousb: host: ehci-msm: Use posted data writes on AHB
Andy Gross [Thu, 5 Nov 2015 21:24:59 +0000 (15:24 -0600)]
usb: host: ehci-msm: Use posted data writes on AHB

This patch sets the AHBMODE to allow for posted data writes.  This
results in higher performance.

Signed-off-by: Andy Gross <agross@codeaurora.org>
8 years agousb: chipidea: msm: Use posted data writes on AHB
Andy Gross [Thu, 5 Nov 2015 21:18:25 +0000 (15:18 -0600)]
usb: chipidea: msm: Use posted data writes on AHB

This patch sets the AHBMODE to allow for posted data writes.  This results in
higher performance.

Signed-off-by: Andy Gross <agross@codeaurora.org>
8 years agousb: phy: msm: Ensure that workers are initialized before use
Ivan T. Ivanov [Wed, 13 May 2015 12:20:12 +0000 (15:20 +0300)]
usb: phy: msm: Ensure that workers are initialized before use

Charger detect and USB state detect workers could be triggered from
USB-HOST and USB cable detect notifiers. Ensure that workers are
initialized before driver register its interest for cable events.

Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
8 years agousb: phy: msm: Disable driver runtime PM
Ivan T. Ivanov [Wed, 13 May 2015 12:11:14 +0000 (15:11 +0300)]
usb: phy: msm: Disable driver runtime PM

Currently runtime PM for this driver is broken. Disable it until
proper fix is developed.

Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
8 years agousb: phy: msm: HACK: Make Vddc configuration optional
Ivan T. Ivanov [Fri, 8 May 2015 09:54:47 +0000 (12:54 +0300)]
usb: phy: msm: HACK: Make Vddc configuration optional

Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
8 years agousb: phy: msm: fix error handling in probe.
Srinivas Kandagatla [Tue, 12 Jan 2016 09:15:28 +0000 (09:15 +0000)]
usb: phy: msm: fix error handling in probe.

This driver registers for extcon events as part of its probe, but
never unregisters them in case of error in the probe path.

There were multiple issues noticed due to this missing error handling.
One of them is random crashes if the regulators are not ready yet by the
time probe is invoked.

Ivan's previous attempt [1] to fix this issue, did not really address
all the failure cases like regualtor failures.

[1] https://lkml.org/lkml/2015/9/7/62

Without this patch the kernel would carsh with log:
...
Unable to handle kernel paging request at virtual address 17d78410
pgd = ffffffc001a5c000
[17d78410] *pgd=00000000b6806003, *pud=00000000b6806003, *pmd=0000000000000000
Internal error: Oops: 96000005 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 6 Comm: kworker/u8:0 Not tainted 4.4.0+ #48
Hardware name: Qualcomm Technologies, Inc. APQ 8016 SBC (DT)
Workqueue: deferwq deferred_probe_work_func
task: ffffffc03686e900 ti: ffffffc0368b0000 task.ti: ffffffc0368b0000
PC is at raw_notifier_chain_register+0x1c/0x44
LR is at extcon_register_notifier+0x88/0xc8
pc : [<ffffffc0000da43c>] lr : [<ffffffc000606298>] pstate: 80000085
sp : ffffffc0368b3a70
x29: ffffffc0368b3a70 x28: ffffffc03680c310
x27: ffffffc035518000 x26: ffffffc035518000
x25: ffffffc03bfa20e0 x24: ffffffc035580a18
x23: 0000000000000000 x22: ffffffc035518458
x21: ffffffc0355e9a60 x20: ffffffc035518000
x19: 0000000000000000 x18: 0000000000000028
x17: 0000000000000003 x16: ffffffc0018153c8
x15: 0000000000000001 x14: ffffffc03686f0f8
x13: ffffffc03686f0f8 x12: 0000000000000003
x11: 0000000000000001 x10: 0000000000000001
x9 : ffffffc03686f0f8 x8 : 0000e3872014c1a1
x7 : 0000000000000028 x6 : 0000000000000000
x5 : 0000000000000001 x4 : 0000000000000000
x3 : 00000000354fb170 x2 : 0000000017d78400
x1 : ffffffc0355e9a60 x0 : ffffffc0354fb268

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoarm: dts: apq8064: fix clock names according to new rpmcc
Srinivas Kandagatla [Thu, 10 Dec 2015 12:00:23 +0000 (12:00 +0000)]
arm: dts: apq8064: fix clock names according to new rpmcc

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agodts: qcom: Add CoreSight components for APQ8064
Ivan T. Ivanov [Fri, 11 Sep 2015 11:48:23 +0000 (14:48 +0300)]
dts: qcom: Add CoreSight components for APQ8064

Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
8 years agoARM: dts: ERAGON: fix uart pinctrl
Srinivas Kandagatla [Mon, 7 Dec 2015 16:45:15 +0000 (16:45 +0000)]
ARM: dts: ERAGON: fix uart pinctrl

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoarm: dts: qcom: apq8064: Add fixed rate on-board oscillators
Georgi Djakov [Mon, 7 Dec 2015 15:24:10 +0000 (15:24 +0000)]
arm: dts: qcom: apq8064: Add fixed rate on-board oscillators

Currently the rates of the xo and sleep clocks are hard-coded in the
GCC driver, but this is a board layout description that actually should
be in the DT. Moving them into DT also allows us to insert the RPM
controlled clocks between the DT and GCC clocks.

8 years agoarm: dts: qcom: apq8064: Add RPMCC DT node
Georgi Djakov [Thu, 3 Dec 2015 14:02:56 +0000 (16:02 +0200)]
arm: dts: qcom: apq8064: Add RPMCC DT node

Add the RPM Clock Controller DT node.

Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
8 years agodts: arm: add support to digital audio via dsp
Srinivas Kandagatla [Thu, 3 Dec 2015 14:56:45 +0000 (14:56 +0000)]
dts: arm: add support to digital audio via dsp

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoarm: dts: apq8064: add support to smd apr_audio svc channel
Srinivas Kandagatla [Thu, 3 Dec 2015 10:42:02 +0000 (10:42 +0000)]
arm: dts: apq8064: add support to smd apr_audio svc channel

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agodts: arm: apq8064: add support to q6 pil via pil-tz
Srinivas Kandagatla [Thu, 3 Dec 2015 10:37:04 +0000 (10:37 +0000)]
dts: arm: apq8064: add support to q6 pil via pil-tz

This patch adds support to q6 firmware loading using the tz-pil driver.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agoiommu: qcom: v1: move iommu-sec pgtable allocation
Stanimir Varbanov [Tue, 12 Jan 2016 13:07:55 +0000 (15:07 +0200)]
iommu: qcom: v1: move iommu-sec pgtable allocation

move the allocation of iommu-sec page table into msm_iommu_dev
in order to use properly initialised struct device.
The dma_alloc_attrs would fail to allocate memory with the fake
struct device which was the case before this change.

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
8 years agomedia: vidc: venc/vdec: vb2 structure reorganisation
Stanimir Varbanov [Mon, 11 Jan 2016 10:48:28 +0000 (12:48 +0200)]
media: vidc: venc/vdec: vb2 structure reorganisation

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
8 years agomedia: vidc: debug: fix build warnings
Stanimir Varbanov [Tue, 12 Jan 2016 13:27:58 +0000 (15:27 +0200)]
media: vidc: debug: fix build warnings

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
8 years agokernel: configs: Enable input misc device drivers
Ivan T. Ivanov [Fri, 18 Sep 2015 08:50:08 +0000 (11:50 +0300)]
kernel: configs: Enable input misc device drivers

Enable drivers which handle PMIC's input events.

Signed-off-by: Ivan T. Ivanov <ivan.ivanov@linaro.org>
8 years agokernel: configs: update distro config from release branch
Srinivas Kandagatla [Wed, 16 Sep 2015 16:08:51 +0000 (17:08 +0100)]
kernel: configs: update distro config from release branch

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
8 years agokernel: configs: improve distro.config, mostly for systemd
Nicolas Dechesne [Wed, 29 Jul 2015 13:03:15 +0000 (15:03 +0200)]
kernel: configs: improve distro.config, mostly for systemd

* add missing options required/optional for systemd
http://cgit.freedesktop.org/systemd/systemd/tree/README
Some options were enabled by default in arch/arm64/defconfig, but not in
arch/arm/multi_v7_defconfig..

* rework/move the options to separate out systemd configs

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agokernel: configs: update distro.config
Nicolas Dechesne [Wed, 29 Jul 2015 12:26:49 +0000 (14:26 +0200)]
kernel: configs: update distro.config

Add recent updates from 15.07 release.

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agokernel: configs: move linaro distro.conf as proper %.config fragment
Nicolas Dechesne [Wed, 29 Jul 2015 08:47:06 +0000 (10:47 +0200)]
kernel: configs: move linaro distro.conf as proper %.config fragment

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agolinaro: add defconfig fragment with basic linaro config
Nicolas Dechesne [Mon, 6 Jul 2015 08:51:25 +0000 (10:51 +0200)]
linaro: add defconfig fragment with basic linaro config

In order to ease kernel configuration, we are now using kernel config
fragments. In the folder linaro/configs, we will add fragments as needed with
all configurations that are required when using the Linaro kernel releases.

Users are expected to run the following command to properly configure their
kernel tree prior to the build:

./scripts/kconfig/merge_config.sh arch/arm64/configs/defconfig \
                                  linaro/configs/distro.conf \
                                  [-O <build-dir>]

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
8 years agowcn36xx: avoid alloc mem with GFP_KERNEL in smd callback.
Yin, Fengwei [Wed, 16 Sep 2015 15:37:31 +0000 (23:37 +0800)]
wcn36xx: avoid alloc mem with GFP_KERNEL in smd callback.

which will trigger warning when lockdep debugging is enabled.

Signed-off-by: Yin, Fengwei <fengwei.yin@linaro.org>