Snap for 10254331
from 80b57a636d
to android14-6.1-keystone-qcom-release
Change-Id: I15970736c910adf1ced86faa8fde5e4c73d7a38d
This commit is contained in:
commit
a0290fa5b8
File diff suppressed because it is too large
Load Diff
@ -1,9 +1,13 @@
|
||||
[abi_symbol_list]
|
||||
address_space_init_once
|
||||
bio_add_page
|
||||
bio_associate_blkg
|
||||
bio_put
|
||||
__blkdev_issue_discard
|
||||
blk_finish_plug
|
||||
blk_rq_map_user
|
||||
blk_rq_map_user_iov
|
||||
blk_start_plug
|
||||
console_printk
|
||||
cpufreq_frequency_table_get_index
|
||||
cpufreq_policy_transition_delay_us
|
||||
@ -42,10 +46,14 @@
|
||||
nf_register_net_hooks
|
||||
nf_unregister_net_hooks
|
||||
of_css
|
||||
__page_file_index
|
||||
__page_mapcount
|
||||
pm_get_active_wakeup_sources
|
||||
__printk_ratelimit
|
||||
prepare_to_wait_exclusive
|
||||
proc_symlink
|
||||
radix_tree_lookup_slot
|
||||
radix_tree_replace_slot
|
||||
_raw_write_trylock
|
||||
reciprocal_value
|
||||
register_tcf_proto_ops
|
||||
|
@ -694,6 +694,7 @@
|
||||
dev_pm_opp_of_register_em
|
||||
dev_pm_opp_of_remove_table
|
||||
dev_pm_opp_put
|
||||
dev_pm_opp_remove
|
||||
dev_pm_opp_remove_all_dynamic
|
||||
dev_pm_opp_set_config
|
||||
dev_pm_opp_set_opp
|
||||
@ -1892,12 +1893,37 @@
|
||||
__mmap_lock_do_trace_acquire_returned
|
||||
__mmap_lock_do_trace_released
|
||||
__mmap_lock_do_trace_start_locking
|
||||
__mmc_claim_host
|
||||
mmc_cqe_request_done
|
||||
mmc_execute_tuning
|
||||
mmc_get_card
|
||||
mmc_get_ext_csd
|
||||
mmc_hs200_tuning
|
||||
mmc_issue_type
|
||||
mmc_of_parse
|
||||
__mmc_poll_for_busy
|
||||
mmc_prepare_busy_cmd
|
||||
mmc_put_card
|
||||
mmc_regulator_get_supply
|
||||
mmc_regulator_set_ocr
|
||||
mmc_regulator_set_vqmmc
|
||||
mmc_release_host
|
||||
mmc_retune_hold
|
||||
mmc_retune_release
|
||||
mmc_select_bus_width
|
||||
mmc_select_card
|
||||
mmc_select_hs400
|
||||
mmc_select_hs
|
||||
mmc_select_hs_ddr
|
||||
mmc_select_timing
|
||||
mmc_send_status
|
||||
mmc_send_tuning
|
||||
mmc_set_bus_mode
|
||||
mmc_set_bus_width
|
||||
mmc_set_clock
|
||||
mmc_set_initial_state
|
||||
mmc_set_timing
|
||||
mmc_wait_for_cmd
|
||||
mmput
|
||||
mod_delayed_work_on
|
||||
mod_node_page_state
|
||||
@ -3246,6 +3272,8 @@
|
||||
__traceiter_android_rvh_iommu_setup_dma_ops
|
||||
__traceiter_android_rvh_is_cpu_allowed
|
||||
__traceiter_android_rvh_migrate_queued_task
|
||||
__traceiter_android_rvh_mmc_resume
|
||||
__traceiter_android_rvh_mmc_suspend
|
||||
__traceiter_android_rvh_new_task_stats
|
||||
__traceiter_android_rvh_pick_next_entity
|
||||
__traceiter_android_rvh_place_entity
|
||||
@ -3378,6 +3406,8 @@
|
||||
__tracepoint_android_rvh_iommu_setup_dma_ops
|
||||
__tracepoint_android_rvh_is_cpu_allowed
|
||||
__tracepoint_android_rvh_migrate_queued_task
|
||||
__tracepoint_android_rvh_mmc_resume
|
||||
__tracepoint_android_rvh_mmc_suspend
|
||||
__tracepoint_android_rvh_new_task_stats
|
||||
__tracepoint_android_rvh_pick_next_entity
|
||||
__tracepoint_android_rvh_place_entity
|
||||
|
@ -89,12 +89,16 @@
|
||||
__spi_alloc_controller
|
||||
__stack_chk_fail
|
||||
strcmp
|
||||
__traceiter_android_rvh_psci_cpu_suspend
|
||||
__traceiter_android_rvh_psci_tos_resident_on
|
||||
__traceiter_android_vh_get_thermal_zone_device
|
||||
__traceiter_android_vh_modify_thermal_request_freq
|
||||
__traceiter_android_vh_modify_thermal_target_freq
|
||||
__traceiter_android_vh_thermal_power_cap
|
||||
__traceiter_android_vh_thermal_register
|
||||
__traceiter_android_vh_thermal_unregister
|
||||
__tracepoint_android_rvh_psci_cpu_suspend
|
||||
__tracepoint_android_rvh_psci_tos_resident_on
|
||||
__tracepoint_android_vh_get_thermal_zone_device
|
||||
__tracepoint_android_vh_modify_thermal_request_freq
|
||||
__tracepoint_android_vh_modify_thermal_target_freq
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include <trace/hooks/preemptirq.h>
|
||||
#include <trace/hooks/ftrace_dump.h>
|
||||
#include <trace/hooks/ufshcd.h>
|
||||
#include <trace/hooks/mmc.h>
|
||||
#include <trace/hooks/cgroup.h>
|
||||
#include <trace/hooks/sys.h>
|
||||
#include <trace/hooks/iommu.h>
|
||||
@ -62,6 +63,7 @@
|
||||
#include <trace/hooks/typec.h>
|
||||
#include <trace/hooks/user.h>
|
||||
#include <trace/hooks/signal.h>
|
||||
#include <trace/hooks/psci.h>
|
||||
#include <trace/hooks/psi.h>
|
||||
|
||||
/*
|
||||
@ -258,9 +260,13 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shrink_slab_bypass);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_shrink_slab);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_get_page_wmark);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_page_add_new_anon_rmap);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_psci_tos_resident_on);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_psci_cpu_suspend);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_psi_event);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_psi_group);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpufreq_acct_update_power);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_mmc_resume);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_mmc_suspend);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_signal);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_shrink_node_memcgs);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_modify_thermal_request_freq);
|
||||
|
@ -28,6 +28,7 @@
|
||||
#include <asm/system_misc.h>
|
||||
#include <asm/smp_plat.h>
|
||||
#include <asm/suspend.h>
|
||||
#include <trace/hooks/psci.h>
|
||||
|
||||
/*
|
||||
* While a 64-bit OS can make calls with SMC32 calling conventions, for some
|
||||
@ -53,6 +54,12 @@ static enum arm_smccc_conduit psci_conduit = SMCCC_CONDUIT_NONE;
|
||||
|
||||
bool psci_tos_resident_on(int cpu)
|
||||
{
|
||||
bool resident = false;
|
||||
|
||||
trace_android_rvh_psci_tos_resident_on(cpu, &resident);
|
||||
if (resident)
|
||||
return resident;
|
||||
|
||||
return cpu == resident_cpu;
|
||||
}
|
||||
|
||||
@ -175,6 +182,11 @@ static __always_inline int
|
||||
__psci_cpu_suspend(u32 fn, u32 state, unsigned long entry_point)
|
||||
{
|
||||
int err;
|
||||
bool deny = false;
|
||||
|
||||
trace_android_rvh_psci_cpu_suspend(state, &deny);
|
||||
if (deny)
|
||||
return -EPERM;
|
||||
|
||||
err = invoke_psci_fn(fn, state, entry_point, 0);
|
||||
return psci_to_linux_errno(err);
|
||||
|
@ -917,6 +917,7 @@ void mmc_set_clock(struct mmc_host *host, unsigned int hz)
|
||||
host->ios.clock = hz;
|
||||
mmc_set_ios(host);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_set_clock);
|
||||
|
||||
int mmc_execute_tuning(struct mmc_card *card)
|
||||
{
|
||||
@ -951,6 +952,7 @@ int mmc_execute_tuning(struct mmc_card *card)
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_execute_tuning);
|
||||
|
||||
/*
|
||||
* Change the bus mode (open drain/push-pull) of a host.
|
||||
@ -960,6 +962,7 @@ void mmc_set_bus_mode(struct mmc_host *host, unsigned int mode)
|
||||
host->ios.bus_mode = mode;
|
||||
mmc_set_ios(host);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_set_bus_mode);
|
||||
|
||||
/*
|
||||
* Change data bus width of a host.
|
||||
@ -969,6 +972,7 @@ void mmc_set_bus_width(struct mmc_host *host, unsigned int width)
|
||||
host->ios.bus_width = width;
|
||||
mmc_set_ios(host);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_set_bus_width);
|
||||
|
||||
/*
|
||||
* Set initial state after a power cycle or a hw_reset.
|
||||
@ -1002,6 +1006,7 @@ void mmc_set_initial_state(struct mmc_host *host)
|
||||
|
||||
mmc_crypto_set_initial_state(host);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_set_initial_state);
|
||||
|
||||
/**
|
||||
* mmc_vdd_to_ocrbitnum - Convert a voltage to the OCR bit number
|
||||
@ -1271,6 +1276,7 @@ void mmc_set_timing(struct mmc_host *host, unsigned int timing)
|
||||
host->ios.timing = timing;
|
||||
mmc_set_ios(host);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_set_timing);
|
||||
|
||||
/*
|
||||
* Select appropriate driver type for host.
|
||||
|
@ -166,6 +166,7 @@ void mmc_retune_hold(struct mmc_host *host)
|
||||
host->retune_now = 1;
|
||||
host->hold_retune += 1;
|
||||
}
|
||||
EXPORT_SYMBOL(mmc_retune_hold);
|
||||
|
||||
void mmc_retune_release(struct mmc_host *host)
|
||||
{
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include <linux/mmc/host.h>
|
||||
#include <linux/mmc/card.h>
|
||||
#include <linux/mmc/mmc.h>
|
||||
#include <trace/hooks/mmc.h>
|
||||
|
||||
#include "core.h"
|
||||
#include "card.h"
|
||||
@ -1002,7 +1003,7 @@ static void mmc_set_bus_speed(struct mmc_card *card)
|
||||
* If the bus width is changed successfully, return the selected width value.
|
||||
* Zero is returned instead of error value if the wide width is not supported.
|
||||
*/
|
||||
static int mmc_select_bus_width(struct mmc_card *card)
|
||||
int mmc_select_bus_width(struct mmc_card *card)
|
||||
{
|
||||
static unsigned ext_csd_bits[] = {
|
||||
EXT_CSD_BUS_WIDTH_8,
|
||||
@ -1067,11 +1068,12 @@ static int mmc_select_bus_width(struct mmc_card *card)
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_bus_width);
|
||||
|
||||
/*
|
||||
* Switch to the high-speed mode
|
||||
*/
|
||||
static int mmc_select_hs(struct mmc_card *card)
|
||||
int mmc_select_hs(struct mmc_card *card)
|
||||
{
|
||||
int err;
|
||||
|
||||
@ -1085,11 +1087,12 @@ static int mmc_select_hs(struct mmc_card *card)
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_hs);
|
||||
|
||||
/*
|
||||
* Activate wide bus and DDR if supported.
|
||||
*/
|
||||
static int mmc_select_hs_ddr(struct mmc_card *card)
|
||||
int mmc_select_hs_ddr(struct mmc_card *card)
|
||||
{
|
||||
struct mmc_host *host = card->host;
|
||||
u32 bus_width, ext_csd_bits;
|
||||
@ -1158,8 +1161,9 @@ static int mmc_select_hs_ddr(struct mmc_card *card)
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_hs_ddr);
|
||||
|
||||
static int mmc_select_hs400(struct mmc_card *card)
|
||||
int mmc_select_hs400(struct mmc_card *card)
|
||||
{
|
||||
struct mmc_host *host = card->host;
|
||||
unsigned int max_dtr;
|
||||
@ -1253,6 +1257,7 @@ static int mmc_select_hs400(struct mmc_card *card)
|
||||
__func__, err);
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_hs400);
|
||||
|
||||
int mmc_hs200_to_hs400(struct mmc_card *card)
|
||||
{
|
||||
@ -1533,7 +1538,7 @@ static int mmc_select_hs200(struct mmc_card *card)
|
||||
/*
|
||||
* Activate High Speed, HS200 or HS400ES mode if supported.
|
||||
*/
|
||||
static int mmc_select_timing(struct mmc_card *card)
|
||||
int mmc_select_timing(struct mmc_card *card)
|
||||
{
|
||||
int err = 0;
|
||||
|
||||
@ -1568,12 +1573,13 @@ static int mmc_select_timing(struct mmc_card *card)
|
||||
mmc_set_bus_speed(card);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_timing);
|
||||
|
||||
/*
|
||||
* Execute tuning sequence to seek the proper bus operating
|
||||
* conditions for HS200 and HS400, which sends CMD21 to the device.
|
||||
*/
|
||||
static int mmc_hs200_tuning(struct mmc_card *card)
|
||||
int mmc_hs200_tuning(struct mmc_card *card)
|
||||
{
|
||||
struct mmc_host *host = card->host;
|
||||
|
||||
@ -1588,6 +1594,7 @@ static int mmc_hs200_tuning(struct mmc_card *card)
|
||||
|
||||
return mmc_execute_tuning(card);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_hs200_tuning);
|
||||
|
||||
/*
|
||||
* Handle the detection and initialisation of a card.
|
||||
@ -2112,9 +2119,10 @@ static int _mmc_suspend(struct mmc_host *host, bool is_suspend)
|
||||
((host->caps2 & MMC_CAP2_FULL_PWR_CYCLE) || !is_suspend ||
|
||||
(host->caps2 & MMC_CAP2_FULL_PWR_CYCLE_IN_SUSPEND)))
|
||||
err = mmc_poweroff_notify(host->card, notify_type);
|
||||
else if (mmc_can_sleep(host->card))
|
||||
else if (mmc_can_sleep(host->card)) {
|
||||
trace_android_rvh_mmc_suspend(host);
|
||||
err = mmc_sleep(host);
|
||||
else if (!mmc_host_is_spi(host))
|
||||
} else if (!mmc_host_is_spi(host))
|
||||
err = mmc_deselect_cards(host);
|
||||
|
||||
if (!err) {
|
||||
@ -2149,6 +2157,7 @@ static int mmc_suspend(struct mmc_host *host)
|
||||
static int _mmc_resume(struct mmc_host *host)
|
||||
{
|
||||
int err = 0;
|
||||
bool resume_success = false;
|
||||
|
||||
mmc_claim_host(host);
|
||||
|
||||
@ -2156,7 +2165,9 @@ static int _mmc_resume(struct mmc_host *host)
|
||||
goto out;
|
||||
|
||||
mmc_power_up(host, host->card->ocr);
|
||||
err = mmc_init_card(host, host->card->ocr, host->card);
|
||||
trace_android_rvh_mmc_resume(host, &resume_success);
|
||||
if (!resume_success)
|
||||
err = mmc_init_card(host, host->card->ocr, host->card);
|
||||
mmc_card_clr_suspended(host->card);
|
||||
|
||||
out:
|
||||
|
@ -118,6 +118,7 @@ int mmc_select_card(struct mmc_card *card)
|
||||
|
||||
return _mmc_select_card(card->host, card);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_select_card);
|
||||
|
||||
int mmc_deselect_cards(struct mmc_host *host)
|
||||
{
|
||||
@ -575,6 +576,7 @@ bool mmc_prepare_busy_cmd(struct mmc_host *host, struct mmc_command *cmd,
|
||||
cmd->busy_timeout = timeout_ms;
|
||||
return true;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_prepare_busy_cmd);
|
||||
|
||||
/**
|
||||
* __mmc_switch - modify EXT_CSD register
|
||||
|
@ -69,6 +69,7 @@ enum mmc_issue_type mmc_issue_type(struct mmc_queue *mq, struct request *req)
|
||||
|
||||
return MMC_ISSUE_SYNC;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmc_issue_type);
|
||||
|
||||
static void __mmc_cqe_recovery_notifier(struct mmc_queue *mq)
|
||||
{
|
||||
|
25
include/trace/hooks/mmc.h
Normal file
25
include/trace/hooks/mmc.h
Normal file
@ -0,0 +1,25 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
#undef TRACE_SYSTEM
|
||||
#define TRACE_SYSTEM mmc
|
||||
#undef TRACE_INCLUDE_PATH
|
||||
#define TRACE_INCLUDE_PATH trace/hooks
|
||||
#if !defined(_TRACE_HOOK_MMC_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||
#define _TRACE_HOOK_MMC_H
|
||||
#include <trace/hooks/vendor_hooks.h>
|
||||
struct mmc_host;
|
||||
|
||||
/*
|
||||
* Following tracepoints are not exported in tracefs and provide a
|
||||
* mechanism for vendor modules to hook and extend functionality
|
||||
*/
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_mmc_suspend,
|
||||
TP_PROTO(struct mmc_host *host),
|
||||
TP_ARGS(host), 1);
|
||||
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_mmc_resume,
|
||||
TP_PROTO(struct mmc_host *host, bool *resume_success),
|
||||
TP_ARGS(host, resume_success), 1);
|
||||
|
||||
#endif /* _TRACE_HOOK_MMC_H */
|
||||
/* This part must be outside protection */
|
||||
#include <trace/define_trace.h>
|
25
include/trace/hooks/psci.h
Normal file
25
include/trace/hooks/psci.h
Normal file
@ -0,0 +1,25 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
#undef TRACE_SYSTEM
|
||||
#define TRACE_SYSTEM psci
|
||||
#undef TRACE_INCLUDE_PATH
|
||||
|
||||
#define TRACE_INCLUDE_PATH trace/hooks
|
||||
|
||||
#if !defined(_TRACE_HOOK_PSCI_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||
#define _TRACE_HOOK_PSCI_H
|
||||
|
||||
#include <trace/hooks/vendor_hooks.h>
|
||||
|
||||
DECLARE_HOOK(android_rvh_psci_tos_resident_on,
|
||||
TP_PROTO(int cpu, bool *resident),
|
||||
TP_ARGS(cpu, resident));
|
||||
|
||||
DECLARE_HOOK(android_rvh_psci_cpu_suspend,
|
||||
TP_PROTO(u32 state, bool *deny),
|
||||
TP_ARGS(state, deny));
|
||||
|
||||
/* macro versions of hooks are no longer required */
|
||||
|
||||
#endif /* _TRACE_HOOK_PSCI_H */
|
||||
/* This part must be outside protection */
|
||||
#include <trace/define_trace.h>
|
Loading…
Reference in New Issue
Block a user