Merge keystone/android12-5.10-keystone-qcom-release.43+ (fb8aecf
) into msm-5.10
* refs/heads/tmp-fb8aecf: FROMLIST: usb: dwc3: usb: dwc3: Force stop EP0 transfers during pullup disable ANDROID: Update symbol list for mtk ANDROID: scheduler: export task_sched_runtime FROMLIST: mm: slub: fix slub_debug disabling for list of slabs FROMLIST: mm/madvise: add MADV_WILLNEED to process_madvise() ANDROID: Update the exynos symbol list FROMGIT: firmware: arm_scmi: Free mailbox channels if probe fails ANDROID: GKI: gki_defconfig: Enable CONFIG_NFC ANDROID: sched: Make uclamp changes depend on CAP_SYS_NICE ANDROID: GKI: update xiaomi symbol list and ABI XML ANDROID: ABI: update generic symbol list ANDROID: consolidate.fragment: Add missing arguments from gki_defconfig ANDROID: scsi: ufs: Enable CONFIG_SCSI_UFS_HPB ANDROID: scsi: ufs: Make CONFIG_SCSI_UFS_HPB compatible with the GKI Change-Id: Ie17c7b85770678d3661b4e196eb10c194791a723 Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
This commit is contained in:
commit
dee4171e89
File diff suppressed because it is too large
Load Diff
@ -207,6 +207,8 @@
|
||||
cpu_hwcap_keys
|
||||
cpu_hwcaps
|
||||
cpuidle_get_cpu_driver
|
||||
cpuidle_pause_and_lock
|
||||
cpuidle_resume_and_unlock
|
||||
cpumask_next
|
||||
cpumask_next_and
|
||||
cpu_number
|
||||
@ -334,6 +336,7 @@
|
||||
devm_gpio_request_one
|
||||
devm_hwrng_register
|
||||
devm_i2c_new_dummy_device
|
||||
devm_iio_channel_get
|
||||
devm_iio_device_alloc
|
||||
__devm_iio_device_register
|
||||
devm_input_allocate_device
|
||||
@ -923,11 +926,14 @@
|
||||
ignore_console_lock_warning
|
||||
iio_channel_get
|
||||
iio_channel_release
|
||||
iio_convert_raw_to_processed
|
||||
iio_device_alloc
|
||||
iio_device_free
|
||||
__iio_device_register
|
||||
iio_device_unregister
|
||||
iio_get_channel_type
|
||||
iio_read_channel_processed
|
||||
iio_read_channel_raw
|
||||
inc_zone_page_state
|
||||
inet_csk_get_port
|
||||
init_dummy_netdev
|
||||
@ -1467,6 +1473,7 @@
|
||||
proc_create_data
|
||||
proc_create_seq_private
|
||||
proc_mkdir
|
||||
proc_mkdir_data
|
||||
proc_remove
|
||||
proc_set_size
|
||||
proc_set_user
|
||||
@ -1897,6 +1904,7 @@
|
||||
time64_to_tm
|
||||
topology_set_thermal_pressure
|
||||
_totalram_pages
|
||||
__trace_bprintk
|
||||
trace_event_buffer_commit
|
||||
trace_event_buffer_reserve
|
||||
trace_event_ignore_this_pid
|
||||
|
@ -68,6 +68,7 @@
|
||||
blkdev_put
|
||||
blk_execute_rq_nowait
|
||||
blk_get_request
|
||||
blk_ksm_init_passthrough
|
||||
blk_put_request
|
||||
blk_queue_flag_clear
|
||||
blk_queue_flag_set
|
||||
|
@ -190,6 +190,7 @@
|
||||
cpufreq_driver_resolve_freq
|
||||
__cpufreq_driver_target
|
||||
cpufreq_enable_fast_switch
|
||||
cpufreq_frequency_table_get_index
|
||||
cpufreq_generic_attr
|
||||
cpufreq_generic_frequency_table_verify
|
||||
cpufreq_get_policy
|
||||
@ -397,6 +398,7 @@
|
||||
devm_pinctrl_get
|
||||
devm_pinctrl_put
|
||||
devm_pinctrl_register_and_init
|
||||
devm_platform_get_and_ioremap_resource
|
||||
devm_platform_ioremap_resource
|
||||
devm_platform_ioremap_resource_byname
|
||||
devm_power_supply_get_by_phandle
|
||||
@ -531,6 +533,7 @@
|
||||
driver_create_file
|
||||
driver_remove_file
|
||||
driver_unregister
|
||||
drm_add_edid_modes
|
||||
drm_add_modes_noedid
|
||||
drm_atomic_add_affected_connectors
|
||||
drm_atomic_get_crtc_state
|
||||
@ -568,6 +571,7 @@
|
||||
drm_connector_attach_encoder
|
||||
drm_connector_cleanup
|
||||
drm_connector_init
|
||||
drm_connector_update_edid_property
|
||||
drm_crtc_cleanup
|
||||
drm_crtc_handle_vblank
|
||||
drm_crtc_init_with_planes
|
||||
@ -581,6 +585,16 @@
|
||||
drm_dev_put
|
||||
drm_dev_register
|
||||
drm_dev_unregister
|
||||
drm_dp_aux_init
|
||||
drm_dp_aux_register
|
||||
drm_dp_channel_eq_ok
|
||||
drm_dp_clock_recovery_ok
|
||||
drm_dp_dpcd_read
|
||||
drm_dp_dpcd_write
|
||||
drm_dp_link_train_channel_eq_delay
|
||||
drm_dp_link_train_clock_recovery_delay
|
||||
drm_edid_duplicate
|
||||
drm_edid_to_sad
|
||||
drm_encoder_cleanup
|
||||
drm_encoder_init
|
||||
__drm_err
|
||||
@ -603,8 +617,8 @@
|
||||
drm_gem_prime_fd_to_handle
|
||||
drm_gem_prime_handle_to_fd
|
||||
drm_gem_prime_import
|
||||
drm_gem_private_object_init
|
||||
drm_gem_vm_close
|
||||
drm_get_edid
|
||||
drm_helper_hpd_irq_event
|
||||
drm_helper_mode_fill_fb_struct
|
||||
drm_helper_probe_single_connector_modes
|
||||
@ -813,6 +827,7 @@
|
||||
i2c_add_adapter
|
||||
i2c_del_adapter
|
||||
i2c_del_driver
|
||||
i2c_get_adapter
|
||||
i2c_get_dma_safe_msg_buf
|
||||
i2c_put_dma_safe_msg_buf
|
||||
i2c_register_driver
|
||||
@ -1072,6 +1087,7 @@
|
||||
media_entity_pads_init
|
||||
media_entity_remote_pad
|
||||
media_entity_remove_links
|
||||
__media_entity_setup_link
|
||||
media_graph_walk_next
|
||||
media_graph_walk_start
|
||||
media_pipeline_start
|
||||
@ -1421,6 +1437,7 @@
|
||||
__put_net
|
||||
__put_page
|
||||
put_pid
|
||||
put_task_stack
|
||||
__put_task_struct
|
||||
put_unused_fd
|
||||
put_vaddr_frames
|
||||
@ -1697,6 +1714,7 @@
|
||||
skb_queue_purge
|
||||
skb_queue_tail
|
||||
skb_trim
|
||||
smp_call_function
|
||||
snd_card_add_dev_attr
|
||||
snd_ctl_boolean_mono_info
|
||||
snd_jack_set_key
|
||||
@ -1847,6 +1865,7 @@
|
||||
tasklist_lock
|
||||
__task_pid_nr_ns
|
||||
__task_rq_lock
|
||||
task_sched_runtime
|
||||
thermal_cooling_device_unregister
|
||||
thermal_of_cooling_device_register
|
||||
thermal_zone_get_temp
|
||||
@ -1865,6 +1884,7 @@
|
||||
trace_event_raw_init
|
||||
trace_event_reg
|
||||
trace_handle_return
|
||||
__traceiter_android_rvh_after_enqueue_task
|
||||
__traceiter_android_rvh_cpu_overutilized
|
||||
__traceiter_android_rvh_dequeue_task
|
||||
__traceiter_android_rvh_dequeue_task_fair
|
||||
@ -1873,6 +1893,8 @@
|
||||
__traceiter_android_rvh_find_busiest_group
|
||||
__traceiter_android_rvh_find_energy_efficient_cpu
|
||||
__traceiter_android_rvh_finish_prio_fork
|
||||
__traceiter_android_rvh_media_device_setup_link
|
||||
__traceiter_android_rvh_new_task_stats
|
||||
__traceiter_android_rvh_prepare_prio_fork
|
||||
__traceiter_android_rvh_rtmutex_prepare_setprio
|
||||
__traceiter_android_rvh_sched_newidle_balance
|
||||
@ -1881,6 +1903,9 @@
|
||||
__traceiter_android_rvh_set_user_nice
|
||||
__traceiter_android_rvh_tick_entry
|
||||
__traceiter_android_rvh_uclamp_eff_get
|
||||
__traceiter_android_rvh_v4l2subdev_set_fmt
|
||||
__traceiter_android_rvh_v4l2subdev_set_frame_interval
|
||||
__traceiter_android_rvh_v4l2subdev_set_selection
|
||||
__traceiter_android_vh_alter_futex_plist_add
|
||||
__traceiter_android_vh_alter_rwsem_list_add
|
||||
__traceiter_android_vh_arch_set_freq_scale
|
||||
@ -1900,6 +1925,7 @@
|
||||
__traceiter_android_vh_finish_update_load_avg_se
|
||||
__traceiter_android_vh_iommu_alloc_iova
|
||||
__traceiter_android_vh_iommu_free_iova
|
||||
__traceiter_android_vh_ipv6_gen_linklocal_addr
|
||||
__traceiter_android_vh_logbuf
|
||||
__traceiter_android_vh_override_creds
|
||||
__traceiter_android_vh_prepare_update_load_avg_se
|
||||
@ -1929,6 +1955,9 @@
|
||||
__traceiter_rwmmio_read
|
||||
__traceiter_rwmmio_write
|
||||
__traceiter_sched_update_nr_running_tp
|
||||
__traceiter_task_newtask
|
||||
__traceiter_xhci_urb_giveback
|
||||
__tracepoint_android_rvh_after_enqueue_task
|
||||
__tracepoint_android_rvh_cpu_overutilized
|
||||
__tracepoint_android_rvh_dequeue_task
|
||||
__tracepoint_android_rvh_dequeue_task_fair
|
||||
@ -1937,6 +1966,8 @@
|
||||
__tracepoint_android_rvh_find_busiest_group
|
||||
__tracepoint_android_rvh_find_energy_efficient_cpu
|
||||
__tracepoint_android_rvh_finish_prio_fork
|
||||
__tracepoint_android_rvh_media_device_setup_link
|
||||
__tracepoint_android_rvh_new_task_stats
|
||||
__tracepoint_android_rvh_prepare_prio_fork
|
||||
__tracepoint_android_rvh_rtmutex_prepare_setprio
|
||||
__tracepoint_android_rvh_sched_newidle_balance
|
||||
@ -1945,6 +1976,9 @@
|
||||
__tracepoint_android_rvh_set_user_nice
|
||||
__tracepoint_android_rvh_tick_entry
|
||||
__tracepoint_android_rvh_uclamp_eff_get
|
||||
__tracepoint_android_rvh_v4l2subdev_set_fmt
|
||||
__tracepoint_android_rvh_v4l2subdev_set_frame_interval
|
||||
__tracepoint_android_rvh_v4l2subdev_set_selection
|
||||
__tracepoint_android_vh_alter_futex_plist_add
|
||||
__tracepoint_android_vh_alter_rwsem_list_add
|
||||
__tracepoint_android_vh_arch_set_freq_scale
|
||||
@ -1964,6 +1998,7 @@
|
||||
__tracepoint_android_vh_finish_update_load_avg_se
|
||||
__tracepoint_android_vh_iommu_alloc_iova
|
||||
__tracepoint_android_vh_iommu_free_iova
|
||||
__tracepoint_android_vh_ipv6_gen_linklocal_addr
|
||||
__tracepoint_android_vh_logbuf
|
||||
__tracepoint_android_vh_override_creds
|
||||
__tracepoint_android_vh_prepare_update_load_avg_se
|
||||
@ -1996,6 +2031,8 @@
|
||||
__tracepoint_rwmmio_write
|
||||
__tracepoint_sched_update_nr_running_tp
|
||||
tracepoint_srcu
|
||||
__tracepoint_task_newtask
|
||||
__tracepoint_xhci_urb_giveback
|
||||
trace_print_array_seq
|
||||
trace_print_hex_seq
|
||||
trace_print_symbols_seq
|
||||
@ -2385,6 +2422,7 @@
|
||||
dma_sync_single_for_device
|
||||
downgrade_write
|
||||
down_read_trylock
|
||||
drm_gem_private_object_init
|
||||
get_user_pages
|
||||
get_user_pages_fast
|
||||
gpiod_set_raw_value
|
||||
@ -2402,7 +2440,6 @@
|
||||
kstrtobool_from_user
|
||||
ktime_get_raw
|
||||
led_classdev_unregister
|
||||
__media_entity_setup_link
|
||||
memdup_user
|
||||
__mmdrop
|
||||
module_put
|
||||
@ -2415,7 +2452,6 @@
|
||||
param_ops_string
|
||||
perf_num_counters
|
||||
pin_user_pages_remote
|
||||
put_task_stack
|
||||
rb_prev
|
||||
rb_replace_node
|
||||
__release_region
|
||||
@ -2445,7 +2481,6 @@
|
||||
si_meminfo
|
||||
skb_pull_rcsum
|
||||
skb_realloc_headroom
|
||||
smp_call_function
|
||||
smp_call_function_single
|
||||
snd_soc_component_test_bits
|
||||
sprint_symbol_no_offset
|
||||
@ -2455,31 +2490,17 @@
|
||||
syscore_suspend
|
||||
system_long_wq
|
||||
thermal_zone_device_update
|
||||
__traceiter_android_rvh_after_enqueue_task
|
||||
__traceiter_android_rvh_media_device_setup_link
|
||||
__traceiter_android_rvh_sched_rebalance_domains
|
||||
__traceiter_android_rvh_v4l2subdev_set_fmt
|
||||
__traceiter_android_rvh_v4l2subdev_set_frame_interval
|
||||
__traceiter_android_rvh_v4l2subdev_set_selection
|
||||
__traceiter_android_vh_cgroup_attach
|
||||
__traceiter_android_vh_ipv6_gen_linklocal_addr
|
||||
__traceiter_android_vh_is_fpsimd_save
|
||||
__traceiter_android_vh_media_device_setup_link
|
||||
__traceiter_android_vh_v4l2subdev_set_fmt
|
||||
__traceiter_android_vh_v4l2subdev_set_frame_interval
|
||||
__traceiter_android_vh_v4l2subdev_set_selection
|
||||
__traceiter_gpu_mem_total
|
||||
__traceiter_task_newtask
|
||||
__traceiter_xhci_urb_giveback
|
||||
trace_output_call
|
||||
__tracepoint_android_rvh_after_enqueue_task
|
||||
__tracepoint_android_rvh_media_device_setup_link
|
||||
__tracepoint_android_rvh_sched_rebalance_domains
|
||||
__tracepoint_android_rvh_v4l2subdev_set_fmt
|
||||
__tracepoint_android_rvh_v4l2subdev_set_frame_interval
|
||||
__tracepoint_android_rvh_v4l2subdev_set_selection
|
||||
__tracepoint_android_vh_cgroup_attach
|
||||
__tracepoint_android_vh_ipv6_gen_linklocal_addr
|
||||
__tracepoint_android_vh_is_fpsimd_save
|
||||
__tracepoint_android_vh_media_device_setup_link
|
||||
__tracepoint_android_vh_ufs_update_sdev
|
||||
@ -2487,8 +2508,6 @@
|
||||
__tracepoint_android_vh_v4l2subdev_set_frame_interval
|
||||
__tracepoint_android_vh_v4l2subdev_set_selection
|
||||
__tracepoint_gpu_mem_total
|
||||
__tracepoint_task_newtask
|
||||
__tracepoint_xhci_urb_giveback
|
||||
trace_print_flags_seq
|
||||
try_module_get
|
||||
tty_driver_flush_buffer
|
||||
|
@ -1,10 +1,9 @@
|
||||
[abi_symbol_list]
|
||||
# commonly used symbols
|
||||
|
||||
# required by xxx.ko
|
||||
|
||||
# required by touch module
|
||||
proc_mkdir_data
|
||||
proc_create_seq_private
|
||||
|
||||
# required by aw8697-haptic.ko
|
||||
devm_gpio_free
|
||||
@ -37,6 +36,10 @@
|
||||
scsi_report_bus_reset
|
||||
scsi_scan_host
|
||||
scsi_unblock_requests
|
||||
scsi_change_queue_depth
|
||||
scsi_print_command
|
||||
scsi_dma_map
|
||||
scsi_host_alloc
|
||||
sg_copy_from_buffer
|
||||
sg_copy_to_buffer
|
||||
ufshcd_alloc_host
|
||||
@ -47,10 +50,14 @@
|
||||
ufshcd_map_desc_id_to_length
|
||||
ufshcd_query_attr_retry
|
||||
ufshcd_query_flag_retry
|
||||
ufshcd_update_evt_hist
|
||||
wait_for_completion_io_timeout
|
||||
__scsi_add_device
|
||||
__scsi_execute
|
||||
blk_mq_free_tag_set
|
||||
blk_queue_update_dma_alignment
|
||||
blk_queue_update_dma_pad
|
||||
blk_ksm_get_slot_idx
|
||||
|
||||
#required by cs35l41 module
|
||||
regmap_raw_write_async
|
||||
@ -112,3 +119,39 @@
|
||||
simple_strtoul
|
||||
sync_blockdev
|
||||
wait_for_device_probe
|
||||
|
||||
#required by millet.ko
|
||||
freezer_cgrp_subsys
|
||||
__traceiter_android_vh_do_send_sig_info
|
||||
__traceiter_android_vh_binder_preset
|
||||
__traceiter_android_vh_binder_wait_for_work
|
||||
__traceiter_android_vh_binder_trans
|
||||
__traceiter_android_vh_binder_reply
|
||||
__traceiter_android_vh_binder_alloc_new_buf_locked
|
||||
__tracepoint_android_vh_do_send_sig_info
|
||||
__tracepoint_android_vh_binder_preset
|
||||
__tracepoint_android_vh_binder_wait_for_work
|
||||
__tracepoint_android_vh_binder_trans
|
||||
__tracepoint_android_vh_binder_reply
|
||||
__tracepoint_android_vh_binder_alloc_new_buf_locked
|
||||
|
||||
#required by mi_sched.ko
|
||||
__traceiter_android_vh_free_task
|
||||
__tracepoint_android_vh_free_task
|
||||
jiffies_64
|
||||
|
||||
#required by pm8941-pwrkey.ko module
|
||||
console_printk
|
||||
|
||||
#required by binderinfo.ko module
|
||||
__traceiter_android_vh_binder_transaction_init
|
||||
__traceiter_android_vh_binder_print_transaction_info
|
||||
__tracepoint_android_vh_binder_transaction_init
|
||||
__tracepoint_android_vh_binder_print_transaction_info
|
||||
|
||||
#required by reclaim module
|
||||
__traceiter_android_vh_tune_scan_type
|
||||
__tracepoint_android_vh_tune_scan_type
|
||||
__traceiter_android_vh_tune_swappiness
|
||||
__tracepoint_android_vh_tune_swappiness
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
# CONFIG_BITS_TEST is not set
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
|
||||
CONFIG_CMDLINE="kasan.stacktrace=off stack_depot_disable=off page_owner=on no_hash_pointers panic_on_taint=0x20"
|
||||
CONFIG_CMDLINE="kasan.stacktrace=off stack_depot_disable=off kvm-arm.mode=protected cgroup_disable=pressure cgroup.memory=nokmem page_owner=on no_hash_pointers panic_on_taint=0x20"
|
||||
CONFIG_DEBUG_KMEMLEAK=y
|
||||
# CONFIG_DEBUG_KMEMLEAK_AUTO_SCAN is not set
|
||||
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||
|
@ -271,6 +271,7 @@ CONFIG_BT_HCIUART_LL=y
|
||||
CONFIG_BT_HCIUART_BCM=y
|
||||
CONFIG_BT_HCIUART_QCA=y
|
||||
CONFIG_RFKILL=y
|
||||
CONFIG_NFC=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCIEPORTBUS=y
|
||||
CONFIG_PCIEAER=y
|
||||
@ -301,6 +302,7 @@ CONFIG_SCSI_UFS_DWC_TC_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_HISI=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
CONFIG_SCSI_UFS_CRYPTO=y
|
||||
CONFIG_SCSI_UFS_HPB=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
CONFIG_DM_CRYPT=y
|
||||
|
@ -248,6 +248,7 @@ CONFIG_BT_HCIUART_LL=y
|
||||
CONFIG_BT_HCIUART_BCM=y
|
||||
CONFIG_BT_HCIUART_QCA=y
|
||||
CONFIG_RFKILL=y
|
||||
CONFIG_NFC=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCIEPORTBUS=y
|
||||
CONFIG_PCIEAER=y
|
||||
@ -274,6 +275,7 @@ CONFIG_SCSI_UFSHCD_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_DWC_TC_PLATFORM=y
|
||||
CONFIG_SCSI_UFS_BSG=y
|
||||
CONFIG_SCSI_UFS_CRYPTO=y
|
||||
CONFIG_SCSI_UFS_HPB=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
CONFIG_DM_CRYPT=y
|
||||
|
@ -1385,6 +1385,21 @@ void scmi_unrequest_protocol_device(const struct scmi_device_id *id_table)
|
||||
mutex_unlock(&scmi_requested_devices_mtx);
|
||||
}
|
||||
|
||||
static int scmi_cleanup_txrx_channels(struct scmi_info *info)
|
||||
{
|
||||
int ret;
|
||||
struct idr *idr = &info->tx_idr;
|
||||
|
||||
ret = idr_for_each(idr, info->desc->ops->chan_free, idr);
|
||||
idr_destroy(&info->tx_idr);
|
||||
|
||||
idr = &info->rx_idr;
|
||||
ret = idr_for_each(idr, info->desc->ops->chan_free, idr);
|
||||
idr_destroy(&info->rx_idr);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int scmi_probe(struct platform_device *pdev)
|
||||
{
|
||||
int ret;
|
||||
@ -1426,7 +1441,7 @@ static int scmi_probe(struct platform_device *pdev)
|
||||
|
||||
ret = scmi_xfer_info_init(info);
|
||||
if (ret)
|
||||
return ret;
|
||||
goto clear_txrx_setup;
|
||||
|
||||
if (scmi_notification_init(handle))
|
||||
dev_err(dev, "SCMI Notifications NOT available.\n");
|
||||
@ -1439,7 +1454,7 @@ static int scmi_probe(struct platform_device *pdev)
|
||||
ret = scmi_acquire_protocol(handle, SCMI_PROTOCOL_BASE);
|
||||
if (ret) {
|
||||
dev_err(dev, "unable to communicate with SCMI\n");
|
||||
return ret;
|
||||
goto notification_exit;
|
||||
}
|
||||
|
||||
mutex_lock(&scmi_list_mutex);
|
||||
@ -1478,6 +1493,12 @@ static int scmi_probe(struct platform_device *pdev)
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
notification_exit:
|
||||
scmi_notification_exit(&info->handle);
|
||||
clear_txrx_setup:
|
||||
scmi_cleanup_txrx_channels(info);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void scmi_free_channel(struct scmi_chan_info *cinfo, struct idr *idr, int id)
|
||||
@ -1489,7 +1510,6 @@ static int scmi_remove(struct platform_device *pdev)
|
||||
{
|
||||
int ret = 0, id;
|
||||
struct scmi_info *info = platform_get_drvdata(pdev);
|
||||
struct idr *idr = &info->tx_idr;
|
||||
struct device_node *child;
|
||||
|
||||
mutex_lock(&scmi_list_mutex);
|
||||
@ -1513,14 +1533,7 @@ static int scmi_remove(struct platform_device *pdev)
|
||||
idr_destroy(&info->active_protocols);
|
||||
|
||||
/* Safe to free channels since no more users */
|
||||
ret = idr_for_each(idr, info->desc->ops->chan_free, idr);
|
||||
idr_destroy(&info->tx_idr);
|
||||
|
||||
idr = &info->rx_idr;
|
||||
ret = idr_for_each(idr, info->desc->ops->chan_free, idr);
|
||||
idr_destroy(&info->rx_idr);
|
||||
|
||||
return ret;
|
||||
return scmi_cleanup_txrx_channels(info);
|
||||
}
|
||||
|
||||
static ssize_t protocol_version_show(struct device *dev,
|
||||
|
@ -9318,7 +9318,7 @@ int ufshcd_alloc_host(struct device *dev, struct ufs_hba **hba_handle)
|
||||
}
|
||||
|
||||
host = scsi_host_alloc(&ufshcd_driver_template,
|
||||
sizeof(struct ufs_hba));
|
||||
sizeof(struct ufs_hba_with_hpb));
|
||||
if (!host) {
|
||||
dev_err(dev, "scsi_host_alloc failed\n");
|
||||
err = -ENOMEM;
|
||||
|
@ -913,7 +913,8 @@ struct ufs_hba {
|
||||
bool wb_enabled;
|
||||
struct delayed_work rpm_dev_flush_recheck_work;
|
||||
|
||||
#ifdef CONFIG_SCSI_UFS_HPB
|
||||
#if 0
|
||||
/* This has been moved into struct ufs_hba_with_hpb. */
|
||||
struct ufshpb_dev_info ufshpb_dev;
|
||||
#endif
|
||||
|
||||
@ -935,6 +936,17 @@ struct ufs_hba {
|
||||
ANDROID_KABI_RESERVE(4);
|
||||
};
|
||||
|
||||
/*
|
||||
* Compared to the upstream equivalent, @hpb_dev has been moved from struct
|
||||
* ufs_hba into struct ufs_hba_with_hpb to satisfy the Android ABI checks.
|
||||
*/
|
||||
struct ufs_hba_with_hpb {
|
||||
struct ufs_hba hba;
|
||||
#ifdef CONFIG_SCSI_UFS_HPB
|
||||
struct ufshpb_dev_info hpb_dev;
|
||||
#endif
|
||||
};
|
||||
|
||||
/* Returns true if clocks can be gated. Otherwise false */
|
||||
static inline bool ufshcd_is_clkgating_allowed(struct ufs_hba *hba)
|
||||
{
|
||||
|
@ -35,15 +35,20 @@ static struct workqueue_struct *ufshpb_wq;
|
||||
static void ufshpb_update_active_info(struct ufshpb_lu *hpb, int rgn_idx,
|
||||
int srgn_idx);
|
||||
|
||||
static inline struct ufshpb_dev_info *ufs_hba_to_hpb(struct ufs_hba *hba)
|
||||
{
|
||||
return &container_of(hba, struct ufs_hba_with_hpb, hba)->hpb_dev;
|
||||
}
|
||||
|
||||
bool ufshpb_is_allowed(struct ufs_hba *hba)
|
||||
{
|
||||
return !(hba->ufshpb_dev.hpb_disabled);
|
||||
return !(ufs_hba_to_hpb(hba)->hpb_disabled);
|
||||
}
|
||||
|
||||
/* HPB version 1.0 is called as legacy version. */
|
||||
bool ufshpb_is_legacy(struct ufs_hba *hba)
|
||||
{
|
||||
return hba->ufshpb_dev.is_legacy;
|
||||
return ufs_hba_to_hpb(hba)->is_legacy;
|
||||
}
|
||||
|
||||
static struct ufshpb_lu *ufshpb_get_hpb_data(struct scsi_device *sdev)
|
||||
@ -2743,8 +2748,7 @@ void ufshpb_init_hpb_lu(struct ufs_hba *hba, struct scsi_device *sdev)
|
||||
if (ret)
|
||||
goto out;
|
||||
|
||||
hpb = ufshpb_alloc_hpb_lu(hba, sdev, &hba->ufshpb_dev,
|
||||
&hpb_lu_info);
|
||||
hpb = ufshpb_alloc_hpb_lu(hba, sdev, ufs_hba_to_hpb(hba), &hpb_lu_info);
|
||||
if (!hpb)
|
||||
goto out;
|
||||
|
||||
@ -2753,7 +2757,7 @@ void ufshpb_init_hpb_lu(struct ufs_hba *hba, struct scsi_device *sdev)
|
||||
|
||||
out:
|
||||
/* All LUs are initialized */
|
||||
if (atomic_dec_and_test(&hba->ufshpb_dev.slave_conf_cnt))
|
||||
if (atomic_dec_and_test(&ufs_hba_to_hpb(hba)->slave_conf_cnt))
|
||||
ufshpb_hpb_lu_prepared(hba);
|
||||
}
|
||||
|
||||
@ -2810,7 +2814,7 @@ static int ufshpb_init_mem_wq(struct ufs_hba *hba)
|
||||
|
||||
void ufshpb_get_geo_info(struct ufs_hba *hba, u8 *geo_buf)
|
||||
{
|
||||
struct ufshpb_dev_info *hpb_info = &hba->ufshpb_dev;
|
||||
struct ufshpb_dev_info *hpb_info = ufs_hba_to_hpb(hba);
|
||||
int max_active_rgns = 0;
|
||||
int hpb_num_lu;
|
||||
|
||||
@ -2836,7 +2840,7 @@ void ufshpb_get_geo_info(struct ufs_hba *hba, u8 *geo_buf)
|
||||
|
||||
void ufshpb_get_dev_info(struct ufs_hba *hba, u8 *desc_buf)
|
||||
{
|
||||
struct ufshpb_dev_info *hpb_dev_info = &hba->ufshpb_dev;
|
||||
struct ufshpb_dev_info *hpb_dev_info = ufs_hba_to_hpb(hba);
|
||||
int version, ret;
|
||||
u32 max_hpb_single_cmd = HPB_MULTI_CHUNK_LOW;
|
||||
|
||||
@ -2873,7 +2877,7 @@ void ufshpb_get_dev_info(struct ufs_hba *hba, u8 *desc_buf)
|
||||
|
||||
void ufshpb_init(struct ufs_hba *hba)
|
||||
{
|
||||
struct ufshpb_dev_info *hpb_dev_info = &hba->ufshpb_dev;
|
||||
struct ufshpb_dev_info *hpb_dev_info = ufs_hba_to_hpb(hba);
|
||||
int try;
|
||||
int ret;
|
||||
|
||||
|
@ -218,7 +218,7 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request,
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void dwc3_ep0_stall_and_restart(struct dwc3 *dwc)
|
||||
void dwc3_ep0_stall_and_restart(struct dwc3 *dwc)
|
||||
{
|
||||
struct dwc3_ep *dep;
|
||||
|
||||
@ -1070,7 +1070,7 @@ void dwc3_ep0_send_delayed_status(struct dwc3 *dwc)
|
||||
__dwc3_ep0_do_control_status(dwc, dwc->eps[direction]);
|
||||
}
|
||||
|
||||
static void dwc3_ep0_end_control_data(struct dwc3 *dwc, struct dwc3_ep *dep)
|
||||
void dwc3_ep0_end_control_data(struct dwc3 *dwc, struct dwc3_ep *dep)
|
||||
{
|
||||
struct dwc3_gadget_ep_cmd_params params;
|
||||
u32 cmd;
|
||||
|
@ -2427,7 +2427,11 @@ static int dwc3_gadget_pullup(struct usb_gadget *g, int is_on)
|
||||
msecs_to_jiffies(DWC3_PULL_UP_TIMEOUT));
|
||||
if (ret == 0) {
|
||||
dev_err(dwc->dev, "timed out waiting for SETUP phase\n");
|
||||
return -ETIMEDOUT;
|
||||
spin_lock_irqsave(&dwc->lock, flags);
|
||||
dwc3_ep0_end_control_data(dwc, dwc->eps[0]);
|
||||
dwc3_ep0_end_control_data(dwc, dwc->eps[1]);
|
||||
dwc3_ep0_stall_and_restart(dwc);
|
||||
spin_unlock_irqrestore(&dwc->lock, flags);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -114,6 +114,9 @@ int __dwc3_gadget_ep0_set_halt(struct usb_ep *ep, int value);
|
||||
int dwc3_gadget_ep0_set_halt(struct usb_ep *ep, int value);
|
||||
int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request,
|
||||
gfp_t gfp_flags);
|
||||
void dwc3_ep0_stall_and_restart(struct dwc3 *dwc);
|
||||
void dwc3_ep0_end_control_data(struct dwc3 *dwc, struct dwc3_ep *dep);
|
||||
|
||||
int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value, int protocol);
|
||||
void dwc3_ep0_send_delayed_status(struct dwc3 *dwc);
|
||||
|
||||
|
@ -1464,6 +1464,7 @@ drivers/scsi/ufs/ufshci-dwc.h
|
||||
drivers/scsi/ufs/ufshci.h
|
||||
drivers/scsi/ufs/ufs-hisi.c
|
||||
drivers/scsi/ufs/ufs-hisi.h
|
||||
drivers/scsi/ufs/ufshpb.c
|
||||
drivers/scsi/ufs/ufshpb.h
|
||||
drivers/scsi/ufs/ufs_quirks.h
|
||||
drivers/scsi/ufs/ufs-sysfs.c
|
||||
@ -3683,6 +3684,7 @@ include/net/netprio_cgroup.h
|
||||
include/net/net_ratelimit.h
|
||||
include/net/netrom.h
|
||||
include/net/nexthop.h
|
||||
include/net/nfc/nfc.h
|
||||
include/net/nl802154.h
|
||||
include/net/p8022.h
|
||||
include/net/page_pool.h
|
||||
@ -4247,6 +4249,7 @@ include/uapi/linux/net_namespace.h
|
||||
include/uapi/linux/netrom.h
|
||||
include/uapi/linux/net_tstamp.h
|
||||
include/uapi/linux/nexthop.h
|
||||
include/uapi/linux/nfc.h
|
||||
include/uapi/linux/nfs2.h
|
||||
include/uapi/linux/nfs3.h
|
||||
include/uapi/linux/nfs4.h
|
||||
@ -5525,6 +5528,15 @@ net/netlink/af_netlink.c
|
||||
net/netlink/af_netlink.h
|
||||
net/netlink/genetlink.c
|
||||
net/netlink/policy.c
|
||||
net/nfc/af_nfc.c
|
||||
net/nfc/core.c
|
||||
net/nfc/llcp_commands.c
|
||||
net/nfc/llcp_core.c
|
||||
net/nfc/llcp.h
|
||||
net/nfc/llcp_sock.c
|
||||
net/nfc/netlink.c
|
||||
net/nfc/nfc.h
|
||||
net/nfc/rawsock.c
|
||||
net/packet/af_packet.c
|
||||
net/packet/internal.h
|
||||
net/rfkill/core.c
|
||||
|
@ -4217,6 +4217,7 @@ unsigned long long task_sched_runtime(struct task_struct *p)
|
||||
|
||||
return ns;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(task_sched_runtime);
|
||||
|
||||
/*
|
||||
* This function gets called by the timer code, with HZ frequency.
|
||||
@ -5554,6 +5555,10 @@ static int __sched_setscheduler(struct task_struct *p,
|
||||
/* Normal users shall not reset the sched_reset_on_fork flag: */
|
||||
if (p->sched_reset_on_fork && !reset_on_fork)
|
||||
return -EPERM;
|
||||
|
||||
/* Can't change util-clamps */
|
||||
if (attr->sched_flags & SCHED_FLAG_UTIL_CLAMP)
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
if (user) {
|
||||
|
@ -996,6 +996,7 @@ process_madvise_behavior_valid(int behavior)
|
||||
switch (behavior) {
|
||||
case MADV_COLD:
|
||||
case MADV_PAGEOUT:
|
||||
case MADV_WILLNEED:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
13
mm/slub.c
13
mm/slub.c
@ -1378,12 +1378,13 @@ parse_slub_debug_flags(char *str, slab_flags_t *flags, char **slabs, bool init)
|
||||
static int __init setup_slub_debug(char *str)
|
||||
{
|
||||
slab_flags_t flags;
|
||||
slab_flags_t global_flags;
|
||||
char *saved_str;
|
||||
char *slab_list;
|
||||
bool global_slub_debug_changed = false;
|
||||
bool slab_list_specified = false;
|
||||
|
||||
slub_debug = DEBUG_DEFAULT_FLAGS;
|
||||
global_flags = DEBUG_DEFAULT_FLAGS;
|
||||
if (*str++ != '=' || !*str)
|
||||
/*
|
||||
* No options specified. Switch on full debugging.
|
||||
@ -1395,7 +1396,7 @@ static int __init setup_slub_debug(char *str)
|
||||
str = parse_slub_debug_flags(str, &flags, &slab_list, true);
|
||||
|
||||
if (!slab_list) {
|
||||
slub_debug = flags;
|
||||
global_flags = flags;
|
||||
global_slub_debug_changed = true;
|
||||
} else {
|
||||
slab_list_specified = true;
|
||||
@ -1404,16 +1405,18 @@ static int __init setup_slub_debug(char *str)
|
||||
|
||||
/*
|
||||
* For backwards compatibility, a single list of flags with list of
|
||||
* slabs means debugging is only enabled for those slabs, so the global
|
||||
* slub_debug should be 0. We can extended that to multiple lists as
|
||||
* slabs means debugging is only changed for those slabs, so the global
|
||||
* slub_debug should be unchanged (0 or DEBUG_DEFAULT_FLAGS, depending
|
||||
* on CONFIG_SLUB_DEBUG_ON). We can extended that to multiple lists as
|
||||
* long as there is no option specifying flags without a slab list.
|
||||
*/
|
||||
if (slab_list_specified) {
|
||||
if (!global_slub_debug_changed)
|
||||
slub_debug = 0;
|
||||
global_flags = slub_debug;
|
||||
slub_debug_string = saved_str;
|
||||
}
|
||||
out:
|
||||
slub_debug = global_flags;
|
||||
if (slub_debug != 0 || slub_debug_string)
|
||||
static_branch_enable(&slub_debug_enabled);
|
||||
if ((static_branch_unlikely(&init_on_alloc) ||
|
||||
|
Loading…
Reference in New Issue
Block a user