Commit graph

893,190 commits

Author SHA1 Message Date
Srinivasarao P
4b36ee81fb Merge android11-5.4.61+ (158eae7) into msm-5.4
* refs/heads/tmp-158eae7:
  ANDROID: ABI: update symbols of unisoc whitelist
  ANDROID: usb: f_accessory: Don't drop NULL reference in acc_disconnect()
  ANDROID: usb: f_accessory: Avoid bitfields for shared variables
  ANDROID: usb: f_accessory: Cancel any pending work before teardown
  ANDROID: usb: f_accessory: Don't corrupt global state on double registration
  ANDROID: usb: f_accessory: Fix teardown ordering in acc_release()
  ANDROID: usb: f_accessory: Add refcounting to global 'acc_dev'
  ANDROID: usb: f_accessory: Wrap '_acc_dev' in get()/put() accessors
  ANDROID: usb: f_accessory: Remove useless assignment
  ANDROID: usb: f_accessory: Remove useless non-debug prints
  ANDROID: usb: f_accessory: Remove stale comments
  ANDROID: USB: f_accessory: Check dev pointer before decoding ctrl request
  ANDROID: Update abi_gki_aarch64_goldfish
  UPSTREAM: driver core: Fix lockdep warning on wfs_lock
  ANDROID: ABI: update allowed list for galaxy
  UPSTREAM: arm64: pgtable: Fix pte_accessible()
  ANDROID: ABI: Update allowed list for QCOM
  ANDROID: ABI: add symbols of __dynamic_netdev_dbg to unisoc

 Conflicts:
	drivers/usb/gadget/function/f_accessory.c

Change-Id: I34e2a1fe4e8011c320909802514eae4d2ae8d805
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2021-01-08 23:52:57 +05:30
jian.gong
158eae7173 ANDROID: ABI: update symbols of unisoc whitelist
Update whitelist for the symbols used by the unisoc device and
updates the ABI representation accordingly

Leaf changes summary: 11 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 10 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

10 Added functions:

  [A] 'function void clocks_calc_mult_shift(unsigned int*, unsigned int*, unsigned int, unsigned int, unsigned int)'
  [A] 'function void cpufreq_add_update_util_hook(int, update_util_data*, void (update_util_data*, typedef u64, unsigned int)*)'
  [A] 'function void cpufreq_remove_update_util_hook(int)'
  [A] 'function kobject* get_governor_parent_kobj(cpufreq_policy*)'
  [A] 'function void gov_attr_set_get(gov_attr_set*, list_head*)'
  [A] 'function void gov_attr_set_init(gov_attr_set*, list_head*)'
  [A] 'function unsigned int gov_attr_set_put(gov_attr_set*, list_head*)'
  [A] 'function bool have_governor_per_policy()'
  [A] 'function void irq_work_sync(irq_work*)'
  [A] 'function mbox_chan* mbox_request_channel_byname(mbox_client*, const char*)'

1 Added variable:

  [A] 'const sysfs_ops governor_sysfs_ops'

Bug: 175337500
Change-Id: Ibca2d9ef71b8f91e0ea62de4509f75ee902d30a4
Signed-off-by: jian.gong <jian.gong@unisoc.com>
2021-01-06 12:28:24 +00:00
Will Deacon
39327dc306 ANDROID: usb: f_accessory: Don't drop NULL reference in acc_disconnect()
If get_acc_dev() fails to obtain a reference to the current device,
acc_disconnect() will attempt to put_acc_dev() with the resulting NULL
pointer, leading to a crash:

 | Unable to handle kernel NULL pointer dereference at virtual address 00000074
 | [...]
 | [<c0abb288>] (acc_disconnect) from [<c0a91a38>] (android_disconnect+0x1c/0x7c)
 | [<c0a91a38>] (android_disconnect) from [<c0a93958>] (usb_gadget_udc_reset+0x10/0x34)
 | [<c0a93958>] (usb_gadget_udc_reset) from [<c0a4a9c4>] (dwc3_gadget_reset_interrupt+0x88/0x4fc)
 | [<c0a4a9c4>] (dwc3_gadget_reset_interrupt) from [<c0a491f8>] (dwc3_process_event_buf+0x60/0x3e4)
 | [<c0a491f8>] (dwc3_process_event_buf) from [<c0a49180>] (dwc3_thread_interrupt+0x24/0x3c)
 | [<c0a49180>] (dwc3_thread_interrupt) from [<c02b3404>] (irq_thread_fn+0x1c/0x58)
 | [<c02b3404>] (irq_thread_fn) from [<c02b326c>] (irq_thread+0x1ec/0x2f4)
 | [<c02b326c>] (irq_thread) from [<c0260804>] (kthread+0x1a8/0x1ac)
 | [<c0260804>] (kthread) from [<c0200138>] (ret_from_fork+0x14/0x3c)

Follow the pattern used elsewhere, and return early if we fail to obtain
a reference.

Bug: 173789633
Reported-by: YongQin Liu <yongqin.liu@linaro.org>
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I37a2bff5bc1b6b8269788d08191181763bf0e896
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:17 +00:00
Will Deacon
e0ea2cf766 ANDROID: usb: f_accessory: Avoid bitfields for shared variables
Using bitfields for shared variables is a "bad idea", as they require
a non-atomic read-modify-write to be generated by the compiler, which can
cause updates to unrelated bits in the same word to disappear.

Ensure the 'online' and 'disconnected' members of 'struct acc_dev' are
placed in separate variables by declaring them each as 'int'.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: Ia6031d82a764e83b2cc3502fbe5fb273511da752
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:17 +00:00
Will Deacon
13dd1a33bc ANDROID: usb: f_accessory: Cancel any pending work before teardown
Tearing down and freeing the 'acc_dev' structure when there is
potentially asynchronous work queued involving its member fields is
likely to lead to use-after-free issues.

Cancel any pending work before freeing the structure.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I68a91274aea18034637b738d558d043ac74fadf4
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:17 +00:00
Will Deacon
f0e78b6595 ANDROID: usb: f_accessory: Don't corrupt global state on double registration
If acc_setup() is called when there is already an allocated instance,
misc_register() will fail but the error path leaves a dangling pointer
to freed memory in the global 'acc_dev' state.

Fix this by ensuring that the refcount is zero before we start, and then
using a cmpxchg() from NULL to serialise any concurrent initialisers.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I2c26289dcce7dbc493964516c49b05d04aaa6839
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:17 +00:00
Will Deacon
7f7a5de5ec ANDROID: usb: f_accessory: Fix teardown ordering in acc_release()
acc_release() attempts to synchronise with acc_open() using an atomic
'open_excl' member in 'struct acc_dev'. Unfortunately, acc_release()
prematurely resets this atomic variable to zero, meaning there is a
potential race on 'dev->disconnected':

acc_open()				acc_release()
						atomic_xchg(open_excl), 0)
	atomic_xchg(open_excl, 1)
	dev->disconnected = 0;			dev->disconnected = 1;

Fix the race by ensuring that the 'disconnected' field is written
before clearing 'open_excl' in acc_release().

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: Ib9a21f2305f6d70de3e760da62dbfdd66889200a
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Will Deacon
cfe6761167 ANDROID: usb: f_accessory: Add refcounting to global 'acc_dev'
Add refcounting to track the lifetime of the global 'acc_dev' structure,
as the underlying function directories can be removed while references
still exist to the dev node.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I248408e890d01167706c329146d63b64a6456df6
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Will Deacon
62adf8c605 ANDROID: usb: f_accessory: Wrap '_acc_dev' in get()/put() accessors
The '_acc_dev' global variable is a fancy use-after-free factory. Wrap
it in some get()/put() functions in preparation for introducing some
refcounting.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I4c839627648c209341a81efa0c001c8d71b878d4
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Will Deacon
21d2a9d7c7 ANDROID: usb: f_accessory: Remove useless assignment
acc_alloc_inst() assigns to a local 'dev' variable, but then never uses
it. Remove the redundant assignment, and the local variable along with
it.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: Ide9c2e89fb12b846eb8739b302d1b742fc7eb6b5
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Will Deacon
82262d09f1 ANDROID: usb: f_accessory: Remove useless non-debug prints
Remove some useless print statements, as they can trivially be used to
spam the console and don't report anything meaningful.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: I28052010fc3ec033a2c99efeb3f6c919d54d75c2
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Will Deacon
4df304a4df ANDROID: usb: f_accessory: Remove stale comments
Neither acc_gadget_bind() nor acc_gadget_register_driver() exist, so
remove the stale comments that refer to them.

Bug: 173789633
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: If396ba3bcac3ca59c48e5a5faa0a8520534ed625
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Vijayavardhan Vennapusa
a917582672 ANDROID: USB: f_accessory: Check dev pointer before decoding ctrl request
In case of poweroff charging mode, accessory function instance
is not created and due to this, _acc_dev will be NULL. If target
is connected to Accessory dock in poweroff charging mode, there
is a chance dev pointer is accessed, which is NULL. Hence add a
check before processing control request and return error if it is
NULL.

Bug: 141002587
Change-Id: I4f1deb9d764b8c0bd1d7837cbc43a2933167f568
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Signed-off-by: Giuliano Procida <gprocida@google.com>
2021-01-06 09:21:16 +00:00
Roman Kiryanov
d61ede24cb ANDROID: Update abi_gki_aarch64_goldfish
Fixes `virtio_wifi: Unknown symbol ieee80211_tx_status_ext (err -2)`

build/abi/extract_symbols out/android11-5.4/dist/ --whitelist common/android/abi_gki_aarch64_goldfish

Bug: 176831960
Test: none
Signed-off-by: Roman Kiryanov <rkir@google.com>
Change-Id: I07671dd29079588cad5e3984427a8ca0ad389e9a
2021-01-05 16:39:01 -08:00
Saravana Kannan
c29fbd7cd7 UPSTREAM: driver core: Fix lockdep warning on wfs_lock
There's a potential deadlock with the following cycle:
wfs_lock --> device_links_lock --> kn->count

Fix this by simply dropping the lock around a list_empty() check that's
just exported to a sysfs file. The sysfs file output is an instantaneous
check anyway and the lock doesn't really add any protection.

Lockdep log:

[   48.808132]
[   48.808132] the existing dependency chain (in reverse order) is:
[   48.809069]
[   48.809069] -> #2 (kn->count){++++}:
[   48.809707]        __kernfs_remove.llvm.7860393000964815146+0x2d4/0x460
[   48.810537]        kernfs_remove_by_name_ns+0x54/0x9c
[   48.811171]        sysfs_remove_file_ns+0x18/0x24
[   48.811762]        device_del+0x2b8/0x5a8
[   48.812269]        __device_link_del+0x98/0xb8
[   48.812829]        device_links_driver_bound+0x210/0x2d8
[   48.813496]        driver_bound+0x44/0xf8
[   48.814000]        really_probe+0x340/0x6e0
[   48.814526]        driver_probe_device+0xb8/0x100
[   48.815117]        device_driver_attach+0x78/0xb8
[   48.815708]        __driver_attach+0xe0/0x194
[   48.816255]        bus_for_each_dev+0xa8/0x11c
[   48.816816]        driver_attach+0x24/0x30
[   48.817331]        bus_add_driver+0x100/0x1e0
[   48.817880]        driver_register+0x78/0x114
[   48.818427]        __platform_driver_register+0x44/0x50
[   48.819089]        0xffffffdbb3227038
[   48.819551]        do_one_initcall+0xd8/0x1e0
[   48.820099]        do_init_module+0xd8/0x298
[   48.820636]        load_module+0x3afc/0x44c8
[   48.821173]        __arm64_sys_finit_module+0xbc/0xf0
[   48.821807]        el0_svc_common+0xbc/0x1d0
[   48.822344]        el0_svc_handler+0x74/0x98
[   48.822882]        el0_svc+0x8/0xc
[   48.823310]
[   48.823310] -> #1 (device_links_lock){+.+.}:
[   48.824036]        __mutex_lock_common+0xe0/0xe44
[   48.824626]        mutex_lock_nested+0x28/0x34
[   48.825185]        device_link_add+0xd4/0x4ec
[   48.825734]        of_link_to_suppliers+0x158/0x204
[   48.826347]        of_fwnode_add_links+0x50/0x64
[   48.826928]        device_link_add_missing_supplier_links+0x90/0x11c
[   48.827725]        fw_devlink_resume+0x58/0x130
[   48.828296]        of_platform_default_populate_init+0xb4/0xd0
[   48.829030]        do_one_initcall+0xd8/0x1e0
[   48.829578]        do_initcall_level+0xb8/0xcc
[   48.830137]        do_basic_setup+0x60/0x7c
[   48.830662]        kernel_init_freeable+0x128/0x1ac
[   48.831275]        kernel_init+0x18/0x29c
[   48.831781]        ret_from_fork+0x10/0x18
[   48.832297]
[   48.832297] -> #0 (wfs_lock){+.+.}:
[   48.832922]        __lock_acquire+0xe04/0x2e20
[   48.833480]        lock_acquire+0xbc/0xec
[   48.833984]        __mutex_lock_common+0xe0/0xe44
[   48.834577]        mutex_lock_nested+0x28/0x34
[   48.835136]        waiting_for_supplier_show+0x3c/0x98
[   48.835781]        dev_attr_show+0x48/0xb4
[   48.836295]        sysfs_kf_seq_show+0xe8/0x184
[   48.836864]        kernfs_seq_show+0x48/0x8c
[   48.837401]        seq_read+0x1c8/0x600
[   48.837884]        kernfs_fop_read+0x68/0x204
[   48.838431]        __vfs_read+0x60/0x214
[   48.838925]        vfs_read+0xbc/0x15c
[   48.839397]        ksys_read+0x78/0xe4
[   48.839869]        __arm64_sys_read+0x1c/0x28
[   48.840416]        el0_svc_common+0xbc/0x1d0
[   48.840953]        el0_svc_handler+0x74/0x98
[   48.841490]        el0_svc+0x8/0xc
[   48.841917]
[   48.841917] other info that might help us debug this:
[   48.841917]
[   48.842920] Chain exists of:
[   48.842920]   wfs_lock --> device_links_lock --> kn->count
[   48.842920]
[   48.844152]  Possible unsafe locking scenario:
[   48.844152]
[   48.844895]        CPU0                    CPU1
[   48.845463]        ----                    ----
[   48.846032]   lock(kn->count);
[   48.846417]                                lock(device_links_lock);
[   48.847203]                                lock(kn->count);
[   48.847902]   lock(wfs_lock);
[   48.848276]
[   48.848276]  *** DEADLOCK ***

Reported-by: Cheng-Jui.Wang@mediatek.com
Signed-off-by: Saravana Kannan <saravanak@google.com>
Link: https://lore.kernel.org/r/20201104205431.3795207-1-saravanak@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 171536500
(cherry picked from commit 7008e58c63bc8468e8d16154e25d780198b3ecfc)
Change-Id: Icb98a270d6ff07bcc81a2162ac00493fae6fafe6
2021-01-05 23:13:30 +00:00
Jeehong Kim
f85485b301 ANDROID: ABI: update allowed list for galaxy
Leaf changes summary: 3 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables

1 Added function:

  [A] 'function int tracepoint_probe_unregister(tracepoint*, void*, void*)'

2 Added variables:

  [A] 'tracepoint __tracepoint_android_vh_wq_lockup_pool'
  [A] 'rq runqueues'

Bug: 175649831

Signed-off-by: Jeehong Kim <jhez.kim@samsung.com>
Change-Id: I2e0c8591188e68f82bfbe97acba02aee875f9621
2021-01-04 01:25:39 +00:00
Srinivasarao P
b94fb2a794 Merge android11-5.4.61+ (662e2b3) into msm-5.4
* refs/heads/tmp-662e2b3:
  ANDROID: ABI: add allowed GKI symbol for Exynosauto SoC
  ANDROID: ABI: update allowed list for exynosauto SoC
  ANDROID: ABI: add symbols of gpiod_get to unisoc
  ANDROID: usb: gadget: f_accessory: fix CTS test stuck
  ANDROID: ABI: add allowed list for Exynosauto SoC
  ANDROID: ABI: update allowed list for exynosauto SoC
  ANDROID: sched: Export sched_setattr_nocheck

Change-Id: I7e5c88e1549c83f29881eed70b410f461d26e78c
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
2020-12-30 16:48:51 +05:30
qctecmdr
5183288436 Merge "defconfig: Enable SOCINFO config for sdxnightjar target" 2020-12-29 19:19:54 -08:00
qctecmdr
617a6ca32e Merge "drivers: lpm-levels: Return correct value while suspend" 2020-12-29 19:19:53 -08:00
qctecmdr
1bbfb84274 Merge "Merge android11-5.4.61+ (e0b1644) into msm-5.4" 2020-12-29 19:19:53 -08:00
qctecmdr
1ac401219b Merge "interconnect: qcom: Add OSM L3 support on SCSHRIKE" 2020-12-29 19:19:53 -08:00
qctecmdr
629b150b59 Merge "icnss2: Clear SMP2P data during SSR" 2020-12-29 19:19:52 -08:00
qctecmdr
d6c74bdc8a Merge "usb: f_gsi: Increase GPS EP maxpacket size to 64bytes" 2020-12-29 19:19:52 -08:00
qctecmdr
ddd209806d Merge "usb: f_gsi: Disable function remote wake-up capability for DPL" 2020-12-29 19:19:52 -08:00
qctecmdr
aeffceb7f7 Merge "cnss2: Add config to disable time sync feature" 2020-12-29 19:19:51 -08:00
qctecmdr
d8a0d0db56 Merge "cnss2: Use proper DMA mask based on device ID" 2020-12-29 19:19:51 -08:00
Will Deacon
a9911f2a9a UPSTREAM: arm64: pgtable: Fix pte_accessible()
pte_accessible() is used by ptep_clear_flush() to figure out whether TLB
invalidation is necessary when unmapping pages for reclaim. Although our
implementation is correct according to the architecture, returning true
only for valid, young ptes in the absence of racing page-table
modifications, this is in fact flawed due to lazy invalidation of old
ptes in ptep_clear_flush_young() where we elide the expensive DSB
instruction for completing the TLB invalidation.

Rather than penalise the aging path, adjust pte_accessible() to return
true for any valid pte, even if the access flag is cleared.

Bug: 176475096
Change-Id: Ifd7919b4e9b790a94802b0115f93a9a260757036
Cc: <stable@vger.kernel.org>
Fixes: 76c714be0e ("arm64: pgtable: implement pte_accessible()")
Reported-by: Yu Zhao <yuzhao@google.com>
Acked-by: Yu Zhao <yuzhao@google.com>
Reviewed-by: Minchan Kim <minchan@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20201120143557.6715-2-will@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
(cherry picked from commit 07509e10dcc77627f8b6a57381e878fe269958d3)
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-12-29 10:00:50 -08:00
Zhiqiang Tu
032e643834 ANDROID: ABI: Update allowed list for QCOM
Leaf changes summary: 0 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

Bug: 176306856
Change-Id: I52e0bbea0f41d97ca4241f6309babfad7dac82f8
Signed-off-by: Zhiqiang Tu <ztu@codeaurora.org>
2020-12-28 14:20:02 +00:00
qctecmdr
5bf38f9905 Merge "icc: dt-bindings: add endpoint IDs for interconnects for MONACO" 2020-12-27 17:54:23 -08:00
qctecmdr
502034be7b Merge "msm: pci: use local pointer for rpmsg_device while sending rpmsg" 2020-12-27 17:54:22 -08:00
qctecmdr
c75c3d980f Merge "usb: misc: nb7vpq904m: fix suspend/resume issue" 2020-12-27 17:54:22 -08:00
Naman Padhiar
bf935090f4 icnss2: Clear SMP2P data during SSR
Clear smp2p data during subsystem down to
prevent false smp2p notification to FW when
subsystem is up.

Change-Id: Iaa9a360e27a6e59d34ba9f02a28ce5dcf71ed0f5
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2020-12-24 20:19:23 -08:00
Chandana Kishori Chiluveru
87f4d33019 usb: f_gsi: Increase GPS EP maxpacket size to 64bytes
Currently usb driver is using 8 bytes request on interrupt endpoint
for all CDC functions. GPS host driver is expecting short packet/zero
length packet on interrupt endpoint and failing the transfer with 8 bytes
maxpacket. Increase the maxpacket size to 64 bytes so that host ends
the transfer with a short packet.

Change-Id: Icc9919fbd633468d3cc7d4d8ab1945730cdc7c06
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
2020-12-24 04:55:31 -08:00
jian.gong
8038bc2bb9 ANDROID: ABI: add symbols of __dynamic_netdev_dbg to unisoc
Add symbols of __dynamic_netdev_dbg to unisoc,
and updates the ABI representation accordingly.

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function void __dynamic_netdev_dbg(_ddebug*, const net_device*, const char*, ...)'

Bug: 160255258
Change-Id: I357d2f430fbe76f061fbc85919eaba9f95ce7e2e
Signed-off-by: jian.gong <jian.gong@unisoc.com>
2020-12-24 19:43:37 +08:00
Odelu Kukatla
299903dad6 icc: dt-bindings: add endpoint IDs for interconnects for MONACO
Add master and slave IDs for all Qualcomm Technologies, Inc. Monaco
interconnect providers which consumers can use to set bandwidth
constraints and find paths in the NoC (Network-On-Chip) topology.

Change-Id: Id2e816a74e382946c02345a5d1e39ed1d913ef90
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
2020-12-24 15:33:03 +05:30
qctecmdr
28255001cf Merge "spi: spi-msm-geni: Propagate missing change from 4.14 to 5.4" 2020-12-23 23:10:16 -08:00
qctecmdr
959b3a1fac Merge "msm: kgsl: Add apb_pclk to the clock list and increase KGSL_MAX_CLKS" 2020-12-23 23:10:16 -08:00
qctecmdr
a7f770af3b Merge "arm: defconfig: Enable interconnect driver for NIGHTJAR" 2020-12-23 23:10:15 -08:00
qctecmdr
475b0d24b7 Merge "usb: gsi: Allow suspend upon previous suspend failure in gsi_suspend" 2020-12-23 23:10:15 -08:00
qctecmdr
44abfd814c Merge "input: touchscreen: Enable Novatek nt36xxx Module" 2020-12-23 23:10:15 -08:00
Lijuan Gao
daae44ea12 defconfig: Enable SOCINFO config for sdxnightjar target
Enable SOCINFO config for sdxnightjar soc_id query.

Change-Id: Iaa59d03e3454d2d4278775ed4d89d13d71e9b65b
Signed-off-by: Lijuan Gao <lijuang@codeaurora.org>
2020-12-24 14:25:17 +08:00
Tushar Nimkar
019a94d233 drivers: lpm-levels: Return correct value while suspend
Currently lpm_suspend_enter and lpm_cpuidle_s2idle return
success always. This misleads on succcess and failure counts.

This change adds support to return correct value to caller.

Change-Id: I57dd0a4385f16f0e0aa1c92d602c0816ed358e2c
Signed-off-by: Tushar Nimkar <tnimkar@codeaurora.org>
2020-12-24 10:33:39 +05:30
Veera Vegivada
3dde3cb49e interconnect: qcom: Add OSM L3 support on SCSHRIKE
Add Operating State Manager (OSM) L3 interconnect provider support on
SCSHRIKE SoCs.

Change-Id: I69bd044422520601b121f260ff0cebf07d5a5220
Signed-off-by: Veera Vegivada <vvegivad@codeaurora.org>
2020-12-24 09:49:44 +05:30
Veera Vegivada
c680e4f46f interconnect: qcom: Refractor OSM L3 code
Refractor the OSM L3 driver to make it easy to extend for
other targets.

Change-Id: Id9e9ff3c2e9a299fcee8881c68f43649b866259b
Signed-off-by: Veera Vegivada <vvegivad@codeaurora.org>
2020-12-24 09:49:06 +05:30
Veera Vegivada
21b7e009d6 interconnect: qcom: Add SCSHRIKE interconnect provider driver
Introduce QTI SCSHRIKE specific provider driver using the
interconnect framework.

Change-Id: I16865c527a4e70d2e0e42f048bfa451a31027462
Signed-off-by: Veera Vegivada <vvegivad@codeaurora.org>
2020-12-24 09:46:57 +05:30
Nitesh Gupta
5fc6f0eef5 arm64: defconfig: Adding all CoreTech Defconfigs to Mainline 5.4
Changes Included:-
1.) PCIE:- 3172299 3197640
2.) USB:- 3186918 3325023
3.) BUSES:- 3198026
4.) STORAGE:- 3261577.

Change-Id: I69c4cded2463d78b31302673114f462fe4e88461
Signed-off-by: Nitesh Gupta <nitegupt@codeaurora.org>
2020-12-23 19:45:36 -08:00
Manu Gautam
3717aafa04 usb: f_gsi: Fix GSI enable logic for ADPL only composition
Driver enables GSI wrapper only if OUT EP is present in
GSI interface which is not the case with DPL function.
This logic works as long as there is another GSI function
present with OUT EP (e.g. RMNET/RNDIS). However, if ADPL is
the only GSI function in composition then driver does all
the EP specific programming in USB GSI wrapper but doesn't
enable it. Since, initial doorbell is rung by software, data
transfer does start but eventually stall happens as USB GSI
wrapper doesn't ring doorbell.
Fix it by not having an EP check while enabling GSI.

Change-Id: Ia40209d5a3f3b5947b13e8909ef9f994200f7a85
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
2020-12-23 08:52:39 -08:00
qctecmdr
265c742dd3 Merge "arm_scmi: cleanup the mailbox channels upon errors" 2020-12-23 04:18:09 -08:00
qctecmdr
17d38587c7 Merge "soc: qcom: smem: Add support for suspend to disk" 2020-12-23 04:18:09 -08:00
qctecmdr
9f01e9df06 Merge "mailbox: msm_qmp: Add support for suspend to disk" 2020-12-23 04:18:08 -08:00