mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 11:26:02 +09:00
Merge tag 'android14-6.1-2024-05_r1' of https://android.googlesource.com/kernel/common
android14-6.1 May 2024 release 1 Artifacts: https://ci.android.com/builds/submitted/11839406/kernel_aarch64/latest * commit 'android14-6.1-2024-05_r1': (67 commits) UPSTREAM: crypto: x86/curve25519 - disable gcov ANDROID: GKI: Update QCOM symbol list and ABI STG ANDROID: GKI: update symbol list file for xiaomi UPSTREAM: netfilter: nft_set_pipapo: do not free live element UPSTREAM: net: tls: handle backlogging of crypto requests ANDROID: 16K: Fix show maps CFI failure ANDROID: 16K: Handle pad VMA splits and merges ANDROID: 16K: madvise_vma_pad_pages: Remove filemap_fault check ANDROID: 16K: Only madvise padding from dynamic linker context ANDROID: 16K: Separate padding from ELF LOAD segment mappings ANDROID: 16K: Exclude ELF padding for fault around range ANDROID: 16K: Use MADV_DONTNEED to save VMA padding pages. ANDROID: 16K: Introduce ELF padding representation for VMAs ANDROID: 16K: Introduce /sys/kernel/mm/pgsize_miration/enabled FROMGIT: usb: typec: tcpm: Check for port partner validity before consuming it Revert "FROMGIT: usb: typec: tcpm: Check for port partner validity before consuming it" FROMGIT: usb: typec: tcpm: Check for port partner validity before consuming it ANDROID: vendor_hooks: add symbols for lazy preemption ANDROID: vendor_hooks: add two hooks for lazy preemption ANDROID: KVM: arm64: wait_for_initramfs for pKVM module loading procfs ... Change-Id: If336d92585acfd2b1d33faa0a81c3fe8b2389997
This commit is contained in:
@@ -120,6 +120,7 @@ filegroup(
|
||||
"android/abi_gki_aarch64_rockchip",
|
||||
"android/abi_gki_aarch64_sony",
|
||||
"android/abi_gki_aarch64_tuxera",
|
||||
"android/abi_gki_aarch64_type_visibility",
|
||||
"android/abi_gki_aarch64_unisoc",
|
||||
"android/abi_gki_aarch64_virtual_device",
|
||||
"android/abi_gki_aarch64_vivo",
|
||||
|
||||
@@ -1697,6 +1697,17 @@
|
||||
(that will set all pages holding image data
|
||||
during restoration read-only).
|
||||
|
||||
hibernate.compressor= [HIBERNATION] Compression algorithm to be
|
||||
used with hibernation.
|
||||
Format: { lzo | lz4 }
|
||||
Default: lzo
|
||||
|
||||
lzo: Select LZO compression algorithm to
|
||||
compress/decompress hibernation image.
|
||||
|
||||
lz4: Select LZ4 compression algorithm to
|
||||
compress/decompress hibernation image.
|
||||
|
||||
highmem=nn[KMG] [KNL,BOOT] forces the highmem zone to have an exact
|
||||
size of <nn>. This works even on boxes that have no
|
||||
highmem otherwise. This also works to reduce highmem
|
||||
|
||||
@@ -115,6 +115,9 @@ events, except page fault notifications, may be generated:
|
||||
areas. ``UFFD_FEATURE_MINOR_SHMEM`` is the analogous feature indicating
|
||||
support for shmem virtual memory areas.
|
||||
|
||||
- ``UFFD_FEATURE_MOVE`` indicates that the kernel supports moving an
|
||||
existing page contents from userspace.
|
||||
|
||||
The userland application should set the feature flags it intends to use
|
||||
when invoking the ``UFFDIO_API`` ioctl, to request that those features be
|
||||
enabled if supported.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -562,7 +562,6 @@
|
||||
netif_receive_skb
|
||||
netif_rx
|
||||
netif_tx_wake_queue
|
||||
netlink_broadcast
|
||||
nla_memcpy
|
||||
nla_put
|
||||
nla_put_64bit
|
||||
@@ -1070,6 +1069,7 @@
|
||||
kfree_sensitive
|
||||
ktime_get_coarse_with_offset
|
||||
netdev_err
|
||||
netlink_broadcast
|
||||
netlink_register_notifier
|
||||
netlink_unicast
|
||||
netlink_unregister_notifier
|
||||
@@ -1193,6 +1193,7 @@
|
||||
platform_device_del
|
||||
platform_device_put
|
||||
pm_runtime_allow
|
||||
usb_ep_set_halt
|
||||
usb_gadget_set_state
|
||||
usb_otg_state_string
|
||||
usb_role_switch_set_role
|
||||
@@ -2040,6 +2041,7 @@
|
||||
irq_get_irqchip_state
|
||||
of_property_read_variable_u16_array
|
||||
pci_enable_wake
|
||||
pci_load_and_free_saved_state
|
||||
pcim_enable_device
|
||||
pcim_iomap_regions
|
||||
pcim_iomap_table
|
||||
@@ -2057,6 +2059,7 @@
|
||||
__cpuhp_state_remove_instance
|
||||
dev_addr_mod
|
||||
dev_alloc_name
|
||||
dev_change_flags
|
||||
__dev_queue_xmit
|
||||
dev_set_threaded
|
||||
down_trylock
|
||||
|
||||
@@ -11,6 +11,8 @@
|
||||
|
||||
# commonly required by ledtrig-*.ko modules
|
||||
led_blink_set_oneshot
|
||||
led_get_default_pattern
|
||||
led_set_brightness
|
||||
led_set_brightness_nosleep
|
||||
led_stop_software_blink
|
||||
|
||||
|
||||
@@ -63,6 +63,8 @@
|
||||
nf_unregister_net_hooks
|
||||
nr_running
|
||||
of_css
|
||||
osq_lock
|
||||
osq_unlock
|
||||
__page_file_index
|
||||
__page_mapcount
|
||||
pm_get_active_wakeup_sources
|
||||
@@ -166,9 +168,12 @@
|
||||
__traceiter_android_vh_cleanup_old_buffers_bypass
|
||||
__traceiter_android_vh_dm_bufio_shrink_scan_bypass
|
||||
__traceiter_android_vh_mutex_unlock_slowpath
|
||||
__traceiter_android_vh_read_lazy_flag
|
||||
__traceiter_android_vh_rtmutex_waiter_prio
|
||||
__traceiter_android_vh_rt_mutex_steal
|
||||
__traceiter_android_vh_rwsem_can_spin_on_owner
|
||||
__traceiter_android_vh_rwsem_direct_rsteal
|
||||
__traceiter_android_vh_rwsem_optimistic_rspin
|
||||
__traceiter_android_vh_rwsem_opt_spin_finish
|
||||
__traceiter_android_vh_rwsem_opt_spin_start
|
||||
__traceiter_android_vh_rwsem_wake_finish
|
||||
@@ -178,6 +183,7 @@
|
||||
__traceiter_android_vh_sched_stat_runtime_rt
|
||||
__traceiter_android_vh_shrink_node_memcgs
|
||||
__traceiter_android_vh_sync_txn_recvd
|
||||
__traceiter_android_vh_set_tsk_need_resched_lazy
|
||||
__traceiter_android_vh_task_blocks_on_rtmutex
|
||||
__traceiter_block_bio_queue
|
||||
__traceiter_block_getrq
|
||||
@@ -273,11 +279,14 @@
|
||||
__tracepoint_android_vh_record_mutex_lock_starttime
|
||||
__tracepoint_android_vh_record_pcpu_rwsem_starttime
|
||||
__tracepoint_android_vh_percpu_rwsem_wq_add
|
||||
__tracepoint_android_vh_read_lazy_flag
|
||||
__tracepoint_android_vh_record_rtmutex_lock_starttime
|
||||
__tracepoint_android_vh_record_rwsem_lock_starttime
|
||||
__tracepoint_android_vh_rtmutex_waiter_prio
|
||||
__tracepoint_android_vh_rt_mutex_steal
|
||||
__tracepoint_android_vh_rwsem_can_spin_on_owner
|
||||
__tracepoint_android_vh_rwsem_direct_rsteal
|
||||
__tracepoint_android_vh_rwsem_optimistic_rspin
|
||||
__tracepoint_android_vh_rwsem_opt_spin_finish
|
||||
__tracepoint_android_vh_rwsem_opt_spin_start
|
||||
__tracepoint_android_vh_rwsem_wake_finish
|
||||
@@ -287,6 +296,7 @@
|
||||
__tracepoint_android_vh_sched_stat_runtime_rt
|
||||
__tracepoint_android_vh_shrink_node_memcgs
|
||||
__tracepoint_android_vh_sync_txn_recvd
|
||||
__tracepoint_android_vh_set_tsk_need_resched_lazy
|
||||
__tracepoint_android_vh_task_blocks_on_rtmutex
|
||||
__tracepoint_android_vh_test_clear_look_around_ref
|
||||
__tracepoint_android_vh_tune_swappiness
|
||||
|
||||
@@ -427,6 +427,7 @@
|
||||
devm_device_add_group
|
||||
devm_device_add_groups
|
||||
devm_device_remove_group
|
||||
devm_drm_bridge_add
|
||||
__devm_drm_dev_alloc
|
||||
devm_drm_of_get_bridge
|
||||
devm_drm_panel_bridge_add_typed
|
||||
@@ -476,6 +477,7 @@
|
||||
devm_pinctrl_register_and_init
|
||||
devm_platform_ioremap_resource
|
||||
devm_platform_ioremap_resource_byname
|
||||
devm_pm_runtime_enable
|
||||
devm_power_supply_register
|
||||
devm_pwm_get
|
||||
devm_regmap_add_irq_chip
|
||||
|
||||
@@ -1094,8 +1094,11 @@
|
||||
ether_setup
|
||||
eth_header_parse
|
||||
eth_mac_addr
|
||||
ethnl_cable_test_amplitude
|
||||
ethnl_cable_test_fault_length
|
||||
ethnl_cable_test_pulse
|
||||
ethnl_cable_test_result
|
||||
ethnl_cable_test_step
|
||||
eth_platform_get_mac_address
|
||||
eth_prepare_mac_addr_change
|
||||
ethtool_convert_legacy_u32_to_link_mode
|
||||
@@ -1212,10 +1215,12 @@
|
||||
genphy_c45_check_and_restart_aneg
|
||||
genphy_c45_pma_setup_forced
|
||||
genphy_c45_read_status
|
||||
genphy_check_and_restart_aneg
|
||||
__genphy_config_aneg
|
||||
genphy_read_abilities
|
||||
genphy_read_mmd_unsupported
|
||||
genphy_read_status
|
||||
genphy_read_status_fixed
|
||||
genphy_restart_aneg
|
||||
genphy_resume
|
||||
genphy_soft_reset
|
||||
@@ -2197,6 +2202,7 @@
|
||||
of_match_device
|
||||
of_match_node
|
||||
__of_mdiobus_register
|
||||
of_mdio_find_bus
|
||||
of_modalias_node
|
||||
of_n_addr_cells
|
||||
of_node_name_eq
|
||||
@@ -2337,6 +2343,7 @@
|
||||
perf_trace_run_bpf_submit
|
||||
phy_attached_info
|
||||
phy_calibrate
|
||||
phy_config_aneg
|
||||
phy_device_free
|
||||
phy_device_register
|
||||
phy_do_ioctl_running
|
||||
@@ -2346,6 +2353,7 @@
|
||||
phy_ethtool_get_wol
|
||||
phy_ethtool_set_wol
|
||||
phy_exit
|
||||
phy_gbit_fibre_features
|
||||
phy_init
|
||||
phy_init_eee
|
||||
phy_init_hw
|
||||
@@ -2481,6 +2489,10 @@
|
||||
power_supply_set_property
|
||||
power_supply_unregister
|
||||
power_supply_unreg_notifier
|
||||
powercap_register_control_type
|
||||
powercap_register_zone
|
||||
powercap_unregister_control_type
|
||||
powercap_unregister_zone
|
||||
ppp_channel_index
|
||||
ppp_dev_name
|
||||
ppp_input
|
||||
@@ -3430,6 +3442,8 @@
|
||||
__traceiter_android_vh_ftrace_oops_exit
|
||||
__traceiter_android_vh_ftrace_size_check
|
||||
__traceiter_android_vh_gic_v3_suspend
|
||||
__traceiter_android_vh_hibernate_save_cmp_len
|
||||
__traceiter_android_vh_hibernated_do_mem_alloc
|
||||
__traceiter_android_vh_ignore_dmabuf_vmap_bounds
|
||||
__traceiter_android_vh_init_aes_encrypt
|
||||
__traceiter_android_vh_ipi_stop
|
||||
@@ -3579,6 +3593,8 @@
|
||||
__tracepoint_android_vh_ftrace_oops_exit
|
||||
__tracepoint_android_vh_ftrace_size_check
|
||||
__tracepoint_android_vh_gic_v3_suspend
|
||||
__tracepoint_android_vh_hibernate_save_cmp_len
|
||||
__tracepoint_android_vh_hibernated_do_mem_alloc
|
||||
__tracepoint_android_vh_ignore_dmabuf_vmap_bounds
|
||||
__tracepoint_android_vh_init_aes_encrypt
|
||||
__tracepoint_android_vh_ipi_stop
|
||||
|
||||
5
android/abi_gki_aarch64_type_visibility
Normal file
5
android/abi_gki_aarch64_type_visibility
Normal file
@@ -0,0 +1,5 @@
|
||||
[abi_symbol_list]
|
||||
|
||||
# for type visibility
|
||||
ANDROID_GKI_struct_dwc3
|
||||
ANDROID_GKI_struct_kernel_all_info
|
||||
@@ -371,3 +371,87 @@
|
||||
pci_sriov_set_totalvfs
|
||||
pci_num_vf
|
||||
|
||||
#required by cifs.ko
|
||||
add_swap_extent
|
||||
asn1_ber_decoder
|
||||
copy_page_from_iter
|
||||
copy_page_to_iter
|
||||
clear_nlink
|
||||
deactivate_super
|
||||
dentry_path_raw
|
||||
d_drop
|
||||
d_move
|
||||
d_hash_and_lookup
|
||||
d_alloc_parallel
|
||||
d_invalidate
|
||||
errseq_check
|
||||
file_modified
|
||||
fs_param_is_bool
|
||||
fs_param_is_u32
|
||||
fs_param_is_u64
|
||||
fs_param_is_string
|
||||
finish_no_open
|
||||
finish_open
|
||||
filemap_map_pages
|
||||
find_get_pages_range_tag
|
||||
folio_wait_private_2
|
||||
folio_clear_dirty_for_io
|
||||
generate_random_uuid
|
||||
generic_permission
|
||||
generic_file_write_iter
|
||||
generic_setlease
|
||||
generic_copy_file_range
|
||||
generic_writepages
|
||||
generic_key_instantiate
|
||||
iov_iter_discard
|
||||
iov_iter_bvec
|
||||
iov_iter_get_pages_alloc2
|
||||
iget_failed
|
||||
invalidate_inode_pages2
|
||||
iov_iter_npages
|
||||
kfree_link
|
||||
key_type_logon
|
||||
key_invalidate
|
||||
key_revoke
|
||||
key_validate
|
||||
lock_two_nondirectories
|
||||
lookup_positive_unlocked
|
||||
locks_lock_inode_wait
|
||||
look_up_OID
|
||||
overflowgid
|
||||
out_of_line_wait_on_bit_lock
|
||||
override_creds
|
||||
posix_lock_file
|
||||
posix_test_lock
|
||||
prepare_kernel_cred
|
||||
request_key_tag
|
||||
revert_creds
|
||||
register_key_type
|
||||
sget
|
||||
set_anon_super
|
||||
super_setup_bdi
|
||||
seq_escape_mem
|
||||
setattr_copy
|
||||
sock_sendmsg
|
||||
security_sb_eat_lsm_opts
|
||||
sprint_oid
|
||||
truncate_inode_pages_range
|
||||
tcp_sock_set_nodelay
|
||||
tcp_sock_set_cork
|
||||
truncate_pagecache_range
|
||||
unlock_two_nondirectories
|
||||
utf8s_to_utf16s
|
||||
utf8_to_utf32
|
||||
unregister_key_type
|
||||
user_describe
|
||||
user_revoke
|
||||
user_destroy
|
||||
user_read
|
||||
vfs_setpos
|
||||
vfs_parse_fs_string
|
||||
wait_on_page_writeback
|
||||
__generic_file_write_iter
|
||||
__folio_lock_killable
|
||||
__break_lease
|
||||
__d_lookup_unhash_wake
|
||||
__fs_parse
|
||||
|
||||
@@ -68,6 +68,8 @@ CONFIG_HIBERNATION=y
|
||||
CONFIG_PM_WAKELOCKS=y
|
||||
CONFIG_PM_WAKELOCKS_LIMIT=0
|
||||
# CONFIG_PM_WAKELOCKS_GC is not set
|
||||
CONFIG_PM_DEBUG=y
|
||||
CONFIG_PM_ADVANCED_DEBUG=y
|
||||
CONFIG_ENERGY_MODEL=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
CONFIG_CPU_IDLE_GOV_MENU=y
|
||||
@@ -692,7 +694,6 @@ CONFIG_CRYPTO_BLAKE2B=y
|
||||
CONFIG_CRYPTO_CMAC=y
|
||||
CONFIG_CRYPTO_MD5=y
|
||||
CONFIG_CRYPTO_XCBC=y
|
||||
CONFIG_CRYPTO_LZO=y
|
||||
CONFIG_CRYPTO_LZ4=y
|
||||
CONFIG_CRYPTO_ZSTD=y
|
||||
CONFIG_CRYPTO_ANSI_CPRNG=y
|
||||
|
||||
@@ -20,6 +20,8 @@
|
||||
#include <linux/ratelimit.h>
|
||||
#include <linux/syscalls.h>
|
||||
|
||||
#include <trace/hooks/dtask.h>
|
||||
|
||||
#include <asm/daifflags.h>
|
||||
#include <asm/debug-monitors.h>
|
||||
#include <asm/elf.h>
|
||||
@@ -1107,8 +1109,11 @@ static void do_signal(struct pt_regs *regs)
|
||||
|
||||
void do_notify_resume(struct pt_regs *regs, unsigned long thread_flags)
|
||||
{
|
||||
int thread_lazy_flag = 0;
|
||||
|
||||
do {
|
||||
if (thread_flags & _TIF_NEED_RESCHED) {
|
||||
trace_android_vh_read_lazy_flag(&thread_lazy_flag, &thread_flags);
|
||||
if ((thread_flags & _TIF_NEED_RESCHED) || thread_lazy_flag) {
|
||||
/* Unmask Debug and SError for the next task */
|
||||
local_daif_restore(DAIF_PROCCTX_NOIRQ);
|
||||
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
* Author: Quentin Perret <qperret@google.com>
|
||||
*/
|
||||
|
||||
#include <linux/init.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/kmemleak.h>
|
||||
#include <linux/kvm_host.h>
|
||||
@@ -627,6 +629,7 @@ static int __init __pkvm_request_early_module(char *module_name,
|
||||
"PATH=/sbin:/usr/sbin:/bin:/usr/bin",
|
||||
NULL
|
||||
};
|
||||
static bool proc;
|
||||
char **argv;
|
||||
int idx = 0;
|
||||
|
||||
@@ -658,6 +661,15 @@ static int __init __pkvm_request_early_module(char *module_name,
|
||||
/* Even with CONFIG_STATIC_USERMODEHELPER we really want this path */
|
||||
info->path = modprobe_path;
|
||||
|
||||
if (!proc) {
|
||||
wait_for_initramfs();
|
||||
if (init_mount("proc", "/proc", "proc",
|
||||
MS_SILENT | MS_NOEXEC | MS_NOSUID, NULL))
|
||||
pr_warn("Couldn't mount /proc, pKVM module parameters will be ignored\n");
|
||||
|
||||
proc = true;
|
||||
}
|
||||
|
||||
return call_usermodehelper_exec(info, UMH_WAIT_PROC | UMH_KILLABLE);
|
||||
err:
|
||||
kfree(argv);
|
||||
@@ -686,11 +698,7 @@ int __init pkvm_load_early_modules(void)
|
||||
{
|
||||
char *token, *buf = early_pkvm_modules;
|
||||
char *module_path = CONFIG_PKVM_MODULE_PATH;
|
||||
int err = init_mount("proc", "/proc", "proc",
|
||||
MS_SILENT | MS_NOEXEC | MS_NOSUID, NULL);
|
||||
|
||||
if (err)
|
||||
return err;
|
||||
int err;
|
||||
|
||||
while (true) {
|
||||
token = strsep(&buf, ",");
|
||||
|
||||
@@ -67,6 +67,8 @@ CONFIG_HIBERNATION=y
|
||||
CONFIG_PM_WAKELOCKS=y
|
||||
CONFIG_PM_WAKELOCKS_LIMIT=0
|
||||
# CONFIG_PM_WAKELOCKS_GC is not set
|
||||
CONFIG_PM_DEBUG=y
|
||||
CONFIG_PM_ADVANCED_DEBUG=y
|
||||
# CONFIG_ACPI_AC is not set
|
||||
# CONFIG_ACPI_BATTERY is not set
|
||||
# CONFIG_ACPI_FAN is not set
|
||||
@@ -635,7 +637,6 @@ CONFIG_CRYPTO_BLAKE2B=y
|
||||
CONFIG_CRYPTO_CMAC=y
|
||||
CONFIG_CRYPTO_MD5=y
|
||||
CONFIG_CRYPTO_XCBC=y
|
||||
CONFIG_CRYPTO_LZO=y
|
||||
CONFIG_CRYPTO_LZ4=y
|
||||
CONFIG_CRYPTO_ZSTD=y
|
||||
CONFIG_CRYPTO_ANSI_CPRNG=y
|
||||
|
||||
@@ -107,3 +107,6 @@ quiet_cmd_perlasm = PERLASM $@
|
||||
cmd_perlasm = $(PERL) $< > $@
|
||||
$(obj)/%.S: $(src)/%.pl FORCE
|
||||
$(call if_changed,perlasm)
|
||||
|
||||
# Disable GCOV in odd or sensitive code
|
||||
GCOV_PROFILE_curve25519-x86_64.o := n
|
||||
|
||||
@@ -285,7 +285,8 @@ static struct bio *bio_split_rw(struct bio *bio, struct queue_limits *lim,
|
||||
if (nsegs < lim->max_segments &&
|
||||
bytes + bv.bv_len <= max_bytes &&
|
||||
bv.bv_offset + bv.bv_len <= PAGE_SIZE) {
|
||||
nsegs++;
|
||||
/* single-page bvec optimization */
|
||||
nsegs += blk_segments(lim, bv.bv_len);
|
||||
bytes += bv.bv_len;
|
||||
} else {
|
||||
if (bvec_split_segs(lim, &bv, &nsegs, &bytes,
|
||||
@@ -533,7 +534,10 @@ static int __blk_bios_map_sg(struct request_queue *q, struct bio *bio,
|
||||
__blk_segment_map_sg_merge(q, &bvec, &bvprv, sg))
|
||||
goto next_bvec;
|
||||
|
||||
if (bvec.bv_offset + bvec.bv_len <= PAGE_SIZE)
|
||||
if (bvec.bv_offset + bvec.bv_len <= PAGE_SIZE &&
|
||||
(!blk_queue_sub_page_limits(&q->limits) ||
|
||||
bvec.bv_len <= q->limits.max_segment_size))
|
||||
/* single-segment bvec optimization */
|
||||
nsegs += __blk_bvec_map_sg(bvec, sglist, sg);
|
||||
else
|
||||
nsegs += blk_bvec_map_sg(q, &bvec, sglist, sg);
|
||||
|
||||
@@ -2956,6 +2956,8 @@ void blk_mq_submit_bio(struct bio *bio)
|
||||
bio = __bio_split_to_limits(bio, &q->limits, &nr_segs);
|
||||
if (!bio)
|
||||
return;
|
||||
} else if (bio->bi_vcnt == 1) {
|
||||
nr_segs = blk_segments(&q->limits, bio->bi_io_vec[0].bv_len);
|
||||
}
|
||||
if (!bio_integrity_prep(bio))
|
||||
return;
|
||||
@@ -2971,6 +2973,8 @@ void blk_mq_submit_bio(struct bio *bio)
|
||||
bio = __bio_split_to_limits(bio, &q->limits, &nr_segs);
|
||||
if (!bio)
|
||||
goto fail;
|
||||
} else if (bio->bi_vcnt == 1) {
|
||||
nr_segs = blk_segments(&q->limits, bio->bi_io_vec[0].bv_len);
|
||||
}
|
||||
if (!bio_integrity_prep(bio))
|
||||
goto fail;
|
||||
|
||||
11
block/blk.h
11
block/blk.h
@@ -337,13 +337,12 @@ static inline bool bio_may_exceed_limits(struct bio *bio,
|
||||
}
|
||||
|
||||
/*
|
||||
* All drivers must accept single-segments bios that are <= PAGE_SIZE.
|
||||
* This is a quick and dirty check that relies on the fact that
|
||||
* bi_io_vec[0] is always valid if a bio has data. The check might
|
||||
* lead to occasional false negatives when bios are cloned, but compared
|
||||
* to the performance impact of cloned bios themselves the loop below
|
||||
* doesn't matter anyway.
|
||||
* Check whether bio splitting should be performed. This check may
|
||||
* trigger the bio splitting code even if splitting is not necessary.
|
||||
*/
|
||||
if (blk_queue_sub_page_limits(lim) && bio->bi_io_vec &&
|
||||
bio->bi_io_vec->bv_len > lim->max_segment_size)
|
||||
return true;
|
||||
return lim->chunk_sectors || bio->bi_vcnt != 1 ||
|
||||
bio->bi_io_vec->bv_len + bio->bi_io_vec->bv_offset > PAGE_SIZE;
|
||||
}
|
||||
|
||||
@@ -193,6 +193,12 @@ static struct platform_driver debug_kinfo_driver = {
|
||||
};
|
||||
module_platform_driver(debug_kinfo_driver);
|
||||
|
||||
/*
|
||||
* For type visibility
|
||||
*/
|
||||
const struct kernel_all_info *const ANDROID_GKI_struct_kernel_all_info;
|
||||
EXPORT_SYMBOL_GPL(ANDROID_GKI_struct_kernel_all_info);
|
||||
|
||||
MODULE_AUTHOR("Jone Chou <jonechou@google.com>");
|
||||
MODULE_DESCRIPTION("Debug Kinfo Driver");
|
||||
MODULE_LICENSE("GPL v2");
|
||||
|
||||
@@ -111,6 +111,8 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_opt_spin_start);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_opt_spin_finish);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_can_spin_on_owner);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_show_task);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_direct_rsteal);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_optimistic_rspin);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_enter);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_exit);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mpam_set);
|
||||
@@ -406,3 +408,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_delayacct_wpcopy_end);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_usb_dev_suspend);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_usb_dev_resume);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sound_usb_support_cpu_suspend);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_hibernated_do_mem_alloc);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_hibernate_save_cmp_len);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_read_lazy_flag);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_tsk_need_resched_lazy);
|
||||
|
||||
@@ -550,13 +550,90 @@ config COMMON_CLK_MT8183_VENCSYS
|
||||
This driver supports MediaTek MT8183 vencsys clocks.
|
||||
|
||||
config COMMON_CLK_MT8186
|
||||
bool "Clock driver for MediaTek MT8186"
|
||||
tristate "Clock driver for MediaTek MT8186"
|
||||
depends on ARM64 || COMPILE_TEST
|
||||
select COMMON_CLK_MEDIATEK
|
||||
default ARCH_MEDIATEK
|
||||
help
|
||||
This driver supports MediaTek MT8186 clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_CAMSYS
|
||||
tristate "Clock driver for MediaTek MT8186 camsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 camsys and camsys_raw clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_IMGSYS
|
||||
tristate "Clock driver for MediaTek MT8186 imgsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 imgsys and imgsys2 clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_IPESYS
|
||||
tristate "Clock driver for MediaTek MT8186 ipesys"
|
||||
depends on COMMON_CLK_MT8186_IMGSYS
|
||||
default COMMON_CLK_MT8186_IMGSYS
|
||||
help
|
||||
This driver supports MediaTek MT8186 ipesys clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_WPESYS
|
||||
tristate "Clock driver for MediaTek MT8186 wpesys"
|
||||
depends on COMMON_CLK_MT8186_IMGSYS
|
||||
default COMMON_CLK_MT8186_IMGSYS
|
||||
help
|
||||
This driver supports MediaTek MT8186 Warp Engine clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_IMP_IIC_WRAP
|
||||
tristate "Clock driver for MediaTek MT8186 imp_iic_wrap"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 imp_iic_wrap clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_MCUSYS
|
||||
tristate "Clock driver for MediaTek MT8186 mcusys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 mcusys clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_MDPSYS
|
||||
tristate "Clock driver for MediaTek MT8186 mdpsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 mdpsys clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_MFGCFG
|
||||
tristate "Clock driver for MediaTek MT8186 mfgcfg"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 mfgcfg clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_MMSYS
|
||||
tristate "Clock driver for MediaTek MT8186 mmsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 mmsys clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_VDECSYS
|
||||
tristate "Clock driver for MediaTek MT8186 vdecsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 vdecsys and vdecsys_soc clocks.
|
||||
|
||||
config COMMON_CLK_MT8186_VENCSYS
|
||||
tristate "Clock driver for MediaTek MT8186 vencsys"
|
||||
depends on COMMON_CLK_MT8186
|
||||
default COMMON_CLK_MT8186
|
||||
help
|
||||
This driver supports MediaTek MT8186 vencsys clocks.
|
||||
|
||||
config COMMON_CLK_MT8192
|
||||
bool "Clock driver for MediaTek MT8192"
|
||||
depends on ARM64 || COMPILE_TEST
|
||||
|
||||
@@ -77,11 +77,19 @@ obj-$(CONFIG_COMMON_CLK_MT8183_MFGCFG) += clk-mt8183-mfgcfg.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8183_MMSYS) += clk-mt8183-mm.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8183_VDECSYS) += clk-mt8183-vdec.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8183_VENCSYS) += clk-mt8183-venc.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186) += clk-mt8186-mcu.o clk-mt8186-topckgen.o clk-mt8186-infra_ao.o \
|
||||
clk-mt8186-apmixedsys.o clk-mt8186-imp_iic_wrap.o \
|
||||
clk-mt8186-mfg.o clk-mt8186-mm.o clk-mt8186-wpe.o \
|
||||
clk-mt8186-img.o clk-mt8186-vdec.o clk-mt8186-venc.o \
|
||||
clk-mt8186-cam.o clk-mt8186-mdp.o clk-mt8186-ipe.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186) += clk-mt8186-apmixedsys.o clk-mt8186-topckgen.o \
|
||||
clk-mt8186-infra_ao.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_CAMSYS) += clk-mt8186-cam.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_IMGSYS) += clk-mt8186-img.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_IMP_IIC_WRAP) += clk-mt8186-imp_iic_wrap.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_IPESYS) += clk-mt8186-ipe.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_MCUSYS) += clk-mt8186-mcu.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_MDPSYS) += clk-mt8186-mdp.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_MFGCFG) += clk-mt8186-mfg.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_MMSYS) += clk-mt8186-mm.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_VDECSYS) += clk-mt8186-vdec.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_VENCSYS) += clk-mt8186-venc.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8186_WPESYS) += clk-mt8186-wpe.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8192) += clk-mt8192.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8192_AUDSYS) += clk-mt8192-aud.o
|
||||
obj-$(CONFIG_COMMON_CLK_MT8192_CAMSYS) += clk-mt8192-cam.o
|
||||
|
||||
@@ -158,5 +158,5 @@ static struct platform_driver clk_mt2701_aud_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_aud,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_aud_drv);
|
||||
module_platform_driver(clk_mt2701_aud_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -104,5 +104,5 @@ static struct platform_driver clk_mt2701_bdp_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_bdp,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_bdp_drv);
|
||||
module_platform_driver(clk_mt2701_bdp_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -72,5 +72,5 @@ static struct platform_driver clk_mt2701_eth_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_eth,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_eth_drv);
|
||||
module_platform_driver(clk_mt2701_eth_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -93,5 +93,5 @@ static struct platform_driver clk_mt2701_g3d_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_g3d,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_g3d_drv);
|
||||
module_platform_driver(clk_mt2701_g3d_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -71,5 +71,5 @@ static struct platform_driver clk_mt2701_hif_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_hif,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_hif_drv);
|
||||
module_platform_driver(clk_mt2701_hif_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -52,5 +52,5 @@ static struct platform_driver clk_mt2701_img_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_img_drv);
|
||||
module_platform_driver(clk_mt2701_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -94,5 +94,5 @@ static struct platform_driver clk_mt2701_mm_drv = {
|
||||
.name = "clk-mt2701-mm",
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_mm_drv);
|
||||
module_platform_driver(clk_mt2701_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -57,5 +57,5 @@ static struct platform_driver clk_mt2701_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt2701_vdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2701_vdec_drv);
|
||||
module_platform_driver(clk_mt2701_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -1038,3 +1038,4 @@ static int __init clk_mt2701_init(void)
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt2701_init);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -74,5 +74,5 @@ static struct platform_driver clk_mt2712_bdp_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_bdp,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_bdp_drv);
|
||||
module_platform_driver(clk_mt2712_bdp_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -52,5 +52,5 @@ static struct platform_driver clk_mt2712_img_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_img_drv);
|
||||
module_platform_driver(clk_mt2712_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,5 +48,5 @@ static struct platform_driver clk_mt2712_jpgdec_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_jpgdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_jpgdec_drv);
|
||||
module_platform_driver(clk_mt2712_jpgdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -47,5 +47,5 @@ static struct platform_driver clk_mt2712_mfg_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_mfg,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_mfg_drv);
|
||||
module_platform_driver(clk_mt2712_mfg_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -135,5 +135,5 @@ static struct platform_driver clk_mt2712_mm_drv = {
|
||||
.name = "clk-mt2712-mm",
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_mm_drv);
|
||||
module_platform_driver(clk_mt2712_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -60,5 +60,5 @@ static struct platform_driver clk_mt2712_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_vdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_vdec_drv);
|
||||
module_platform_driver(clk_mt2712_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -49,5 +49,5 @@ static struct platform_driver clk_mt2712_venc_drv = {
|
||||
.of_match_table = of_match_clk_mt2712_venc,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt2712_venc_drv);
|
||||
module_platform_driver(clk_mt2712_venc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -1453,10 +1453,5 @@ static struct platform_driver clk_mt2712_drv = {
|
||||
.of_match_table = of_match_clk_mt2712,
|
||||
},
|
||||
};
|
||||
|
||||
static int __init clk_mt2712_init(void)
|
||||
{
|
||||
return platform_driver_register(&clk_mt2712_drv);
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt2712_init);
|
||||
module_platform_driver(clk_mt2712_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -74,5 +74,5 @@ static struct platform_driver clk_mt6765_audio_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_audio,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_audio_drv);
|
||||
module_platform_driver(clk_mt6765_audio_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -55,5 +55,5 @@ static struct platform_driver clk_mt6765_cam_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_cam,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_cam_drv);
|
||||
module_platform_driver(clk_mt6765_cam_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -51,5 +51,5 @@ static struct platform_driver clk_mt6765_img_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_img_drv);
|
||||
module_platform_driver(clk_mt6765_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,5 +48,5 @@ static struct platform_driver clk_mt6765_mipi0a_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_mipi0a,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_mipi0a_drv);
|
||||
module_platform_driver(clk_mt6765_mipi0a_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -77,5 +77,5 @@ static struct platform_driver clk_mt6765_mm_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_mm,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_mm_drv);
|
||||
module_platform_driver(clk_mt6765_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -50,5 +50,5 @@ static struct platform_driver clk_mt6765_vcodec_drv = {
|
||||
.of_match_table = of_match_clk_mt6765_vcodec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6765_vcodec_drv);
|
||||
module_platform_driver(clk_mt6765_vcodec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -878,3 +878,4 @@ static int __init clk_mt6765_init(void)
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt6765_init);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,5 +48,5 @@ static struct platform_driver clk_mt6797_img_drv = {
|
||||
.of_match_table = of_match_clk_mt6797_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6797_img_drv);
|
||||
module_platform_driver(clk_mt6797_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -107,5 +107,5 @@ static struct platform_driver clk_mt6797_mm_drv = {
|
||||
.name = "clk-mt6797-mm",
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6797_mm_drv);
|
||||
module_platform_driver(clk_mt6797_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -59,5 +59,5 @@ static struct platform_driver clk_mt6797_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt6797_vdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6797_vdec_drv);
|
||||
module_platform_driver(clk_mt6797_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -50,5 +50,5 @@ static struct platform_driver clk_mt6797_venc_drv = {
|
||||
.of_match_table = of_match_clk_mt6797_venc,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt6797_venc_drv);
|
||||
module_platform_driver(clk_mt6797_venc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -708,3 +708,4 @@ static int __init clk_mt6797_init(void)
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt6797_init);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -172,5 +172,5 @@ static struct platform_driver clk_mt7622_aud_drv = {
|
||||
.of_match_table = of_match_clk_mt7622_aud,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt7622_aud_drv);
|
||||
module_platform_driver(clk_mt7622_aud_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -140,5 +140,5 @@ static struct platform_driver clk_mt7622_eth_drv = {
|
||||
.of_match_table = of_match_clk_mt7622_eth,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt7622_eth_drv);
|
||||
module_platform_driver(clk_mt7622_eth_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -153,5 +153,5 @@ static struct platform_driver clk_mt7622_hif_drv = {
|
||||
.of_match_table = of_match_clk_mt7622_hif,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt7622_hif_drv);
|
||||
module_platform_driver(clk_mt7622_hif_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -157,3 +157,4 @@ static struct platform_driver clk_mt7629_eth_drv = {
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt7629_eth_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -148,5 +148,5 @@ static struct platform_driver clk_mt7629_hif_drv = {
|
||||
.of_match_table = of_match_clk_mt7629_hif,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt7629_hif_drv);
|
||||
module_platform_driver(clk_mt7629_hif_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -697,3 +697,4 @@ static int clk_mt7629_init(void)
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt7629_init);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -100,3 +100,4 @@ static struct platform_driver clk_mt7986_apmixed_drv = {
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt7986_apmixed_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -339,4 +339,5 @@ static struct platform_driver clk_mt7986_topckgen_drv = {
|
||||
.of_match_table = of_match_clk_mt7986_topckgen,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt7986_topckgen_drv);
|
||||
module_platform_driver(clk_mt7986_topckgen_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -101,5 +101,5 @@ static struct platform_driver clk_mt8183_audio_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_audio,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_audio_drv);
|
||||
module_platform_driver(clk_mt8183_audio_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -56,5 +56,5 @@ static struct platform_driver clk_mt8183_cam_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_cam,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_cam_drv);
|
||||
module_platform_driver(clk_mt8183_cam_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -56,5 +56,5 @@ static struct platform_driver clk_mt8183_img_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_img_drv);
|
||||
module_platform_driver(clk_mt8183_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -49,5 +49,5 @@ static struct platform_driver clk_mt8183_ipu_core0_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_ipu_core0,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_ipu_core0_drv);
|
||||
module_platform_driver(clk_mt8183_ipu_core0_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -49,5 +49,5 @@ static struct platform_driver clk_mt8183_ipu_core1_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_ipu_core1,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_ipu_core1_drv);
|
||||
module_platform_driver(clk_mt8183_ipu_core1_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -47,5 +47,5 @@ static struct platform_driver clk_mt8183_ipu_adl_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_ipu_adl,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_ipu_adl_drv);
|
||||
module_platform_driver(clk_mt8183_ipu_adl_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -116,5 +116,5 @@ static struct platform_driver clk_mt8183_ipu_conn_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_ipu_conn,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_ipu_conn_drv);
|
||||
module_platform_driver(clk_mt8183_ipu_conn_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,5 +48,5 @@ static struct platform_driver clk_mt8183_mfg_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_mfg,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_mfg_drv);
|
||||
module_platform_driver(clk_mt8183_mfg_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -102,5 +102,5 @@ static struct platform_driver clk_mt8183_mm_drv = {
|
||||
.name = "clk-mt8183-mm",
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_mm_drv);
|
||||
module_platform_driver(clk_mt8183_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -60,5 +60,5 @@ static struct platform_driver clk_mt8183_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_vdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_vdec_drv);
|
||||
module_platform_driver(clk_mt8183_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -52,5 +52,5 @@ static struct platform_driver clk_mt8183_venc_drv = {
|
||||
.of_match_table = of_match_clk_mt8183_venc,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8183_venc_drv);
|
||||
module_platform_driver(clk_mt8183_venc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -1360,10 +1360,5 @@ static struct platform_driver clk_mt8183_drv = {
|
||||
.of_match_table = of_match_clk_mt8183,
|
||||
},
|
||||
};
|
||||
|
||||
static int __init clk_mt8183_init(void)
|
||||
{
|
||||
return platform_driver_register(&clk_mt8183_drv);
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt8183_init);
|
||||
module_platform_driver(clk_mt8183_drv)
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -130,4 +130,5 @@ static struct platform_driver clk_mt8186_apmixed_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_apmixed,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_apmixed_drv);
|
||||
module_platform_driver(clk_mt8186_apmixed_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -87,4 +87,5 @@ static struct platform_driver clk_mt8186_cam_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_cam,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_cam_drv);
|
||||
module_platform_driver(clk_mt8186_cam_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -65,4 +65,5 @@ static struct platform_driver clk_mt8186_img_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_img,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_img_drv);
|
||||
module_platform_driver(clk_mt8186_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -64,4 +64,5 @@ static struct platform_driver clk_mt8186_imp_iic_wrap_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_imp_iic_wrap,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_imp_iic_wrap_drv);
|
||||
module_platform_driver(clk_mt8186_imp_iic_wrap_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -236,4 +236,5 @@ static struct platform_driver clk_mt8186_infra_ao_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_infra_ao,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_infra_ao_drv);
|
||||
module_platform_driver(clk_mt8186_infra_ao_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -52,4 +52,5 @@ static struct platform_driver clk_mt8186_ipe_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_ipe,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_ipe_drv);
|
||||
module_platform_driver(clk_mt8186_ipe_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -105,4 +105,5 @@ static struct platform_driver clk_mt8186_mcu_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_mcu,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_mcu_drv);
|
||||
module_platform_driver(clk_mt8186_mcu_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -77,4 +77,5 @@ static struct platform_driver clk_mt8186_mdp_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_mdp,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_mdp_drv);
|
||||
module_platform_driver(clk_mt8186_mdp_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -45,4 +45,5 @@ static struct platform_driver clk_mt8186_mfg_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_mfg,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_mfg_drv);
|
||||
module_platform_driver(clk_mt8186_mfg_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -108,4 +108,5 @@ static struct platform_driver clk_mt8186_mm_drv = {
|
||||
.name = "clk-mt8186-mm",
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_mm_drv);
|
||||
module_platform_driver(clk_mt8186_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -777,4 +777,5 @@ static struct platform_driver clk_mt8186_topck_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_topck,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_topck_drv);
|
||||
module_platform_driver(clk_mt8186_topck_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -85,4 +85,5 @@ static struct platform_driver clk_mt8186_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_vdec,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_vdec_drv);
|
||||
module_platform_driver(clk_mt8186_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,4 +48,5 @@ static struct platform_driver clk_mt8186_venc_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_venc,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_venc_drv);
|
||||
module_platform_driver(clk_mt8186_venc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -48,4 +48,5 @@ static struct platform_driver clk_mt8186_wpe_drv = {
|
||||
.of_match_table = of_match_clk_mt8186_wpe,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8186_wpe_drv);
|
||||
module_platform_driver(clk_mt8186_wpe_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -114,5 +114,5 @@ static struct platform_driver clk_mt8192_aud_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_aud,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_aud_drv);
|
||||
module_platform_driver(clk_mt8192_aud_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -104,5 +104,5 @@ static struct platform_driver clk_mt8192_cam_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_cam,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_cam_drv);
|
||||
module_platform_driver(clk_mt8192_cam_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -67,5 +67,5 @@ static struct platform_driver clk_mt8192_img_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_img,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_img_drv);
|
||||
module_platform_driver(clk_mt8192_img_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -116,5 +116,5 @@ static struct platform_driver clk_mt8192_imp_iic_wrap_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_imp_iic_wrap,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_imp_iic_wrap_drv);
|
||||
module_platform_driver(clk_mt8192_imp_iic_wrap_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -54,5 +54,5 @@ static struct platform_driver clk_mt8192_ipe_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_ipe,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_ipe_drv);
|
||||
module_platform_driver(clk_mt8192_ipe_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -79,5 +79,5 @@ static struct platform_driver clk_mt8192_mdp_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_mdp,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_mdp_drv);
|
||||
module_platform_driver(clk_mt8192_mdp_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -49,5 +49,5 @@ static struct platform_driver clk_mt8192_mfg_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_mfg,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_mfg_drv);
|
||||
module_platform_driver(clk_mt8192_mfg_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -104,5 +104,5 @@ static struct platform_driver clk_mt8192_mm_drv = {
|
||||
.name = "clk-mt8192-mm",
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_mm_drv);
|
||||
module_platform_driver(clk_mt8192_mm_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -61,5 +61,5 @@ static struct platform_driver clk_mt8192_msdc_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_msdc,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_msdc_drv);
|
||||
module_platform_driver(clk_mt8192_msdc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -47,5 +47,5 @@ static struct platform_driver clk_mt8192_scp_adsp_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_scp_adsp,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_scp_adsp_drv);
|
||||
module_platform_driver(clk_mt8192_scp_adsp_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -91,5 +91,5 @@ static struct platform_driver clk_mt8192_vdec_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_vdec,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_vdec_drv);
|
||||
module_platform_driver(clk_mt8192_vdec_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -50,5 +50,5 @@ static struct platform_driver clk_mt8192_venc_drv = {
|
||||
.of_match_table = of_match_clk_mt8192_venc,
|
||||
},
|
||||
};
|
||||
|
||||
builtin_platform_driver(clk_mt8192_venc_drv);
|
||||
module_platform_driver(clk_mt8192_venc_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -1251,3 +1251,4 @@ static int __init clk_mt8192_init(void)
|
||||
}
|
||||
|
||||
arch_initcall(clk_mt8192_init);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
@@ -166,4 +166,5 @@ static struct platform_driver clk_mt8195_apmixed_drv = {
|
||||
.of_match_table = of_match_clk_mt8195_apmixed,
|
||||
},
|
||||
};
|
||||
builtin_platform_driver(clk_mt8195_apmixed_drv);
|
||||
module_platform_driver(clk_mt8195_apmixed_drv);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user