diff --git a/android/abi_gki_aarch64.xml b/android/abi_gki_aarch64.xml
index 4586e15d2277..5f1604018676 100644
--- a/android/abi_gki_aarch64.xml
+++ b/android/abi_gki_aarch64.xml
@@ -1169,11 +1169,13 @@
+
+
@@ -2902,6 +2904,7 @@
+
@@ -4082,6 +4085,7 @@
+
@@ -29914,6 +29918,10 @@
+
+
+
+
@@ -37469,6 +37477,10 @@
+
+
+
+
@@ -85740,6 +85752,11 @@
+
+
+
+
+
@@ -89391,6 +89408,11 @@
+
+
+
+
+
diff --git a/android/abi_gki_aarch64_oplus b/android/abi_gki_aarch64_oplus
new file mode 100644
index 000000000000..39e7e1905b82
--- /dev/null
+++ b/android/abi_gki_aarch64_oplus
@@ -0,0 +1,205 @@
+[abi_whitelist]
+# commonly used symbols
+ alloc_workqueue
+ __arch_copy_from_user
+ __arch_copy_to_user
+ arm64_const_caps_ready
+ __cfi_slowpath
+ __check_object_size
+ __class_create
+ class_destroy
+ cpu_hwcap_keys
+ cpu_hwcaps
+ delayed_work_timer_fn
+ destroy_workqueue
+ device_create
+ device_destroy
+ devm_kfree
+ devm_kmalloc
+ disable_irq_nosync
+ enable_irq
+ finish_wait
+ gpiod_direction_output_raw
+ gpiod_get_raw_value
+ gpio_to_desc
+ init_timer_key
+ init_wait_entry
+ kfree
+ __kmalloc
+ kmalloc_caches
+ kmem_cache_alloc_trace
+ kobject_create_and_add
+ ktime_get
+ __list_add_valid
+ memcpy
+ memset
+ module_layout
+ msleep
+ __mutex_init
+ mutex_lock
+ mutex_unlock
+ of_find_property
+ of_property_read_variable_u32_array
+ PDE_DATA
+ prepare_to_wait_event
+ printk
+ proc_create
+ proc_create_data
+ proc_mkdir
+ __put_task_struct
+ queue_delayed_work_on
+ regulator_set_voltage
+ remove_proc_entry
+ schedule_timeout
+ seq_printf
+ seq_read
+ simple_open
+ simple_read_from_buffer
+ single_open
+ single_release
+ snprintf
+ sprintf
+ sscanf
+ __stack_chk_fail
+ __stack_chk_guard
+ strcmp
+ strcpy
+ strlcat
+ strlen
+ strncmp
+ strncpy
+ strstr
+ sysfs_create_group
+ sysfs_remove_group
+ usleep_range
+
+# required by oplus_project.ko
+ __ioremap
+ iounmap
+ kimage_vaddr
+ of_find_node_by_name
+
+# required by sec_drivers_s6sy791.ko
+ __const_udelay
+ i2c_del_driver
+ i2c_register_driver
+ strlcpy
+ vfree
+ vzalloc
+
+# required by oplus_lcd.ko
+ alloc_chrdev_region
+ blocking_notifier_call_chain
+ blocking_notifier_chain_register
+ blocking_notifier_chain_unregister
+ cdev_add
+ cdev_del
+ cdev_init
+ drm_atomic_commit
+ drm_atomic_get_crtc_state
+ drm_atomic_state_alloc
+ __drm_atomic_state_free
+ drm_crtc_vblank_count
+ drm_crtc_vblank_get
+ drm_crtc_vblank_put
+ drm_crtc_vblank_waitqueue
+ drm_crtc_wait_one_vblank
+ drm_dev_dbg
+ drm_dev_printk
+ drm_modeset_lock_all
+ drm_modeset_unlock_all
+ kernel_kobj
+ kmemdup
+ kobject_put
+ kthread_create_on_node
+ kthread_flush_worker
+ __kthread_init_worker
+ kthread_queue_work
+ kthread_stop
+ kthread_worker_fn
+ mipi_dsi_dcs_set_display_brightness
+ mipi_dsi_dcs_write
+ mod_delayed_work_on
+ module_put
+ __msecs_to_jiffies
+ refcount_dec_and_test_checked
+ regulator_get_voltage
+ scnprintf
+ sysfs_create_link
+ sysfs_remove_link
+ try_module_get
+ unregister_chrdev_region
+ __usecs_to_jiffies
+ wake_up_process
+
+# required by oplus_tp_project.ko
+ param_ops_string
+
+# required by oplus_sensor.ko
+ of_get_next_child
+ of_property_count_elems_of_size
+ __platform_driver_register
+
+# required by oplus_touch_comon.ko
+ cancel_delayed_work
+ cancel_delayed_work_sync
+ cancel_work_sync
+ complete
+ _dev_err
+ devm_free_irq
+ devm_gpio_request
+ devm_input_allocate_device
+ devm_pinctrl_get
+ devm_request_threaded_irq
+ disable_irq
+ drm_panel_notifier_register
+ dump_stack
+ flush_workqueue
+ free_irq
+ gpiod_to_irq
+ hrtimer_active
+ hrtimer_cancel
+ hrtimer_init
+ hrtimer_start_range_ns
+ i2c_transfer
+ __init_waitqueue_head
+ input_event
+ input_free_device
+ input_mt_init_slots
+ input_mt_report_slot_state
+ input_register_device
+ input_set_abs_params
+ int_sqrt
+ irq_set_irq_wake
+ irq_to_desc
+ __kfifo_alloc
+ kstrtoint
+ ktime_get_real_ts64
+ __list_del_entry_valid
+ of_count_phandle_with_args
+ of_drm_find_panel
+ of_get_named_gpio_flags
+ of_parse_phandle
+ of_property_read_string
+ of_property_read_variable_u8_array
+ pinctrl_lookup_state
+ pm_qos_add_request
+ pm_qos_update_request
+ queue_work_on
+ _raw_spin_lock_irqsave
+ _raw_spin_unlock_irqrestore
+ regulator_count_voltages
+ regulator_disable
+ regulator_enable
+ regulator_get
+ regulator_put
+ regulator_set_load
+ release_firmware
+ remove_proc_subtree
+ request_firmware
+ rtc_time64_to_tm
+ spi_sync
+ strcat
+ system_wq
+ wait_for_completion_killable_timeout
+ __wake_up
diff --git a/build.config.gki.aarch64 b/build.config.gki.aarch64
index 02fee05f1e98..2b13bdb31245 100644
--- a/build.config.gki.aarch64
+++ b/build.config.gki.aarch64
@@ -10,6 +10,7 @@ android/abi_gki_aarch64_db845c
android/abi_gki_aarch64_exynos
android/abi_gki_aarch64_goldfish
android/abi_gki_aarch64_hikey960
+android/abi_gki_aarch64_oplus
android/abi_gki_aarch64_qcom
android/abi_gki_aarch64_sunxi
android/abi_gki_aarch64_unisoc