No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Quentin Perret bbdcb89f81 ANDROID: Update ABI representation after adding exynos whitelist
Leaf changes summary: 248 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 236 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 12 Added variables

236 Added functions:

  [A] 'function int __bitmap_parse(const char*, unsigned int, int, unsigned long int*, int)'
  [A] 'function int __cpuhp_setup_state_cpuslocked(cpuhp_state, const char*, bool, void ()*, void ()*, bool)'
  [A] 'function ktime_t __hrtimer_get_remaining(const hrtimer*, bool)'
  [A] 'function int __iio_device_register(iio_dev*, module*)'
  [A] 'function void __ioread32_copy(void*, void*, size_t)'
  [A] 'function int __irq_alloc_descs(int, unsigned int, unsigned int, int, module*, const irq_affinity_desc*)'
  [A] 'function int __raw_notifier_call_chain(raw_notifier_head*, unsigned long int, void*, int, int*)'
  [A] 'function scsi_device* __scsi_device_lookup_by_target(scsi_target*, u64)'
  [A] 'function int __scsi_execute(scsi_device*, const unsigned char*, int, void*, unsigned int, unsigned char*, scsi_sense_hdr*, int, int, u64, req_flags_t, int*)'
  [A] 'function int __sync_dirty_buffer(buffer_head*, int)'
  [A] 'function int __trace_puts(unsigned long int, const char*, int)'
  [A] 'function unsigned int _bcd2bin(unsigned char)'
  [A] 'function unsigned char _bin2bcd(unsigned int)'
  [A] 'function void arch_setup_dma_ops(device*, u64, u64, const iommu_ops*, bool)'
  [A] 'function bool bio_crypt_should_process(request*)'
  [A] 'function unsigned int blk_lookup_devt(const char*, int)'
  [A] 'function void bpf_trace_run9(bpf_prog*, u64, u64, u64, u64, u64, u64, u64, u64, u64)'
  [A] 'function clk_hw* clk_hw_register_gate(device*, const char*, const char*, unsigned long int, void*, u8, u8, spinlock_t*)'
  [A] 'function void clk_hw_unregister_gate(clk_hw*)'
  [A] 'function int clk_register_clkdev(clk*, const char*, const char*)'
  [A] 'function clk* clk_register_fixed_factor(device*, const char*, const char*, unsigned long int, unsigned int, unsigned int)'
  [A] 'function clk* clk_register_fixed_rate(device*, const char*, const char*, unsigned long int, unsigned long int)'
  [A] 'function clk* clk_register_gate(device*, const char*, const char*, unsigned long int, void*, u8, u8, spinlock_t*)'
  [A] 'function int console_trylock()'
  [A] 'function cpufreq_policy* cpufreq_cpu_get(unsigned int)'
  [A] 'function cpufreq_policy* cpufreq_cpu_get_raw(unsigned int)'
  [A] 'function void cpufreq_cpu_put(cpufreq_policy*)'
  [A] 'function unsigned int cpufreq_driver_resolve_freq(cpufreq_policy*, unsigned int)'
  [A] 'function void cpufreq_freq_transition_begin(cpufreq_policy*, cpufreq_freqs*)'
  [A] 'function void cpufreq_freq_transition_end(cpufreq_policy*, cpufreq_freqs*, int)'
  [A] 'function int cpufreq_frequency_table_verify(cpufreq_policy_data*, cpufreq_frequency_table*)'
  [A] 'function unsigned int cpufreq_quick_get(unsigned int)'
  [A] 'function int cpufreq_table_index_unsorted(cpufreq_policy*, unsigned int, unsigned int)'
  [A] 'function int cpumask_next_and(int, const cpumask*, const cpumask*)'
  [A] 'function int crypto_register_rngs(rng_alg*, int)'
  [A] 'function void crypto_unregister_rngs(rng_alg*, int)'
  [A] 'function int dapm_pinctrl_event(snd_soc_dapm_widget*, snd_kcontrol*, int)'
  [A] 'function int desc_to_gpio(const gpio_desc*)'
  [A] 'function opp_table* dev_pm_opp_get_opp_table(device*)'
  [A] 'function void dev_pm_opp_put_opp_table(opp_table*)'
  [A] 'function int dev_pm_qos_add_request(device*, dev_pm_qos_request*, dev_pm_qos_req_type, s32)'
  [A] 'function int dev_pm_qos_remove_request(dev_pm_qos_request*)'
  [A] 'function int dev_pm_qos_update_request(dev_pm_qos_request*, int)'
  [A] 'function dev_dma_attr device_get_dma_attr(device*)'
  [A] 'function ssize_t device_show_bool(device*, device_attribute*, char*)'
  [A] 'function ssize_t device_store_bool(device*, device_attribute*, const char*, size_t)'
  [A] 'function int dma_get_slave_caps(dma_chan*, dma_slave_caps*)'
  [A] 'function void dmaengine_unmap_put(dmaengine_unmap_data*)'
  [A] 'function device_driver* driver_find(const char*, bus_type*)'
  [A] 'function int drm_dp_atomic_find_vcpi_slots(drm_atomic_state*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*, int)'
  [A] 'function int drm_dp_atomic_release_vcpi_slots(drm_atomic_state*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function int drm_dp_find_vcpi_slots(drm_dp_mst_topology_mgr*, int)'
  [A] 'function bool drm_dp_mst_allocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*, int, int)'
  [A] 'function void drm_dp_mst_deallocate_vcpi(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function drm_connector_status drm_dp_mst_detect_port(drm_connector*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function edid* drm_dp_mst_get_edid(drm_connector*, drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function int drm_dp_mst_hpd_irq(drm_dp_mst_topology_mgr*, u8*, bool*)'
  [A] 'function void drm_dp_mst_reset_vcpi_slots(drm_dp_mst_topology_mgr*, drm_dp_mst_port*)'
  [A] 'function void drm_dp_mst_topology_mgr_destroy(drm_dp_mst_topology_mgr*)'
  [A] 'function int drm_dp_mst_topology_mgr_init(drm_dp_mst_topology_mgr*, drm_device*, drm_dp_aux*, int, int, int)'
  [A] 'function int drm_dp_mst_topology_mgr_set_mst(drm_dp_mst_topology_mgr*, bool)'
  [A] 'function int drm_dp_send_power_updown_phy(drm_dp_mst_topology_mgr*, drm_dp_mst_port*, bool)'
  [A] 'function int drm_dp_update_payload_part1(drm_dp_mst_topology_mgr*)'
  [A] 'function int drm_dp_update_payload_part2(drm_dp_mst_topology_mgr*)'
  [A] 'function edid* drm_edid_duplicate(const edid*)'
  [A] 'function void drm_modeset_lock_all(drm_device*)'
  [A] 'function void drm_modeset_unlock_all(drm_device*)'
  [A] 'function int drm_panel_notifier_register(drm_panel*, notifier_block*)'
  [A] 'function int drm_panel_notifier_unregister(drm_panel*, notifier_block*)'
  [A] 'function void drm_wait_one_vblank(drm_device*, unsigned int)'
  [A] 'function int dw_pcie_read(void*, int, unsigned int*)'
  [A] 'function int dw_pcie_write(void*, int, unsigned int)'
  [A] 'function const char* extcon_get_edev_name(extcon_dev*)'
  [A] 'function int extcon_set_property(extcon_dev*, unsigned int, unsigned int, extcon_property_value)'
  [A] 'function int extcon_set_property_capability(extcon_dev*, unsigned int, unsigned int)'
  [A] 'function int freq_qos_add_request(freq_constraints*, freq_qos_request*, freq_qos_req_type, s32)'
  [A] 'function int freq_qos_remove_request(freq_qos_request*)'
  [A] 'function int freq_qos_update_request(freq_qos_request*, s32)'
  [A] 'function unsigned long int gcd(unsigned long int, unsigned long int)'
  [A] 'function file* get_task_exe_file(task_struct*)'
  [A] 'function mm_struct* get_task_mm(task_struct*)'
  [A] 'function int gpiochip_lock_as_irq(gpio_chip*, unsigned int)'
  [A] 'function void gpiochip_unlock_as_irq(gpio_chip*, unsigned int)'
  [A] 'function usb_request* gs_alloc_req(usb_ep*, unsigned int, gfp_t)'
  [A] 'function void gs_free_req(usb_ep*, usb_request*)'
  [A] 'function int gserial_alloc_line(unsigned char*)'
  [A] 'function int gserial_connect(gserial*, unsigned char)'
  [A] 'function void gserial_disconnect(gserial*)'
  [A] 'function void gserial_free_line(unsigned char)'
  [A] 'function i2c_client* i2c_new_dummy(i2c_adapter*, u16)'
  [A] 'function int i2c_smbus_read_i2c_block_data(const i2c_client*, unsigned char, unsigned char, unsigned char*)'
  [A] 'function int i2c_smbus_write_i2c_block_data(const i2c_client*, unsigned char, unsigned char, const unsigned char*)'
  [A] 'function int i2c_smbus_write_word_data(const i2c_client*, unsigned char, unsigned short int)'
  [A] 'function void iio_channel_release(iio_channel*)'
  [A] 'function void input_mt_destroy_slots(input_dev*)'
  [A] 'function void input_mt_report_pointer_emulation(input_dev*, bool)'
  [A] 'function int iommu_attach_group(iommu_domain*, iommu_group*)'
  [A] 'function int iommu_dma_reserve_iova(device*, dma_addr_t, u64)'
  [A] 'function int iommu_group_for_each_dev(iommu_group*, void*, void ()*)'
  [A] 'function int iommu_group_set_name(iommu_group*, const char*)'
  [A] 'function phys_addr_t iommu_iova_to_phys(iommu_domain*, dma_addr_t)'
  [A] 'function int iommu_register_device_fault_handler(device*, iommu_dev_fault_handler_t, void*)'
  [A] 'function int iommu_report_device_fault(device*, iommu_fault_event*)'
  [A] 'function int iommu_unregister_device_fault_handler(device*)'
  [A] 'function size_t ion_query_heaps_kernel(ion_heap_data*, size_t)'
  [A] 'function int irq_set_affinity_notifier(unsigned int, irq_affinity_notify*)'
  [A] 'function int irq_set_handler_data(unsigned int, void*)'
  [A] 'function long long unsigned int jiffies_64_to_clock_t(long long unsigned int)'
  [A] 'function long int kernel_write(file*, void*, unsigned long int, long long int*)'
  [A] 'function keyslot_manager* keyslot_manager_create(device*, unsigned int, const keyslot_mgmt_ll_ops*, unsigned int, const unsigned int*, void*)'
  [A] 'function keyslot_manager* keyslot_manager_create_passthrough(device*, const keyslot_mgmt_ll_ops*, unsigned int, const unsigned int*, void*)'
  [A] 'function void* keyslot_manager_private(keyslot_manager*)'
  [A] 'function int kstrtoul_from_user(const char*, unsigned long int, unsigned int, unsigned long int*)'
  [A] 'function media_link* media_create_intf_link(media_entity*, media_interface*, u32)'
  [A] 'function int media_device_register_entity(media_device*, media_entity*)'
  [A] 'function void media_device_unregister_entity(media_entity*)'
  [A] 'function media_intf_devnode* media_devnode_create(media_device*, u32, u32, u32, u32)'
  [A] 'function void media_devnode_remove(media_intf_devnode*)'
  [A] 'function void media_entity_remove_links(media_entity*)'
  [A] 'function void media_remove_intf_links(media_interface*)'
  [A] 'function unsigned long int memweight(void*, unsigned long int)'
  [A] 'function void mmput(mm_struct*)'
  [A] 'function timeval ns_to_timeval(long long int)'
  [A] 'function const char* of_clk_get_parent_name(device_node*, int)'
  [A] 'function device_node* of_find_node_by_phandle(unsigned int)'
  [A] 'function int of_get_dma_window(device_node*, const char*, int, unsigned long int*, dma_addr_t*, size_t*)'
  [A] 'function pci_bus* pci_find_bus(int, int)'
  [A] 'function unsigned int pci_rescan_bus(pci_bus*)'
  [A] 'function perf_event* perf_event_create_kernel_counter(perf_event_attr*, int, task_struct*, void ()*, void*)'
  [A] 'function void perf_event_disable(perf_event*)'
  [A] 'function void perf_event_enable(perf_event*)'
  [A] 'function u64 perf_event_read_value(perf_event*, u64*, u64*)'
  [A] 'function int perf_event_release_kernel(perf_event*)'
  [A] 'function int phy_reset(phy*)'
  [A] 'function void pinctrl_add_gpio_range(pinctrl_dev*, pinctrl_gpio_range*)'
  [A] 'function int pinctrl_force_sleep(pinctrl_dev*)'
  [A] 'function void pinctrl_remove_gpio_range(pinctrl_dev*, pinctrl_gpio_range*)'
  [A] 'function void pm_runtime_irq_safe(device*)'
  [A] 'function int power_supply_reg_notifier(notifier_block*)'
  [A] 'function void power_supply_unreg_notifier(notifier_block*)'
  [A] 'function void proc_remove(proc_dir_entry*)'
  [A] 'function void* pwm_get_chip_data(pwm_device*)'
  [A] 'function int pwm_set_chip_data(pwm_device*, void*)'
  [A] 'function int rdev_get_id(regulator_dev*)'
  [A] 'function int regcache_drop_region(regmap*, unsigned int, unsigned int)'
  [A] 'function void register_console(console*)'
  [A] 'function int register_die_notifier(notifier_block*)'
  [A] 'function int regmap_async_complete(regmap*)'
  [A] 'function int regmap_multi_reg_write_bypassed(regmap*, const reg_sequence*, int)'
  [A] 'function int regmap_raw_write_async(regmap*, unsigned int, void*, size_t)'
  [A] 'function void* regulator_get_drvdata(regulator*)'
  [A] 'function void release_pages(page**, int)'
  [A] 'function void* return_address(unsigned int)'
  [A] 'function int rpmh_flush(const device*)'
  [A] 'function void rtc_class_close(rtc_device*)'
  [A] 'function rtc_device* rtc_class_open(const char*)'
  [A] 'function int rtc_read_time(rtc_device*, rtc_time*)'
  [A] 'function int sched_setscheduler_nocheck(task_struct*, int, const sched_param*)'
  [A] 'function void sched_show_task(task_struct*)'
  [A] 'function void scsi_print_sense_hdr(const scsi_device*, const char*, const scsi_sense_hdr*)'
  [A] 'function int smpboot_register_percpu_thread(smp_hotplug_thread*)'
  [A] 'function int snd_compr_stop_error(snd_compr_stream*, snd_pcm_state_t)'
  [A] 'function int snd_hwdep_new(snd_card*, char*, int, snd_hwdep**)'
  [A] 'function void snd_pcm_lib_preallocate_free_for_all(snd_pcm*)'
  [A] 'function void snd_pcm_lib_preallocate_pages(snd_pcm_substream*, int, device*, size_t, size_t)'
  [A] 'function unsigned int snd_pcm_rate_range_to_bits(unsigned int, unsigned int)'
  [A] 'function int snd_soc_bytes_info_ext(snd_kcontrol*, snd_ctl_elem_info*)'
  [A] 'function void snd_soc_component_async_complete(snd_soc_component*)'
  [A] 'function int snd_soc_component_disable_pin(snd_soc_component*, const char*)'
  [A] 'function int snd_soc_component_force_enable_pin(snd_soc_component*, const char*)'
  [A] 'function int snd_soc_component_read(snd_soc_component*, unsigned int, unsigned int*)'
  [A] 'function int snd_soc_component_set_pll(snd_soc_component*, int, int, unsigned int, unsigned int)'
  [A] 'function int snd_soc_component_set_sysclk(snd_soc_component*, int, int, unsigned int, int)'
  [A] 'function int snd_soc_component_update_bits_async(snd_soc_component*, unsigned int, unsigned int, unsigned int)'
  [A] 'function int snd_soc_dai_set_bclk_ratio(snd_soc_dai*, unsigned int)'
  [A] 'function int snd_soc_dapm_get_pin_status(snd_soc_dapm_context*, const char*)'
  [A] 'function snd_soc_dapm_widget* snd_soc_dapm_new_control(snd_soc_dapm_context*, const snd_soc_dapm_widget*)'
  [A] 'function int snd_soc_dapm_weak_routes(snd_soc_dapm_context*, const snd_soc_dapm_route*, int)'
  [A] 'function snd_soc_dai* snd_soc_find_dai(const snd_soc_dai_link_component*)'
  [A] 'function snd_soc_pcm_runtime* snd_soc_get_pcm_runtime(snd_soc_card*, const char*)'
  [A] 'function int snd_soc_get_volsw_range(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function int snd_soc_get_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function int snd_soc_info_volsw_range(snd_kcontrol*, snd_ctl_elem_info*)'
  [A] 'function int snd_soc_info_xr_sx(snd_kcontrol*, snd_ctl_elem_info*)'
  [A] 'function int snd_soc_of_get_dai_link_codecs(device*, device_node*, snd_soc_dai_link*)'
  [A] 'function void snd_soc_of_put_dai_link_codecs(snd_soc_dai_link*)'
  [A] 'function int snd_soc_params_to_bclk(snd_pcm_hw_params*)'
  [A] 'function int snd_soc_put_volsw_range(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function int snd_soc_put_xr_sx(snd_kcontrol*, snd_ctl_elem_value*)'
  [A] 'function int snd_soc_tplg_component_load(snd_soc_component*, snd_soc_tplg_ops*, const firmware*, u32)'
  [A] 'function int snd_soc_tplg_component_remove(snd_soc_component*, unsigned int)'
  [A] 'function int snd_soc_tplg_widget_bind_event(snd_soc_dapm_widget*, const snd_soc_tplg_widget_events*, int, u16)'
  [A] 'function int subsys_system_register(bus_type*, const attribute_group**)'
  [A] 'function int sysfs_add_file_to_group(kobject*, const attribute*, const char*)'
  [A] 'function void thermal_cdev_update(thermal_cooling_device*)'
  [A] 'function void thermal_cooling_device_unregister(thermal_cooling_device*)'
  [A] 'function thermal_cooling_device* thermal_of_cooling_device_register(device_node*, const char*, void*, const thermal_cooling_device_ops*)'
  [A] 'function thermal_zone_device* thermal_zone_device_register(const char*, int, int, void*, thermal_zone_device_ops*, thermal_zone_params*, int, int)'
  [A] 'function void thermal_zone_of_sensor_unregister(device*, thermal_zone_device*)'
  [A] 'function void touch_softlockup_watchdog()'
  [A] 'function int ufshcd_crypto_cap_find(ufs_hba*, blk_crypto_mode_num, unsigned int)'
  [A] 'function void ufshcd_crypto_disable_spec(ufs_hba*)'
  [A] 'function void ufshcd_crypto_enable_spec(ufs_hba*)'
  [A] 'function int ufshcd_shutdown(ufs_hba*)'
  [A] 'function int ufshcd_system_resume(ufs_hba*)'
  [A] 'function int ufshcd_system_suspend(ufs_hba*)'
  [A] 'function int usb_add_function(usb_configuration*, usb_function*)'
  [A] 'function usb_descriptor_header** usb_copy_descriptors(usb_descriptor_header**)'
  [A] 'function void usb_enable_autosuspend(usb_device*)'
  [A] 'function int usb_get_current_frame_number(usb_device*)'
  [A] 'function s32 v4l2_ctrl_g_ctrl(v4l2_ctrl*)'
  [A] 'function int v4l2_ctrl_handler_setup(v4l2_ctrl_handler*)'
  [A] 'function int v4l2_ctrl_log_status(file*, void*)'
  [A] 'function void v4l2_ctrl_merge(const v4l2_event*, v4l2_event*)'
  [A] 'function void v4l2_ctrl_replace(v4l2_event*, const v4l2_event*)'
  [A] 'function void v4l2_device_disconnect(v4l2_device*)'
  [A] 'function int v4l2_device_put(v4l2_device*)'
  [A] 'function const v4l2_format_info* v4l2_format_info(u32)'
  [A] 'function void v4l2_prio_init(v4l2_prio_state*)'
  [A] 'function int vb2_create_bufs(vb2_queue*, v4l2_create_buffers*)'
  [A] 'function int vb2_expbuf(vb2_queue*, v4l2_exportbuffer*)'
  [A] 'function int vb2_ioctl_create_bufs(file*, void*, v4l2_create_buffers*)'
  [A] 'function int vb2_ioctl_prepare_buf(file*, void*, v4l2_buffer*)'
  [A] 'function int vb2_mmap(vb2_queue*, vm_area_struct*)'
  [A] 'function void* vb2_plane_vaddr(vb2_buffer*, unsigned int)'
  [A] 'function __poll_t vb2_poll(vb2_queue*, file*, poll_table*)'
  [A] 'function int vb2_prepare_buf(vb2_queue*, media_device*, v4l2_buffer*)'
  [A] 'function int vb2_querybuf(vb2_queue*, v4l2_buffer*)'
  [A] 'function void vb2_queue_error(vb2_queue*)'
  [A] 'function bool vb2_request_object_is_buffer(media_request_object*)'
  [A] 'function int vb2_wait_for_all_buffers(vb2_queue*)'
  [A] 'function int vm_map_pages(vm_area_struct*, page**, unsigned long int)'
  [A] 'function vm_fault_t vmf_insert_pfn_prot(vm_area_struct*, unsigned long int, unsigned long int, pgprot_t)'
  [A] 'function int watchdog_register_device(watchdog_device*)'
  [A] 'function void watchdog_set_restart_priority(watchdog_device*, int)'
  [A] 'function void watchdog_unregister_device(watchdog_device*)'

12 Added variables:

  [A] 'cpumask __cpu_active_mask'
  [A] 'const unsigned long int cpu_all_bits[1]'
  [A] 'bool cpuhp_tasks_frozen'
  [A] 'task_struct init_task'
  [A] 'u64 jiffies_64'
  [A] 'kernel_stat kstat'
  [A] 'int nr_irqs'
  [A] 'device_node* of_root'
  [A] 'reboot_mode reboot_mode'
  [A] 'static_key_false rps_needed'
  [A] 'bool static_key_initialized'
  [A] 'const char* v4l2_type_names[15]'

Bug: 151190212
Signed-off-by: Quentin Perret <[email protected]>
Change-Id: Idb56bafa6cf25330f78d0a06602270b7477117cb
2020-05-01 10:40:24 +01:00
arch ANDROID: GKI: enable CONFIG_RTC_SYSTOHC on x86 2020-04-30 15:10:24 +00:00
block This is the 5.4.35 stable release 2020-04-23 11:15:10 +02:00
certs
crypto This is the 5.4.33 stable release 2020-04-17 11:26:58 +02:00
Documentation This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
drivers ANDROID: drivers: gpu: drm: fix export symbol type 2020-04-30 12:27:01 +02:00
fs ANDROID: Incremental fs: Add setattr call 2020-04-30 21:06:18 +00:00
include This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
init ANDROID: GKI: Enable GENERIC_IRQ_CHIP 2020-04-27 16:00:17 +00:00
ipc This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
kernel ANDROID: cfi: fix export symbol types 2020-04-29 19:12:47 +02:00
lib This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
LICENSES
mm ANDROID: mm/memory.c: fix export symbol type 2020-04-30 12:26:30 +02:00
net This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
samples This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
scripts This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
security ANDROID: sdcardfs: fix export symbol type 2020-04-30 12:26:30 +02:00
sound ANDROID: SoC: core: fix export symbol type 2020-04-30 12:26:29 +02:00
tools This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
usr initramfs: restore default compression behavior 2020-04-08 09:08:38 +02:00
virt KVM: Check for a bad hva before dropping into the ghc slow path 2020-03-05 16:43:48 +01:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore Revert "ANDROID: Revert "Merge tag 'modules-for-v5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux"" 2019-11-13 10:14:45 +00:00
.mailmap ARM: SoC fixes 2019-11-10 13:41:59 -08:00
abi_gki_aarch64.xml ANDROID: Update ABI representation after adding exynos whitelist 2020-05-01 10:40:24 +01:00
abi_gki_aarch64_cuttlefish_whitelist ANDROID: GKI: update abi and cf/gf whitelists 2020-04-29 16:08:21 -07:00
abi_gki_aarch64_db845c_whitelist ANDROID: ABI/Whitelist: update for db845c after changing drivers to modules. 2020-04-16 18:15:41 +00:00
abi_gki_aarch64_exynos_whitelist ANDROID: Add abi_gki_aarch64_exynos_whitelist 2020-05-01 10:19:00 +01:00
abi_gki_aarch64_goldfish_whitelist ANDROID: GKI: update abi and cf/gf whitelists 2020-04-29 16:08:21 -07:00
abi_gki_aarch64_hikey960_whitelist ANDROID: abi_gki_aarch64_hikey960_whitelist: remove stale symbols 2020-05-01 10:13:54 +01:00
abi_gki_aarch64_qcom_whitelist ANDROID: abi_gki_aarch64_qcom_whitelist: Sync with android-5.4 2020-05-01 10:13:54 +01:00
abi_gki_aarch64_sunxi_whitelist ANDROID: abi_gki_aarch64_sunxi_whitelist: remove stale symbols 2020-05-01 10:13:55 +01:00
abi_gki_aarch64_unisoc_whitelist ANDROID: abi_gki_aarch64_unisoc_whitelist: remove stale symbols 2020-05-01 10:13:54 +01:00
abi_gki_aarch64_whitelist ANDROID: abi_gki_aarch64_whitelist: add module_layout and task_struct 2020-03-04 23:09:20 +00:00
build.config.aarch64 ANDROID: add compat cross compiler 2020-04-27 20:20:28 -07:00
build.config.allmodconfig ANDROID: fix allmodconfig build to use the right toolchain 2020-04-14 15:39:56 +00:00
build.config.allmodconfig.aarch64
build.config.allmodconfig.arm ANDROID: Add build.config files for ARM 32-bit 2020-03-15 22:51:11 +00:00
build.config.allmodconfig.x86_64
build.config.arm ANDROID: Add build.config files for ARM 32-bit 2020-03-15 22:51:11 +00:00
build.config.common ANDROID: clang: update to 10.0.5 2020-03-30 20:09:25 +00:00
build.config.db845c ANDROID: db845c build: Use merge_configs 2020-04-01 14:04:53 +00:00
build.config.gki ANDROID: gki: Removed cf modules from gki_defconfig 2020-01-31 16:34:58 -08:00
build.config.gki-debug.aarch64 ANDROID: Add build.config.gki-debug.aarch64 2020-03-16 09:20:25 +00:00
build.config.gki-debug.x86_64 ANDROID: Add build.config.gki-debug.x86_64 2020-03-16 14:27:00 +00:00
build.config.gki.aarch64 ANDROID: Add abi_gki_aarch64_exynos_whitelist 2020-05-01 10:19:00 +01:00
build.config.gki.x86_64
build.config.hikey960 ANDROID: hikey960: Add external mali driver support to build.config.hikey960 2020-03-23 22:55:17 +00:00
build.config.x86_64
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS This is the 5.4.23 stable release 2020-03-01 10:17:44 +01:00
Makefile This is the 5.4.36 stable release 2020-04-29 17:24:24 +02:00
README
README.md ANDROID: Fix typo for FROMLIST: section 2019-10-29 20:31:07 +00:00

How do I submit patches to Android Common Kernels

  1. BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. These patches will be merged automatically in the corresponding common kernels. If the patch is already in upstream Linux, post a backport of the patch that conforms to the patch requirements below.

  2. LESS GOOD: Develop your patches out-of-tree (from an upstream Linux point-of-view). Unless these are fixing an Android-specific bug, these are very unlikely to be accepted unless they have been coordinated with [email protected]. If you want to proceed, post a patch that conforms to the patch requirements below.

Common Kernel patch requirements

  • All patches must conform to the Linux kernel coding standards and pass script/checkpatch.pl
  • Patches shall not break gki_defconfig or allmodconfig builds for arm, arm64, x86, x86_64 architectures (see https://source.android.com/setup/build/building-kernels)
  • If the patch is not merged from an upstream branch, the subject must be tagged with the type of patch: UPSTREAM:, BACKPORT:, FROMGIT:, FROMLIST:, or ANDROID:.
  • All patches must have a Change-Id: tag (see https://gerrit-review.googlesource.com/Documentation/user-changeid.html)
  • If an Android bug has been assigned, there must be a Bug: tag.
  • All patches must have a Signed-off-by: tag by the author and the submitter

Additional requirements are listed below based on patch type

Requirements for backports from mainline Linux: UPSTREAM:, BACKPORT:

  • If the patch is a cherry-pick from Linux mainline with no changes at all
    • tag the patch subject with UPSTREAM:.
    • add upstream commit information with a (cherry-picked from ...) line
    • Example:
      • if the upstream commit message is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>
    - then Joe Smith would upload the patch for the common kernel as
        UPSTREAM: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        Signed-off-by: Joe Smith <[email protected]>
  • If the patch requires any changes from the upstream version, tag the patch with BACKPORT: instead of UPSTREAM:.
    • use the same tags as UPSTREAM:
    • add comments about the changes under the (cherry-picked from ...) line
    • Example:
        BACKPORT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>

        Bug: 135791357
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        (cherry-picked from c31e73121f4c1ec41143423ac6ce3ce6dafdcec1)
        [ Resolved minor conflict in drivers/foo/bar.c ]
        Signed-off-by: Joe Smith <[email protected]>

Requirements for other backports: FROMGIT:, FROMLIST:,

  • If the patch has been merged into an upstream maintainer tree, but has not yet been merged into Linux mainline
    • tag the patch subject with FROMGIT:
    • add info on where the patch came from as (cherry picked from commit <sha1> <repo> <branch>). This must be a stable maintainer branch (not rebased, so don't use linux-next for example).
    • if changes were required, use BACKPORT: FROMGIT:
    • Example:
      • if the commit message in the maintainer tree is
        important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>
    - then Joe Smith would upload the patch for the common kernel as
        FROMGIT: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>

        Bug: 135791357
        (cherry picked from commit 878a2fd9de10b03d11d2f622250285c7e63deace
         https://git.kernel.org/pub/scm/linux/kernel/git/foo/bar.git test-branch)
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <[email protected]>
  • If the patch has been submitted to LKML, but not accepted into any maintainer tree
    • tag the patch subject with FROMLIST:
    • add a Link: tag with a link to the submittal on lore.kernel.org
    • if changes were required, use BACKPORT: FROMLIST:
    • Example:
        FROMLIST: important patch from upstream

        This is the detailed description of the important patch

        Signed-off-by: Fred Jones <[email protected]>

        Bug: 135791357
        Link: https://lore.kernel.org/lkml/[email protected]/
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <[email protected]>

Requirements for Android-specific patches: ANDROID:

  • If the patch is fixing a bug to Android-specific code
    • tag the patch subject with ANDROID:
    • add a Fixes: tag that cites the patch with the bug
    • Example:
        ANDROID: fix android-specific bug in foobar.c

        This is the detailed description of the important fix

        Fixes: 1234abcd2468 ("foobar: add cool feature")
        Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01
        Signed-off-by: Joe Smith <[email protected]>
  • If the patch is a new feature
    • tag the patch subject with ANDROID:
    • add a Bug: tag with the Android bug (required for android-specific features)