Commit graph

892,914 commits

Author SHA1 Message Date
qctecmdr
56d2c7fe39 Merge "arm64: defconfig: Enable panic on corruption for holi" 2020-08-31 03:20:22 -07:00
Sayali Lokhande
06cc98c704 defconfig: lahaina: Enable F2FS_CHECK_FS for lahaina
This change enables CONFIG_F2FS_CHECK_FS to check FS
consistency at runtime and catch errors.

Change-Id: I58d4af96e3d48ad9a59e8f7273d81e96fa19f584
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2020-08-31 15:05:25 +05:30
Amar Singhal
77c45270a6 BACKPORT: cfg80211: Adjust 6 GHz frequency to channel conversion
Adjust the 6 GHz frequency to channel conversion function,
the other way around was previously handled.

Signed-off-by: Amar Singhal <asinghal@codeaurora.org>
Link: https://lore.kernel.org/r/1592599921-10607-1-git-send-email-asinghal@codeaurora.org
[rewrite commit message, hard-code channel 2]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 167126230
(cherry picked from commit 2d9b55508556ccee6410310fb9ea2482fd3328eb)
Change-Id: Ieb788ea5a5ad614651c1a2c83d2c0fc16a98e00f
Signed-off-by: Vamsi Krishna <vamsin@codeaurora.org>
2020-08-31 13:40:45 +05:30
Anirudh Ghayal
208e1c5457 power: smb5-lib: Use the unlocked version votable for FV
Float voltage is read in the batt_health() callback.
batt_health() is called from batt_status() and batt_status()
is also called from the FV callback leading to a deadlock.
Fix it by using the unlocked version of votable while reading FV.

Change-Id: Ie6f9f683c048a2a1c64d46716433bcff359dc3b0
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2020-08-31 12:00:56 +05:30
Raghavendra Kakarla
cd5a2ae207 drivers: coresight: Add interrupt service routine for apss tgu
Add the interrupt service routine for apss tgu to handle tgu
interrupt.

Change-Id: Ic0128e41ed7a8e837ebab12a28c744af85109bda
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
2020-08-31 10:44:07 +05:30
Sriharsha Allenki
4aef53cef6 defconfig: gki: Enable power delivery on Holi
Enable policy_engine and pd phy drivers to support
power delivery feature on Holi.

Change-Id: I5048292c5b486a8801c9be6996ef3bff61d6f15a
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
2020-08-30 13:56:37 +05:30
Sriharsha Allenki
7faa8ad616 usb: pd: Fix cyclic dependency of pd modules
The compilation of policy_engine.c and qpnp-pdphy.c as
loadble modules leads to the circular symbol dependency
of one module on the other.
Fix this by serializing this dependency and ensures that
no symbols from the qpnp-pdphy are directly used in
policy_engine driver.
Also, add the dependency of IIO for policy_engine driver.

Change-Id: I965f887e5c0b5a0cd372cc83353380bad5d8c839
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
2020-08-30 13:55:57 +05:30
Odelu Kukatla
823b12bb9b build.config: Add qnoc-qos.ko module for Lahaina
qnoc-qos.c needs to be built as module, so add qnoc-qos.ko to
build infra.

Change-Id: I86ace45e2259fc382ed478c6456d55701bf974d4
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
2020-08-30 01:12:35 -07:00
Odelu Kukatla
c54d9f7b06 interconnect: qcom: Build qnoc-qos as module
Build qnoc-qos.c as a module to make the symbols
available and avoid build warnings.

Change-Id: I62ab7a04225d71c036cd78f38259a98f099632ed
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
2020-08-29 23:15:05 +05:30
Mayank Rana
14bd7f0a99 Revert "dwc3-msm: Add support to vote USB FORCE_MEM_CORE_ON"
This change reverts commit ("f1984dceeb dwc3-msm: Add support to vote
USB FORCE_MEM_CORE_ON") which is using dummy clock to update USB
master clock for keeping USB controller CSR retain while going into
CXPC. There is new API qcom_clk_set_flags() propose which supports
same functionality without USB dummy clock.

Change-Id: I0e35e4dac265a22eac2c3e95946cc9171c309508
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2020-08-29 09:44:04 -07:00
Jagadeesh Kona
b5fef2d563 ABI: Add regmap_mmio_detach_clk API to QCOM whitelist
Add regmap_mmio_detach_clk API to QCOM whitelist.

Change-Id: I3eb6e4f0f96f20c41b8f2354712ec79389049aa7
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
2020-08-29 20:46:07 +05:30
qctecmdr
99e8c41675 Merge "usb: dwc3: Set FORCE_MEM_CORE_ON bit of GCC_USB30_MASTER_CLK" 2020-08-29 00:51:30 -07:00
Anirudh Ghayal
960615c328 mfd: qcom-i2c-pmic: Reduce the stat-toggle delay
Reduce the stat-toggle delays to 50ms (overall) to
optimize boot time.

Change-Id: I58027cb94500cf93eb42b44dcec9a5e68670b5e0
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2020-08-29 11:45:19 +05:30
Anirudh Ghayal
c4c94b5f55 mfd: qcom-i2c-pmic: Toggle STAT pin at init
Logic to toggle STAT pin during init.

Change-Id: I269b0be18b56d56c0ab0e68ee1d7194d09824dd5
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2020-08-29 11:43:39 +05:30
qctecmdr
fe2aa494de Merge "interconnect: qcom: sdxlemur: Remove stub functions" 2020-08-28 21:18:09 -07:00
qctecmdr
39074278cc Merge "arm: defconfig: Enable gcc clock driver for sdxlemur" 2020-08-28 21:18:08 -07:00
qctecmdr
d89ce61309 Merge "byte-cntr: Add mutex_unlock when rwp_offset is invalid" 2020-08-28 21:18:08 -07:00
qctecmdr
b58d44d0c6 Merge "Merge android11-5.4.58+ (33cc3e7) into msm-5.4" 2020-08-28 21:18:07 -07:00
Lina Iyer
e888d93a58 arm64: defconfig: enable debugging of cpuidle governor in SVM
Enable idle state failure statistics and tracing in menu governor to
debug cpuidle related issues in SVM. Enable FTRACE dependency for the
config items.

Change-Id: I635a1c06db528358113672daa1ccb78078c79bf3
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
2020-08-28 21:40:54 -06:00
qctecmdr
8c8fbafeba Merge "pci: msm: Configure L23 ready poll timeout using sysfs" 2020-08-28 17:56:37 -07:00
qctecmdr
39b229314c Merge "cnss2: Disable LPASS full power collapse on DRV suspend" 2020-08-28 17:56:37 -07:00
qctecmdr
df5fbccdc6 Merge "power: supply: qcom: Update SMB5 charger properties for GKI compliance" 2020-08-28 17:56:36 -07:00
qctecmdr
54dded298e Merge "mhi: core: Check for RDDM cookie set by device to indicate readiness" 2020-08-28 17:56:36 -07:00
John Stultz
62b6e96e16 ANDROID: db845c_gki.fragment: Remove CONFIG_USB_NET_AX88*
Commit 55adb91acc ("ANDROID: GKI: enable some USB_NET_ config
options") implicitly enabled the CONFIG_USB_NET_AX88* options
which was causing trouble with the db845C_gki.fragment, since
we try to load these (along with PHYLIB) as modules.

So drop these, and it should work out.

Fixes: 55adb91acc ("ANDROID: GKI: enable some USB_NET_ config options")
Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: Ia7e69d7030842f5136aafc064e1ba8a70bad2bb6
2020-08-28 22:30:13 +00:00
Chun-Hung Wu
ea9b3d7e6b ANDROID: GKI: enable CONFIG_MTK_TIMER
It's needed by MTK board for reasons below:
After working with built-in mtk timer(timer-mediatek) as
tick-broadcast devices for few weeks, we found some issues caused
by linux timer framework:
1. tick broadcast installed by insmod cannot switch to oneshot
   mode correctly (BUG: 161822795)
2. rcu warning will be shown if we force to re-enabled tick-broadcast
for each cpu when new tick broadcast device is added by insmod
(timer-mediatek.c in our case)

Bug: 161675989
Change-Id: If3056df11d8256f2af4a6928820faed9f690b3db
Signed-off-by: Freddy Hsin <freddy.hsin@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-08-28 22:28:50 +00:00
Todd Kjos
e54e1caec3 ANDROID: ABI: Update ABI description after symbol list updates
Leaf changes summary: 53 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 51 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables

51 Added functions:

  [A] 'function int __irq_alloc_domain_generic_chips(irq_domain*, int, int, const char*, irq_flow_handler_t, unsigned int, unsigned int, irq_gc_flags)'
  [A] 'function int __srcu_read_lock(srcu_struct*)'
  [A] 'function void __srcu_read_unlock(srcu_struct*, int)'
  [A] 'function void bt_err(const char*, ...)'
  [A] 'function void bt_info(const char*, ...)'
  [A] 'function void clk_unregister_fixed_factor(clk*)'
  [A] 'function void clk_unregister_fixed_rate(clk*)'
  [A] 'function void clk_unregister_gate(clk*)'
  [A] 'function void cpufreq_dbs_governor_exit(cpufreq_policy*)'
  [A] 'function int cpufreq_dbs_governor_init(cpufreq_policy*)'
  [A] 'function void cpufreq_dbs_governor_limits(cpufreq_policy*)'
  [A] 'function int cpufreq_dbs_governor_start(cpufreq_policy*)'
  [A] 'function void cpufreq_dbs_governor_stop(cpufreq_policy*)'
  [A] 'function unsigned short int crc16(unsigned short int, const unsigned char*, unsigned long int)'
  [A] 'function unsigned int dbs_update(cpufreq_policy*)'
  [A] 'function int device_move(device*, device*, dpm_order)'
  [A] 'function dma_chan* dma_get_any_slave_channel(dma_device*)'
  [A] 'function void ehci_init_driver(hc_driver*, const ehci_driver_overrides*)'
  [A] 'function int ehci_resume(usb_hcd*, bool)'
  [A] 'function int ehci_setup(usb_hcd*)'
  [A] 'function int ehci_suspend(usb_hcd*, bool)'
  [A] 'function void ethtool_convert_legacy_u32_to_link_mode(unsigned long int*, u32)'
  [A] 'function int filp_close(file*, void*)'
  [A] 'function long long unsigned int get_cpu_idle_time_us(int, long long unsigned int*)'
  [A] 'function void gov_update_cpu_data(dbs_data*)'
  [A] 'function int gpiochip_generic_config(gpio_chip*, unsigned int, unsigned long int)'
  [A] 'function int iio_map_array_register(iio_dev*, iio_map*)'
  [A] 'function int iio_map_array_unregister(iio_dev*)'
  [A] 'function void interval_tree_insert(interval_tree_node*, rb_root_cached*)'
  [A] 'function interval_tree_node* interval_tree_iter_first(rb_root_cached*, unsigned long int, unsigned long int)'
  [A] 'function interval_tree_node* interval_tree_iter_next(interval_tree_node*, unsigned long int, unsigned long int)'
  [A] 'function void interval_tree_remove(interval_tree_node*, rb_root_cached*)'
  [A] 'function void irq_gc_ack_set_bit(irq_data*)'
  [A] 'function void irq_gc_mask_clr_bit(irq_data*)'
  [A] 'function void irq_gc_mask_set_bit(irq_data*)'
  [A] 'function irq_chip_generic* irq_get_domain_generic_chip(irq_domain*, unsigned int)'
  [A] 'function int irq_setup_alt_chip(irq_data*, unsigned int)'
  [A] 'function int memblock_free(long long unsigned int, long long unsigned int)'
  [A] 'function void netdev_update_features(net_device*)'
  [A] 'function void* of_get_mac_address(device_node*)'
  [A] 'function int pinctrl_gpio_direction_input(unsigned int)'
  [A] 'function int pinctrl_gpio_direction_output(unsigned int)'
  [A] 'function void rfkill_set_states(rfkill*, bool, bool)'
  [A] 'function int snd_dmaengine_pcm_open(snd_pcm_substream*, dma_chan*)'
  [A] 'function ssize_t store_sampling_rate(gov_attr_set*, const char*, size_t)'
  [A] 'function int usb_alloc_streams(usb_interface*, usb_host_endpoint**, unsigned int, unsigned int, unsigned int)'
  [A] 'function int usb_free_streams(usb_interface*, usb_host_endpoint**, unsigned int, unsigned int)'
  [A] 'function int usb_wait_anchor_empty_timeout(usb_anchor*, unsigned int)'
  [A] 'function void usbnet_defer_kevent(usbnet*, int)'
  [A] 'function void vb2_dma_contig_clear_max_seg_size(device*)'
  [A] 'function int vb2_dma_contig_set_max_seg_size(device*, unsigned int)'

2 Added variables:

  [A] 'irq_domain_ops irq_generic_chip_ops'
  [A] 'const vb2_mem_ops vb2_dma_contig_memops'

Bug: 166748000
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: Ideb6eaf46f5a7cf3fa2de1f673ce60767ec8fe19
2020-08-28 22:22:28 +00:00
huangshuosheng
1278a5bf16 ANDROID: ABI: Added symbols for allwinner
Leaf changes summary: 45 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 43 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables

43 Added functions:

  [A] 'function int __irq_alloc_domain_generic_chips(irq_domain*, int, int, const char*, irq_flow_handler_t, unsigned int, unsigned int, irq_gc_flags)'
  [A] 'function void bt_err(const char*, ...)'
  [A] 'function void bt_info(const char*, ...)'
  [A] 'function void clk_unregister_fixed_factor(clk*)'
  [A] 'function void clk_unregister_fixed_rate(clk*)'
  [A] 'function void clk_unregister_gate(clk*)'
  [A] 'function void cpufreq_dbs_governor_exit(cpufreq_policy*)'
  [A] 'function int cpufreq_dbs_governor_init(cpufreq_policy*)'
  [A] 'function void cpufreq_dbs_governor_limits(cpufreq_policy*)'
  [A] 'function int cpufreq_dbs_governor_start(cpufreq_policy*)'
  [A] 'function void cpufreq_dbs_governor_stop(cpufreq_policy*)'
  [A] 'function unsigned short int crc16(unsigned short int, const unsigned char*, unsigned long int)'
  [A] 'function unsigned int dbs_update(cpufreq_policy*)'
  [A] 'function int device_move(device*, device*, dpm_order)'
  [A] 'function dma_chan* dma_get_any_slave_channel(dma_device*)'
  [A] 'function void ehci_init_driver(hc_driver*, const ehci_driver_overrides*)'
  [A] 'function int ehci_resume(usb_hcd*, bool)'
  [A] 'function int ehci_setup(usb_hcd*)'
  [A] 'function int ehci_suspend(usb_hcd*, bool)'
  [A] 'function void ethtool_convert_legacy_u32_to_link_mode(unsigned long int*, u32)'
  [A] 'function int filp_close(file*, void*)'
  [A] 'function long long unsigned int get_cpu_idle_time_us(int, long long unsigned int*)'
  [A] 'function void gov_update_cpu_data(dbs_data*)'
  [A] 'function int gpiochip_generic_config(gpio_chip*, unsigned int, unsigned long int)'
  [A] 'function int iio_map_array_register(iio_dev*, iio_map*)'
  [A] 'function int iio_map_array_unregister(iio_dev*)'
  [A] 'function void irq_gc_ack_set_bit(irq_data*)'
  [A] 'function void irq_gc_mask_clr_bit(irq_data*)'
  [A] 'function void irq_gc_mask_set_bit(irq_data*)'
  [A] 'function irq_chip_generic* irq_get_domain_generic_chip(irq_domain*, unsigned int)'
  [A] 'function int irq_setup_alt_chip(irq_data*, unsigned int)'
  [A] 'function void* of_get_mac_address(device_node*)'
  [A] 'function int pinctrl_gpio_direction_input(unsigned int)'
  [A] 'function int pinctrl_gpio_direction_output(unsigned int)'
  [A] 'function void rfkill_set_states(rfkill*, bool, bool)'
  [A] 'function int snd_dmaengine_pcm_open(snd_pcm_substream*, dma_chan*)'
  [A] 'function ssize_t store_sampling_rate(gov_attr_set*, const char*, size_t)'
  [A] 'function int usb_alloc_streams(usb_interface*, usb_host_endpoint**, unsigned int, unsigned int, unsigned int)'
  [A] 'function int usb_free_streams(usb_interface*, usb_host_endpoint**, unsigned int, unsigned int)'
  [A] 'function int usb_wait_anchor_empty_timeout(usb_anchor*, unsigned int)'
  [A] 'function void usbnet_defer_kevent(usbnet*, int)'
  [A] 'function void vb2_dma_contig_clear_max_seg_size(device*)'
  [A] 'function int vb2_dma_contig_set_max_seg_size(device*, unsigned int)'

2 Added variables:

  [A] 'irq_domain_ops irq_generic_chip_ops'
  [A] 'const vb2_mem_ops vb2_dma_contig_memops'

Bug: 154880035
Change-Id: I7df6cc6200ea10565608cf7c9b7a089734805c8f
Signed-off-by: huangshuosheng <huangshuosheng@allwinnertech.com>
2020-08-28 22:21:13 +00:00
Subbaraman Narayanamurthy
cf157b6b02 power: supply: qti_battery_charger: Change wireless power supply type
Now that the power supply framework has POWER_SUPPLY_TYPE_WIRELESS
change the wireless power supply type from MAINS to WIRELESS. This
would help android healthd to show "chg=w" rather than "chg=a" in
logs when a wireless charger is connected.

Change-Id: I871779aa806f775e2cdf1e0994593fc991fe77f9
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2020-08-28 15:20:32 -07:00
Raghavendra Rao Ananta
042f9c9a34 ANDROID: ABI: Update allowed list for QCOM
Leaf changes summary: 8 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 8 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

8 Added functions:

  [A] 'function int __srcu_read_lock(srcu_struct*)'
  [A] 'function void __srcu_read_unlock(srcu_struct*, int)'
  [A] 'function void interval_tree_insert(interval_tree_node*, rb_root_cached*)'
  [A] 'function interval_tree_node* interval_tree_iter_first(rb_root_cached*, unsigned long int, unsigned long int)'
  [A] 'function interval_tree_node* interval_tree_iter_next(interval_tree_node*, unsigned long int, unsigned long int)'
  [A] 'function void interval_tree_remove(interval_tree_node*, rb_root_cached*)'
  [A] 'function int memblock_free(long long unsigned int, long long unsigned int)'
  [A] 'function void netdev_update_features(net_device*)'

Bug: 166748000
Change-Id: I1683cce8238bf533d379a2d034f5640d1299859a
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2020-08-28 15:12:00 -07:00
Bhaumik Bhatt
0e5a6b80ff mhi: core: Check for RDDM cookie set by device to indicate readiness
If the device is unable to send the mission mode execution
environment change event but has already entered mission mode
with the ability to allow ramdump collection, it can set a unique
cookie pattern to indicate the availability of ramdumps. Allow
the controller to query for this unique pattern upon any bootup
failure or timeout.

Change-Id: Id1f58b75d3f22e9e21b142cbea74d61cc65615b4
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-08-28 14:53:32 -07:00
Bhaumik Bhatt
739281396c mhi: core: Move to error state if firmware could not be loaded
Move MHI to a firmware download error state for any bootup
failures such as unable to find firmware files or load images via
BHI/BHIe. This helps detect an error state sooner and shortens
the wait for a synchronous power up timeout. It also negates the
need to provide additional callbacks due to any intermediate
bootup failures.

Change-Id: I3307e432063f59e978f1e055453155803a6475b2
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-08-28 14:52:01 -07:00
qctecmdr
16a14a1745 Merge "i2c-msm-geni: Add log to print the i2c bus frequency" 2020-08-28 14:21:55 -07:00
qctecmdr
a29a3d5721 Merge "serial: msm_geni_serial: Log CTS and RX IO line status" 2020-08-28 14:21:54 -07:00
qctecmdr
98b3301eae Merge "msm: kgsl: Make ACD QMP message sending failure non fatal" 2020-08-28 14:21:54 -07:00
qctecmdr
8d1b5f677b Merge "defconfig: Avoid disabling temp_alarm driver for holi" 2020-08-28 14:21:54 -07:00
qctecmdr
7212d14052 Merge "regulator: rpm-smd: Update sync_state call" 2020-08-28 14:21:53 -07:00
qctecmdr
2d3abc765c Merge "kernel: crypto: Possible null pointer dereference" 2020-08-28 14:21:53 -07:00
qctecmdr
6278f1358d Merge "cnss2: Add support to use new ramdump APIs" 2020-08-28 14:21:52 -07:00
qctecmdr
ba4ba78525 Merge "msm: cvp: enable cache op by default" 2020-08-28 14:21:51 -07:00
qctecmdr
8356a39a60 Merge "Merge android11-5.4.58 (3a9b53b) into msm-5.4" 2020-08-28 14:21:51 -07:00
Andy Teng
55bbca30d4 UPSTREAM: scsi: ufs: ufs-mediatek: Modify the minimum RX/TX lane count to 2
MediaTek UFS host now supports 2 lanes. Modify the lane count to 2.

This modification shall not impact old 1-lane host because
PA_CONNECTEDRXDATALANES and PA_CONNECTEDTXDATALANES will limit the target
lanes properly during power mode change. So we could relax the limitation
in ufs_dev_params.

Link: https://lore.kernel.org/r/20200819084340.7021-1-stanley.chu@mediatek.com
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Andy Teng <andy.teng@mediatek.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit 460d74a0911c562f56148519a2467271271a73aa)
Change-Id: Ia3cb46d691f4498829565a70ba332cd246dc98a2
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:54:00 +00:00
Stanley Chu
48eafd42bd UPSTREAM: scsi: ufs: Fix possible infinite loop in ufshcd_hold
In ufshcd_suspend(), after clk-gating is suspended and link is set
as Hibern8 state, ufshcd_hold() is still possibly invoked before
ufshcd_suspend() returns. For example, MediaTek's suspend vops may
issue UIC commands which would call ufshcd_hold() during the command
issuing flow.

Now if UFSHCD_CAP_HIBERN8_WITH_CLK_GATING capability is enabled,
then ufshcd_hold() may enter infinite loops because there is no
clk-ungating work scheduled or pending. In this case, ufshcd_hold()
shall just bypass, and keep the link as Hibern8 state.

Link: https://lore.kernel.org/r/20200809050734.18740-1-stanley.chu@mediatek.com
Reviewed-by: Avri Altman <avri.altman@wdc.com>
Co-developed-by: Andy Teng <andy.teng@mediatek.com>
Signed-off-by: Andy Teng <andy.teng@mediatek.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit 93b6c5db06028a3b55122bbb74d0715dd8ca4ae0)
Change-Id: I595ee3f0da3b89e11cbe5d6d31ba7ce58b1757bc
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:53:45 +00:00
Stanley Chu
45f61ca720 UPSTREAM: scsi: ufs-mediatek: Fix incorrect time to wait link status
Fix incorrect calculation of "ms" based waiting time in function
ufs_mtk_setup_clocks().

Link: https://lore.kernel.org/r/20200809055702.20140-1-stanley.chu@mediatek.com
Fixes: 9006e3986f66 ("scsi: ufs-mediatek: Do not gate clocks if auto-hibern8 is not entered yet")
Reviewed-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit 215d326702516366a8dfa9624b67ba0761c22b86)
Change-Id: I705ec82183efd898629e6a77952bc5e0c4fdceb1
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:53:28 +00:00
Stanley Chu
0c9580fc98 UPSTREAM: scsi: ufs-mediatek: Apply DELAY_AFTER_LPM quirk to Micron devices
Micron UFS devices require DELAY_AFTER_LPM device quirk in MediaTek
platforms.

Link: https://lore.kernel.org/r/20200729051840.31318-3-stanley.chu@mediatek.com
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Reviewed-by: Andy Teng <andy.teng@mediatek.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit d61fa5bc3e521211d68d00c9199a61a7504b4dab)
Change-Id: Ib46db4c91cc5cc2e99c9868bc4ca98068aa80c6c
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:53:12 +00:00
Stanley Chu
09f3953770 UPSTREAM: scsi: ufs: Introduce device quirk "DELAY_AFTER_LPM"
Some UFS devices require delay after VCC power rail is turned off.
Introduce a device quirk "DELAY_AFTER_LPM" to add 5ms delay after VCC
power-off during suspend flow.

Link: https://lore.kernel.org/r/20200729051840.31318-2-stanley.chu@mediatek.com
Reviewed-by: Andy Teng <andy.teng@mediatek.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
Reviewed-by: Can Guo <cang@codeaurora.org>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit c4df6eed972e001a206a173738bec8c5f903257a)
Change-Id: Ia5c26f454374dfb591480acbf83007749ba11a0c
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:52:56 +00:00
Stanley Chu
982976f583 UPSTREAM: scsi: ufs-mediatek: Prevent LPM operation on undeclared VCC
In some platforms, VCC regulator may not be declared in device tree to keep
itself "always-on". In this case, hba->vreg_info.vcc is NULL and shall not
be operated during any flow.

Prevent possible NULL hba->vreg_info.vcc access in LPM mode by checking
if it is valid first.

Link: https://lore.kernel.org/r/20200724141627.20094-1-stanley.chu@mediatek.com
Reviewed-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
(cherry picked from commit 0255b1e3d84962f8f8d19f9e2768a8a4f0de7487)
Change-Id: I6351c0bb93ba78a66e286e6aaf8a0c8956cab895
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:52:43 +00:00
Stanley Chu
684efd746e BACKPORT: scsi: ufs-mediatek: Add inline encryption support
Add inline encryption support to ufs-mediatek.

The standards-compliant parts, such as querying the crypto capabilities and
enabling crypto for individual UFS requests, are already handled by
ufshcd-crypto.c, which itself is wired into the blk-crypto framework.

However MediaTek UFS host requires a vendor-specific hce_enable operation
to allow crypto-related registers being accessed normally in kernel.  After
this step, MediaTek UFS host can work as standard-compliant host for
inline-encryption related functions.

Link: https://lore.kernel.org/r/20200712003226.7593-1-stanley.chu@mediatek.com
Reviewed-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

Bug: 166747994
[ Resolved minor conflict in drivers/scsi/ufs/ufs-mediatek.c ]
(cherry picked from commit 46426552e74fd38e43aa95af17487d3cc285d71f)
Change-Id: I47629ab3823e361e4cf778c08ffd1c6b1a1d6e06
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
2020-08-28 20:52:28 +00:00
Mark Salyzyn
1c300cd58f ANDROID: Update ABI
Leaf changes summary: 644 artifacts changed (1 filtered out)
Changed leaf types summary: 2 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 637 Changed (1 filtered out), 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 5 Changed, 0 Added variable

637 functions with some sub-type change:

<redacted>

Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 140250271
Change-Id: I97288bd961bd1f7f0dbb56241de952efde7e0fb9
2020-08-28 12:28:07 -07:00
Chun-Hung Wu
af38fd3120 ANDROID: net: enable wireless core features with GKI_LEGACY_WEXT_ALLCONFIG
In embedded environments the requirements are to be able to pick and
chose which features one requires built into the kernel.  If an
embedded environment wants to supports loading modules that have been
kbuilt out of tree, there is a need to enable hidden configurations
for legacy wireless core features to provide the API surface for
them to load.

Introduce CONFIG_GKI_LEGACY_WEXT_ALLCONFIG to select all legacy wireless
extension core features by activating in turn all the associated
hidden configuration options, without having to specifically select
any wireless module(s).

This reverts commit c2f96db077.
(rejected upstream commit url https://lkml.org/lkml/2019/9/6/878)
Bug: 140250271
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
Change-Id: I7ca31317df82cf3a349ba6cc2dc42c37090625be
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
2020-08-28 12:19:22 -07:00
Jagadeesh Kona
6ba578d221 clk: qcom: gcc-shima: Update CPUSS AHB clock frequency to 19.2MHz
Set CPUSS AHB clock frequency to 19.2MHz.

Change-Id: I9f21883bcffc5ba1363aacdb22db9c1d367e06d2
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
2020-08-29 00:37:01 +05:30