Commit graph

884,398 commits

Author SHA1 Message Date
Thinh Nguyen
5d1c891218 usb: dwc3: gadget: Remove unnecessary checks
Remove 2 unnecessary checks:
1) A request in the started_list must have its trb field set. So
checking for req->trb is unnecessary.

2) An endpoint must have started (and have not ended) for the request to
still be in the started_list. There's no point to check if the endpoint
is started. We had this check because previously the driver didn't
handle the endpoint's started/ended flags for END_TRANSFER command
properly. See commit 9f45581f5e ("usb: dwc3: gadget: early giveback
if End Transfer already completed").

Change-Id: I5d55f02d25abe06d5601730f1d1d88ee24809d2c
Signed-off-by: Thinh Nguyen <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Git-commit: 8411993e79df8e54da67613025d620a8a23a24fe
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Mayank Rana <[email protected]>
2020-06-15 20:16:49 -07:00
Thinh Nguyen
db3765662a usb: dwc3: gadget: Check for in-progress END_TRANSFER
While handling TRBs completion, if a END_TRANSFER command isn't
completed, don't kick new transfer or issue END_TRANSFER command.

Change-Id: Ic1d6b942c6c7993165d574dcc70078fb269365dd
Signed-off-by: Thinh Nguyen <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Git-commit: b6842d4938c3101cb54dc262a6a89a5445f8fba8
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Mayank Rana <[email protected]>
2020-06-15 20:12:28 -07:00
Chris Lew
d5e3b87efb neuron: ch_haven: Add support for svm device tree format
The secondary vm device tree will have a different format than the
primary vm. Try parsing the node as a secondary vm node if the
shared-buffer region does not exist.

Change-Id: Id794a1b21507329f4e16f1335a17a2262ecabd5a
Signed-off-by: Chris Lew <[email protected]>
2020-06-15 19:52:25 -07:00
Chris Lew
66af98dc3f neuron: ch_haven: Add memory sharing support
The carved out or allocated memory may not be configured to be
accessible by both the owner and consumer vms. Add support to share
memory through hyp_assign_phy() and assign a label to the resultant
memparcel through hh_rm_mem_qcom_lookup_sgl().

This sharing sequence should only be done by the owner of the reserved
memory region. Currently we indicate this with the qcom,primary tag in
device tree.

Change-Id: Idf5658ab4cf0d1c022f6b919914a8e782318c8d7
Signed-off-by: Chris Lew <[email protected]>
2020-06-15 19:52:25 -07:00
Chris Lew
6826400d8d neuron: ch_haven: Store haven label for future use
Store the haven label so it can be used for other haven resources such
as attaching it to memparcels that are shared.

Change-Id: I90717bc7d158fb73ecb4442ede3c5d476f3d2045
Signed-off-by: Chris Lew <[email protected]>
2020-06-15 19:52:25 -07:00
Chris Lew
0fc1e59781 neuron: ch_haven: Read peer name from device tree
Add support for the primary vm to read the vm peer name from device
tree. This information is needed to share memory to the peer vm.

Change-Id: I9a38370c8b80480bcdd0988c515adf64b36f99c1
Signed-off-by: Chris Lew <[email protected]>
2020-06-15 19:52:25 -07:00
Chris Lew
7c177596a8 soc: qcom: guestvm_loader: Wait for ready state before start
The ready state gives clients in the primary vm a chance to share
resources before the vm is started and set to running state. This
window is currently missing because guestvm_loader starts the vm
directly after subsystem_get().

Make the guestvm boot code wait for the HH_RM_VM_STATUS_READY callback
before starting the vm. This allows drivers that need to share
resources a chance to do so instead of racing with guestvm_loader.
Drivers can register with the rm notifier chain at a higher priority
than 0 to be called first.

This change can eventually be replaced by a separate driver or notifier
chain managed by guestvm_loader to provide better synchronization
methods compared to notifier chain priority.

Change-Id: I0fb3c5c41957381b31fa652deec0d6d51a41e6ef
Signed-off-by: Chris Lew <[email protected]>
2020-06-15 19:52:25 -07:00
Pavankumar Kondeti
f6c1bf1f02 sched/walt: Fix negative count of sched_asym_cpucapacity static key
The current code sets per-cpu variable sd_asym_cpucapacity while
building sched domains even when there are no asymmetric CPUs.
This is done to make sure that EAS remains enabled on a b.L system
after hotplugging out all big/LITTLE CPUs. However it is causing
the below warning during CPU hotplug.

[13988.932604] pc : static_key_slow_dec_cpuslocked+0xe8/0x150
[13988.932608] lr : static_key_slow_dec_cpuslocked+0xe8/0x150
[13988.932610] sp : ffffffc010333c00
[13988.932612] x29: ffffffc010333c00 x28: ffffff8138d88088
[13988.932615] x27: 0000000000000000 x26: 0000000000000081
[13988.932618] x25: ffffff80917efc80 x24: ffffffc010333c60
[13988.932621] x23: ffffffd32bf09c58 x22: 0000000000000000
[13988.932623] x21: 0000000000000000 x20: ffffff80917efc80
[13988.932626] x19: ffffffd32bf0a3e0 x18: ffffff8138039c38
[13988.932628] x17: ffffffd32bf2b000 x16: 0000000000000050
[13988.932631] x15: 0000000000000050 x14: 0000000000040000
[13988.932633] x13: 0000000000000178 x12: 0000000000000001
[13988.932636] x11: 16a9ca5426841300 x10: 16a9ca5426841300
[13988.932639] x9 : 16a9ca5426841300 x8 : 16a9ca5426841300
[13988.932641] x7 : 0000000000000000 x6 : ffffff813f4edadb
[13988.932643] x5 : 0000000000000000 x4 : 0000000000000004
[13988.932646] x3 : ffffffc010333880 x2 : ffffffd32a683a2c
[13988.932648] x1 : ffffffd329355498 x0 : 000000000000001b
[13988.932651] Call trace:
[13988.932656]  static_key_slow_dec_cpuslocked+0xe8/0x150
[13988.932660]  partition_sched_domains_locked+0x1f8/0x80c
[13988.932666]  sched_cpu_deactivate+0x9c/0x13c
[13988.932670]  cpuhp_invoke_callback+0x6ac/0xa8c
[13988.932675]  cpuhp_thread_fun+0x158/0x1ac
[13988.932678]  smpboot_thread_fn+0x244/0x3e4
[13988.932681]  kthread+0x168/0x178
[13988.932685]  ret_from_fork+0x10/0x18

The mismatch between increment/decrement of sched_asym_cpucapacity
static key is resulting in the above warning. It is due to
the fact that the increment happens only when the system really
has asymmetric capacity CPUs. This check is done by going through
each CPU capacity. So when system becomes SMP during hotplug,
the increment never happens. However the decrement of this static
key is done when any of the currently online CPU has per-cpu variable
sd_asym_cpucapacity value as non-NULL. Since we always set this
variable, we run into this issue.

Our goal was to enable EAS on SMP. To achieve that enable EAS and
build perf domains (required for compute energy) irrespective
of per-cpu variable sd_asym_cpucapacity value. In this way we
no longer have to enable sched_asym_cpucapacity feature on SMP
to enable EAS.

Change-Id: Id46f2b80350b742c75195ad6939b814d4695eb07
Signed-off-by: Pavankumar Kondeti <[email protected]>
2020-06-16 08:14:09 +05:30
Pavankumar Kondeti
4e2c7c3979 sched/fair: Depend on sched_asym_cpucapacity for new ilb
We have made the new idle CPU selection for load balance energy
aware. For example, if a silver CPU does not have any misfit
tasks but is overloaded, we have to select a silver CPU not
gold CPU. However, this extra checks are needed only when the
system has asymmetric capacity CPUs. So we should depend on
sched_asym_cpucapacity feature instead of sched_energy_present.
Later patches enable sched_energy_present for SMP systems also.

Change-Id: Ie4fae9d1c17511f15b48b92dd61395d1689e1612
Signed-off-by: Pavankumar Kondeti <[email protected]>
2020-06-16 08:14:01 +05:30
Siddharth Gupta
33631c0937 aarch64: ABI: Update snapshot with newer libabigail version
Update the ABI snapshot to use the latest version of libabigail(67d4c4cf).
This is required for the checker docker image to be updated.

Change-Id: I1b875122a1d71478723158b8334ad03a97a9c32a
Signed-off-by: Siddharth Gupta <[email protected]>
2020-06-15 17:56:04 -07:00
Gaurav Kashyap
0e577cd853 scsi: ufshcd-crypto-qti.c: do not resume for key reprogram
When reprogram_all_keys is called from keyslot manager, it is
done as part of the ufs resume context. This will cause a hang
when keyslot program tries to do a resume again. Avoid doing a
resume if keyslot program is called from resume context.

Change-Id: I336fd580885d8e26ec9bf3fafe13e30404ba3ac5
Signed-off-by: Gaurav Kashyap <[email protected]>
2020-06-15 16:59:44 -07:00
Trilok Soni
240299db4d scripts: headers_install: Turn CONFIG_* leak checker to report error
By default CONFIG_* user-space leak checker marks it as warning but
we should mark them as error so that we can catch such usage at the
compile time itself.

Change-Id: I5f14f7f881e46843f2e0cc0957fc0b730e76aa93
Signed-off-by: Trilok Soni <[email protected]>
2020-06-15 12:37:25 -07:00
Trilok Soni
d14b0a93fa scripts: headers_install: Add sysstats.h and taskstats.h into the bypass list
Add sysstats.h taskstats.h into the temporary bypass list. It should be removed
later once the CONFIG_* checks gets merged.

CRs-Fixed: 2664401
Change-Id: Icfedb19b22dcf59d4ae0e8d7bd9fddfc762d9731
Signed-off-by: Trilok Soni <[email protected]>
2020-06-15 12:36:28 -07:00
Asutosh Das
ab3e3b4bed scsi: ufs: Fixes line-reset and adapt sequence
Fix adapt sequence for G4 and don't dump registers
on Line-reset.

Change-Id: Ibbe09d75c1655d2400878305e7b38e7e2f744e52
Signed-off-by: Asutosh Das <[email protected]>
2020-06-15 11:39:09 -07:00
qctecmdr
bbc7f2d3ed Merge "ion: Add support for the display non-secure CMA heap" 2020-06-15 09:59:41 -07:00
qctecmdr
46c87ffa77 Merge "msm: kgsl: Use BW_STEP as 50 for AB voting" 2020-06-15 09:59:40 -07:00
qctecmdr
57af170498 Merge "arm64: enable internal regdb for lahaina" 2020-06-15 09:59:40 -07:00
qctecmdr
0dce8a9d5e Merge "Use data format as unspecified for voice" 2020-06-15 09:59:40 -07:00
Gaurav Kashyap
9e7a7ecdc7 ANDROID: scsi: ufs: Handle clocks when lrbp fails
Release UFS clocks when ufshcd_prepare_lrbp_crypto fails
for any reason.
Bug: 157284579.

Change-Id: I1dd28ffea9379b58c55a948a6365e0b153249516
Git-repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Gaurav Kashyap <[email protected]>
2020-06-15 09:32:17 -07:00
Satish Kodishala
30b53d277a Use data format as unspecified for voice
For voice usecases, while opening the slimbus
slave ports, currently data format LPCM(1) is used.
SB master uses data format as unspecified(0). SB master's
data format overwrites the slave side configuration.
In the rare cases, this mismatch may lead to pop sound
in SCO Tx(BT FW->LPASS) at the very beginning when
voice is switched from speaker/handset to BT from call UI.
To fix this, use the data format as unspecified during
opening of the slimbus slave ports for voice cases.

CRs-Fixed: 2710472
Change-Id: Ia9b1d23cbf04d1b8056d7b7f7c84a066437e1682
Signed-off-by: Satish Kodishala <[email protected]>
2020-06-15 07:12:03 -07:00
Maciej Żenczykowski
705e3783b7 ANDROID: net: bpf: permit redirect from ingress L3 to egress L2 devices at near max mtu
__bpf_skb_max_len(skb) is used from:
  bpf_skb_adjust_room
  __bpf_skb_change_tail
  __bpf_skb_change_head

but in the case of forwarding we're likely calling these functions
during receive processing on ingress and bpf_redirect()'ing at
a later point in time to egress on another interface, thus these
mtu checks are for the wrong device (input instead of output).

This is particularly problematic if we're receiving on an L3 1500 mtu
cellular interface, trying to add an L2 header and forwarding to
an L3 mtu 1500 mtu wifi/ethernet device (which is thus L2 1514).

The mtu check prevents us from adding the 14 byte ethernet header prior
to forwarding the packet.

After the packet has already been redirected, we'd need to add
an additional 2nd ebpf program on the target device's egress tc hook,
but then we'd also see non-redirected traffic and have no easy
way to tell apart normal egress with ethernet header packets
from forwarded ethernet headerless packets.

Link: https://patchwork.ozlabs.org/project/netdev/patch/[email protected]/
But note that a more thorough solution will be pursued.

CRs-Fixed: 2662725
Bug: 149816401
Change-Id: If55a144d7822e23bce85f65897bca7de4e0f9b24
Cc: Alexei Starovoitov <[email protected]>
Cc: Jakub Kicinski <[email protected]>
Signed-off-by: Maciej Żenczykowski <[email protected]>
Git-commit: af2b56c502d697a237757aa36b5d5523b29702fa
Git-repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Subash Abhinov Kasiviswanathan <[email protected]>
2020-06-15 08:09:10 -06:00
qctecmdr
19a5a7fa3b Merge "iommu: arm-smmu: Add support for new attributes" 2020-06-15 06:15:40 -07:00
qctecmdr
df997bf3be Merge "cnss2: Ignore debugfs non availability during init" 2020-06-15 06:15:39 -07:00
qctecmdr
766387ed99 Merge "power: qti_battery_charger: call power_supply_changed() if fake_soc is set" 2020-06-15 06:15:39 -07:00
qctecmdr
c8bbc5bda6 Merge "msm: kgsl: Enable IFPC on A660 target" 2020-06-15 06:15:39 -07:00
qctecmdr
9a94640833 Merge "lib: stackdepot: Add support to configure STACK_HASH_SIZE" 2020-06-15 06:15:38 -07:00
qctecmdr
da16bbb59f Merge "soc: qcom: mem-buf: Add support for consumers to import dma-bufs" 2020-06-15 06:15:37 -07:00
qctecmdr
514fa165a3 Merge "taskstats: handle NULL nla case in taskstats2" 2020-06-15 02:08:40 -07:00
qctecmdr
3309ec470b Merge "clk: qcom: videocc: Update frequency table of video_cc_mvs0_clk_src" 2020-06-15 02:08:39 -07:00
qctecmdr
1806fc87aa Merge "ABI: Update internal whitelist with debugfs symbols" 2020-06-15 02:08:39 -07:00
qctecmdr
5655d2b2cc Merge "genirq/cpuhotplug: Reduce logging level for couple of prints" 2020-06-15 02:08:39 -07:00
qctecmdr
eac6ffcdf1 Merge "uapi: sound: add support for TTP render mode" 2020-06-15 02:08:38 -07:00
qctecmdr
c122110c39 Merge "build.config: Add build.config files for Lahaina" 2020-06-15 02:08:38 -07:00
qctecmdr
8b9a1aa61f Merge "dma-mapping-fast: reduce TLBI during map" 2020-06-15 02:08:38 -07:00
qctecmdr
1b86a92815 Merge "scsi: ufs-qcom: Remove unnecessary devm_kfree" 2020-06-15 02:08:37 -07:00
Deepak Kumar
04ec9fc196 msm: kgsl: Use BW_STEP as 50 for AB voting
AB voting is done in multiples of BW_STEP. Using a big
BW_STEP can result in AB overvoting because of roundup.
Use BW_STEP as 50 instead of 160. This will reduce AB
overvoting and will improve power.

Change-Id: Ieff338685be9650218fd7accc4ed3bcf0d2756ec
Signed-off-by: Deepak Kumar <[email protected]>
2020-06-15 13:03:22 +05:30
qctecmdr
acc5971e09 Merge "mmc: sdhci_msm: keep a reference to the sdhc host instance" 2020-06-14 20:37:55 -07:00
qctecmdr
773bbee1f1 Merge "msm: kgsl: PERFCNTR_CTRL needs to be at end of restore list" 2020-06-14 20:37:55 -07:00
qctecmdr
978ed221d8 Merge "qcom: whitelist: Remove symbol from whitelist" 2020-06-14 20:37:54 -07:00
qctecmdr
a925659342 Merge "msm: synx: default user callback fix" 2020-06-14 20:37:54 -07:00
qctecmdr
acaddaaadd Merge "defconfig: Update initial defconfig fragments for Holi" 2020-06-14 20:37:54 -07:00
qctecmdr
55235dfe2c Merge "pci: controller: msm: Remove support for loopback" 2020-06-14 20:37:54 -07:00
qctecmdr
e69d2cded7 Merge "ABI: Update rmnet_ctl symbols" 2020-06-14 11:32:34 -07:00
qctecmdr
cdfa64e6ac Merge "arm64: defconfig: enable USB redriver on Lahaina QRD" 2020-06-14 11:32:34 -07:00
qctecmdr
177466fc36 Merge "PM / devfreq: bw_hwmon: remove unused variable" 2020-06-14 11:32:33 -07:00
qctecmdr
756620e2bb Merge "uapi: qg: Fix UAPI header to enable UAPI_HEADER_TEST" 2020-06-14 11:32:33 -07:00
qctecmdr
1e20a25a5b Merge "ion: Derive CMA buffer struct page without using priv_virt" 2020-06-14 11:32:33 -07:00
qctecmdr
75a9e21c8d Merge "net: qrtr: Use radix_tree_iter_delete" 2020-06-14 11:32:33 -07:00
qctecmdr
d38c3e9e52 Merge "mhi: core: Trigger host resume if client requests device vote" 2020-06-14 11:32:32 -07:00
qctecmdr
1034f3b8dc Merge "usb: dwc3: gadget: Avoid spuriously printing NO_PULLUP in log" 2020-06-14 11:32:32 -07:00