tree 9ca66c7fc5a6eb701e39b78315dc02dfb84f2a5f
parent c1627b3b5ce8ef12a045149c319242f79b835426
author Cixi Geng <cixi.geng1@unisoc.com> 1744680182 +0800
committer Cixi Geng <cixi.geng1@unisoc.com> 1744680182 +0800

ANDROID: GKI: Add unisoc modules symbols

77 function symbol(s) added
  'struct regmap* __regmap_init_i2c(struct i2c_client*, const struct regmap_config*, struct lock_class_key*, const char*)'
  'void __sdhci_read_caps(struct sdhci_host*, const u16*, const u32*, const u32*)'
  'void __show_mem(unsigned int, nodemask_t*, int)'
  'int __traceiter_android_rvh_ctl_dirty_rate(void*, struct inode*)'
  'int __traceiter_android_rvh_sched_balance_find_src_group(void*, struct sched_group*, struct rq*, int*)'
  'int __traceiter_android_vh_kmalloc_large_alloced(void*, struct folio*, unsigned int, gfp_t)'
  'int __traceiter_android_vh_printk_ext_header(void*, char*, size_t, u32, int*)'
  'int __traceiter_android_vh_regmap_update(void*, const struct regmap_config*, struct regmap*)'
  'int __traceiter_android_vh_slab_folio_alloced(void*, unsigned int, gfp_t)'
  'ktime_t alarm_expires_remaining(const struct alarm*)'
  'u64 alarm_forward(struct alarm*, ktime_t, ktime_t)'
  'void blk_mq_run_hw_queues(struct request_queue*, bool)'
  'struct thermal_cooling_device* devfreq_cooling_em_register(struct devfreq*, struct devfreq_cooling_power*)'
  'int devfreq_update_status(struct devfreq*, unsigned long)'
  'struct bio* dm_bio_from_per_bio_data(void*, size_t)'
  'void* dm_bufio_read(struct dm_bufio_client*, sector_t, struct dm_buffer**)'
  'long drm_ioctl_kernel(struct file*, drm_ioctl_t*, void*, u32)'
  'void drm_send_event_timestamp_locked(struct drm_device*, struct drm_pending_event*, ktime_t)'
  'void icmp6_send(struct sk_buff*, u8, u8, __u32, const struct in6_addr*, const struct inet6_skb_parm*)'
  'irqreturn_t iio_pollfunc_store_time(int, void*)'
  'int iio_read_channel_raw(struct iio_channel*, int*)'
  '__be32 inet_select_addr(const struct net_device*, __be32, int)'
  'int ip6_find_1stfragopt(struct sk_buff*, u8**)'
  'struct dst_entry* ip6_route_output_flags(struct net*, const struct sock*, struct flowi6*, int)'
  'int ipv6_dev_get_saddr(struct net*, const struct net_device*, const struct in6_addr*, unsigned int, struct in6_addr*)'
  '__be32 ipv6_select_ident(struct net*, const struct in6_addr*, const struct in6_addr*)'
  'void ksys_sync_helper()'
  'ssize_t mipi_dsi_generic_read(struct mipi_dsi_device*, const void*, size_t, void*, size_t)'
  'int mipi_dsi_set_maximum_return_packet_size(struct mipi_dsi_device*, u16)'
  'void mmc_cqe_post_req(struct mmc_host*, struct mmc_request*)'
  'void mmc_regulator_disable_vqmmc(struct mmc_host*)'
  'int mmc_regulator_enable_vqmmc(struct mmc_host*)'
  'int mmc_send_status(struct mmc_card*, u32*)'
  'struct nf_conntrack_tuple_hash* nf_conntrack_find_get(struct net*, const struct nf_conntrack_zone*, const struct nf_conntrack_tuple*)'
  'void nf_ct_destroy(struct nf_conntrack*)'
  'bool nf_ct_get_tuplepr(const struct sk_buff*, unsigned int, u_int16_t, struct net*, struct nf_conntrack_tuple*)'
  'bool nf_ct_invert_tuple(struct nf_conntrack_tuple*, const struct nf_conntrack_tuple*)'
  'int nvmem_cell_read_u16(struct device*, const char*, u16*)'
  'unsigned int of_clk_get_parent_count(const struct device_node*)'
  'struct dma_chan* of_dma_simple_xlate(struct of_phandle_args*, struct of_dma*)'
  'int of_get_drm_display_mode(struct device_node*, struct drm_display_mode*, u32*, int)'
  'int pinconf_generic_parse_dt_config(struct device_node*, struct pinctrl_dev*, unsigned long**, unsigned int*)'
  'struct pinctrl_dev* pinctrl_register(struct pinctrl_desc*, struct device*, void*)'
  'int pinctrl_utils_add_map_configs(struct pinctrl_dev*, struct pinctrl_map**, unsigned int*, unsigned int*, const char*, unsigned long*, unsigned int, enum pinctrl_map_type)'
  'int pinctrl_utils_add_map_mux(struct pinctrl_dev*, struct pinctrl_map**, unsigned int*, unsigned int*, const char*, const char*)'
  'int pinctrl_utils_reserve_map(struct pinctrl_dev*, struct pinctrl_map**, unsigned int*, unsigned int*, unsigned int)'
  'int pskb_trim_rcsum_slow(struct sk_buff*, unsigned int)'
  'int pvclock_gtod_register_notifier(struct notifier_block*)'
  'void refresh_frequency_limits(struct cpufreq_policy*)'
  'struct regulator_dev* regulator_register(struct device*, const struct regulator_desc*, const struct regulator_config*)'
  'struct rt6_info* rt6_lookup(struct net*, const struct in6_addr*, const struct in6_addr*, int, const struct sk_buff*, int)'
  'int scsi_test_unit_ready(struct scsi_device*, int, int, struct scsi_sense_hdr*)'
  'void sdhci_enable_v4_mode(struct sdhci_host*)'
  'void sdhci_request(struct mmc_host*, struct mmc_request*)'
  'int sdhci_request_atomic(struct mmc_host*, struct mmc_request*)'
  'unsigned int snd_pcm_rate_bit_to_rate(unsigned int)'
  'void thermal_zone_device_critical(struct thermal_zone_device*)'
  'unsigned long tick_nohz_get_idle_calls_cpu(int)'
  'int typec_altmode_attention(struct typec_altmode*, u32)'
  'int typec_altmode_notify(struct typec_altmode*, unsigned long, void*)'
  'void typec_altmode_update_active(struct typec_altmode*, bool)'
  'int typec_altmode_vdm(struct typec_altmode*, u32, const u32*, int)'
  'int typec_find_port_data_role(const char*)'
  'int typec_find_port_power_role(const char*)'
  'int typec_find_power_role(const char*)'
  'struct typec_altmode* typec_match_altmode(struct typec_altmode**, size_t, u16, u8)'
  'struct typec_altmode* typec_partner_register_altmode(struct typec_partner*, const struct typec_altmode_desc*)'
  'int typec_partner_set_identity(struct typec_partner*)'
  'void typec_partner_set_svdm_version(struct typec_partner*, enum usb_pd_svdm_ver)'
  'struct typec_altmode* typec_port_register_altmode(struct typec_port*, const struct typec_altmode_desc*)'
  'int typec_set_mode(struct typec_port*, int)'
  'void typec_set_vconn_role(struct typec_port*, enum typec_role)'
  'void typec_unregister_altmode(struct typec_altmode*)'
  'int ufshcd_link_recovery(struct ufs_hba*)'
  'struct usb_role_switch* usb_role_switch_get(struct device*)'
  'unsigned long vm_memory_committed()'
  'struct xfrm_state_afinfo* xfrm_state_afinfo_get_rcu(unsigned int)'

7 variable symbol(s) added
  'struct tracepoint __tracepoint_android_rvh_ctl_dirty_rate'
  'struct tracepoint __tracepoint_android_rvh_sched_balance_find_src_group'
  'struct tracepoint __tracepoint_android_vh_kmalloc_large_alloced'
  'struct tracepoint __tracepoint_android_vh_printk_ext_header'
  'struct tracepoint __tracepoint_android_vh_regmap_update'
  'struct tracepoint __tracepoint_android_vh_slab_folio_alloced'
  'nodemask_t node_states[6]'

Bug: 409896179
Change-Id: Ieda6556b122e4580bd374df92785844ecce5b156
Signed-off-by: Cixi Geng <cixi.geng1@unisoc.com>
