This is needed to reduce ABI diff for ALSA/soc modules.
Bug: 151372815
Change-Id: I1d8257946fa2f20d531ce0bc3595be023839b192
Signed-off-by: Saravana Kannan <saravanak@google.com>
This is needed to reduce ABI diff for ALSA/soc modules.
Bug: 151372815
Change-Id: Ia0a73bd28f94bdc4e8de31efc3b8e97b1156ab01
Signed-off-by: Saravana Kannan <saravanak@google.com>
Leaf changes summary: 7 artifacts changed
Changed leaf types summary: 6 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 1 Changed, 0 Added variable
1 Changed variable:
[C] 'const char linux_banner[361]' was changed to 'const char* linux_banner' at version.c:45:1:
type of variable changed:
entity changed from 'const char[361]' to 'const char*'
type size changed from 2888 to 64 (in bits)
'struct drm_connector at drm_connector.h:824:1' changed:
type size changed from 14464 to 14144 (in bits)
2 data member deletions:
'hdr_output_metadata drm_connector::hdr_output_metadata', at offset 14016 (in bits) at drm_connector.h:1177:1
'hdr_sink_metadata drm_connector::hdr_sink_metadata', at offset 14272 (in bits) at drm_connector.h:1178:1
1 data member insertion:
'u8 drm_connector::checksum', at offset 14080 (in bits) at drm_connector.h:1187:1
there are data member changes:
'drm_panel* drm_connector::panel' offset changed from 14400 to 14016 (in bits) (by -384 bits)
187 impacted interfaces
'struct drm_connector_state at drm_connector.h:411:1' changed:
type size changed from 1088 to 1024 (in bits)
1 data member deletion:
'drm_property_blob* drm_connector_state::hdr_output_metadata', at offset 1024 (in bits) at drm_connector.h:505:1
187 impacted interfaces
'struct drm_device at drm_device.h:31:1' changed:
type size changed from 13376 to 13312 (in bits)
there are data member changes:
type 'struct drm_mode_config' of 'drm_device::mode_config' changed:
type size changed from 8256 to 8192 (in bits)
1 data member deletion:
'drm_property* drm_mode_config::hdr_output_metadata_property', at offset 7808 (in bits) at drm_mode_config.h:815:1
there are data member changes:
'uint32_t drm_mode_config::preferred_depth' offset changed from 7872 to 7808 (in bits) (by -64 bits)
'uint32_t drm_mode_config::prefer_shadow' offset changed from 7904 to 7840 (in bits) (by -64 bits)
'bool drm_mode_config::async_page_flip' offset changed from 7936 to 7872 (in bits) (by -64 bits)
'bool drm_mode_config::allow_fb_modifiers' offset changed from 7944 to 7880 (in bits) (by -64 bits)
'bool drm_mode_config::normalize_zpos' offset changed from 7952 to 7888 (in bits) (by -64 bits)
'drm_property* drm_mode_config::modifiers_property' offset changed from 8000 to 7936 (in bits) (by -64 bits)
'uint32_t drm_mode_config::cursor_width' offset changed from 8064 to 8000 (in bits) (by -64 bits)
'uint32_t drm_mode_config::cursor_height' offset changed from 8096 to 8032 (in bits) (by -64 bits)
'drm_atomic_state* drm_mode_config::suspend_state' offset changed from 8128 to 8064 (in bits) (by -64 bits)
'const drm_mode_config_helper_funcs* drm_mode_config::helper_private' offset changed from 8192 to 8128 (in bits) (by -64 bits)
187 impacted interfaces
and size changed from 8256 to 8192 (in bits) (by -64 bits)
'mutex drm_device::object_name_lock' offset changed from 12736 to 12672 (in bits) (by -64 bits)
'idr drm_device::object_name_idr' offset changed from 12992 to 12928 (in bits) (by -64 bits)
'drm_vma_offset_manager* drm_device::vma_offset_manager' offset changed from 13184 to 13120 (in bits) (by -64 bits)
'int drm_device::switch_power_state' offset changed from 13248 to 13184 (in bits) (by -64 bits)
'drm_fb_helper* drm_device::fb_helper' offset changed from 13312 to 13248 (in bits) (by -64 bits)
187 impacted interfaces
'struct drm_dp_aux at drm_dp_helper.h:1148:1' changed:
type size changed from 10496 to 10752 (in bits)
1 data member insertion:
'mutex drm_dp_aux::i2c_mutex', at offset 8896 (in bits) at drm_dp_helper.h:1154:1
there are data member changes:
'work_struct drm_dp_aux::crc_work' offset changed from 8896 to 9152 (in bits) (by +256 bits)
'u8 drm_dp_aux::crc_count' offset changed from 9152 to 9408 (in bits) (by +256 bits)
'void ()* drm_dp_aux::transfer' offset changed from 9216 to 9472 (in bits) (by +256 bits)
'unsigned int drm_dp_aux::i2c_nack_count' offset changed from 9280 to 9536 (in bits) (by +256 bits)
'unsigned int drm_dp_aux::i2c_defer_count' offset changed from 9312 to 9568 (in bits) (by +256 bits)
'drm_dp_aux_cec drm_dp_aux::cec' offset changed from 9344 to 9600 (in bits) (by +256 bits)
25 impacted interfaces
'struct drm_dp_mst_port at drm_dp_mst_helper.h:69:1' changed:
type size changed from 11264 to 11840 (in bits)
1 data member insertion:
'drm_dp_mst_dsc_info drm_dp_mst_port::dsc_info', at offset 11520 (in bits) at drm_dp_mst_helper.h:117:1
there are data member changes:
type 'struct drm_dp_aux' of 'drm_dp_mst_port::aux' changed as reported earlier
and size changed from 10496 to 10752 (in bits) (by +256 bits)
'drm_dp_mst_branch* drm_dp_mst_port::parent' offset changed from 10816 to 11072 (in bits) (by +256 bits)
'drm_dp_vcpi drm_dp_mst_port::vcpi' offset changed from 10880 to 11136 (in bits) (by +256 bits)
'drm_connector* drm_dp_mst_port::connector' offset changed from 11008 to 11264 (in bits) (by +256 bits)
'drm_dp_mst_topology_mgr* drm_dp_mst_port::mgr' offset changed from 11072 to 11328 (in bits) (by +256 bits)
'edid* drm_dp_mst_port::cached_edid' offset changed from 11136 to 11392 (in bits) (by +256 bits)
'bool drm_dp_mst_port::has_audio' offset changed from 11200 to 11456 (in bits) (by +256 bits)
'bool drm_dp_mst_port::fec_capable' offset changed from 11208 to 11464 (in bits) (by +256 bits)
16 impacted interfaces
'struct drm_mode_config at drm_mode_config.h:352:1' changed:
details were reported earlier
Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I431c5860ebf5fede23f30587e6262e7269756722
Resolves an abi diff. Also adds setter/getter functions which are also
exported.
Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Ieb567ae1915446720ed2e77651a9a49f1e295360
Update helper APIs to return physical address as well as
USB SMMU stage 1 address. Physical address is used to map
it to iova for remote processor. S1 address is used by xHC.
Get sg table containing one or mode page sized physical
address corresponding to S1 address for event ring, xfer
ring and xfer buffers using dma_get_sgtable(). Accordingly
update QMI response buffer for XHCI event ring, xfer ring
memory info and xfer buffer.
Change-Id: I6c9ea39d8a87a5bdc5a760d2a1ca85ab3024d985
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
(cherry picked from commit 3e3d0ab1829b80c4c8c9b0a2d208ee096247a962)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154042109
This is a merge of two cherry picks for simplicity and reduction of
churn.
Cherry picked from commit 787b74a48742b2946a8cfe7dc4b405a07b96a9cd
("usb: xhci: Add helper APIs to return xhci dma addresses")
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Cherry picked from commit b8360b2a9821ae2be1a33e536bf7c7ca072919ba
("usb: core: Remove helper APIs returning dcba dma address")
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
dma address of secondary event ring and transfer ring are required
to pass to remote entity. Remote entity uses these addresses to
program xhci controller registers.
Change to EXPORT_SYMBOL_GPL usage instead.
(cherry picked from commit 787b74a48742b2946a8cfe7dc4b405a07b96a9cd)
(cherry picked from commit b8360b2a9821ae2be1a33e536bf7c7ca072919ba)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154042109
Change-Id: I9fd1e95b00f2185b01374a46d7dff3182c3b3d78
This variable can have its ABI intentionally changed by anybody building
on a different hostname etc. so it does not make sense to monitor it as
a C string. Make linux_banner a C pointer so it is checked for presence
but not for length.
Bug: 154345163
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I932e7c2ca1a1bd6d730462249005515c71771ed8
This reverts commit 4ae8f7c45a.
We don't need these drm blob properties on this branch.
Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Ib715f4e3b6394091c8b537d4cb534c3b31d7f8c8
This reverts commit 1e98c11549.
Revert most of this change. We only need the #define.
Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I6978ee67314f64e92e22a051f85863c1a440f9f1
This patch adds a DP colorspace property, enabling
userspace to switch to various supported colorspaces.
This will help enable BT2020 along with other colorspaces.
v2: Addressed Maarten and Ville's review comments. Enhanced
the colorspace enum to incorporate both HDMI and DP supported
colorspaces. Also, added a default option for colorspace.
v3: Split the changes to have separate colorspace property for
DP and HDMI.
v4: Addressed Chris and Ville's review comments, and created a
common colorspace property for DP and HDMI, filtered the list
based on the colorspaces supported by the respective protocol
standard.
v5: Merged the DP handling along with platform colorspace
handling as per Shashank's comments.
v6: Reverted to old design of exposing all colorspaces to
userspace as per Ville's review comment
v7: Fixed sparse warnings, updated the RB from Maarten and Jani's ack.
v8: Addressed Ville's review comments and updated the colorspace
macro definitions.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.kernel.org/patch/10797701/
[adelva: Renamed some enums and added BT.2020 formats]
Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I90f3132104d1fe5cbc48b78fbcf80d73add49e1f
When parsing HDMI Forum Vendor-Specific Data Block ensure that
connector->hdmi is also initialized with data from the vsdb. Currently
the code only intializes connector properties.
Bug: 152417756
Change-Id: Iabebd6e0500bfac99c96e27990044737c2870959
Signed-off-by: Alistair Delva <adelva@google.com>
MSM DSI framework has capability to batch commands and
do kickoff once MIPI_DSI_MSG_LASTCOMMAND flag is set. This enables
related commands to be grouped and sent in one dma kickoff.
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Bug: 139653858
Change-Id: I2742c62a90e9a194848a612eef40a22103bb6596
These changes are based on the new msm serial driver.
Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 154153369
Change-Id: Iea008b29fc4ce78496638dbc22b1775ff6036659
This is added for ABI compatibility with vendors.
Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 140652396
Test: compile
Change-Id: Iac3f7c061db8a807586c565b40502bfc75195277
This is used for early console on qcom devices.
Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 154153369
Test: compile
Change-Id: Iabf29261f36fd4c41a89491d49548c331ae19a3e
This change enables earlyconsole support as static driver for geni
based UART. Kernel space UART console driver will be generic for
console and other usecases of UART.
Bug: 144074026
Test: Earlyconsole logs are fine and switch kernel console is fine.
Change-Id: I34c9910cc8aa9586f842362fae62bc7127bcee5e
Signed-off-by: Mukesh Kumar Savaliya <msavaliy@codeaurora.org>
(cherry picked from commit ac0ec822779819c8d5cdc1d97d44afdefe1d3ece)
Signed-off-by: Will McVicker <willmcvicker@google.com>
Leaf changes summary: 18 artifacts changed (2 filtered out)
Changed leaf types summary: 12 (2 filtered out) leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 4 Added functions
Removed/Changed/Added variables summary: 0 Removed, 2 Changed, 0 Added variable
4 Added functions:
[A] 'function thermal_cooling_device* cpufreq_platform_cooling_register(cpufreq_policy*, cpu_cooling_ops*)'
[A] 'function int gpiod_export(gpio_desc*, bool)'
[A] 'function void usb_register_atomic_notify(notifier_block*)'
[A] 'function void usb_unregister_atomic_notify(notifier_block*)'
2 Changed variables:
[C] 'pglist_data contig_page_data' was changed at nobootmem.c:31:1:
type of variable changed:
type size changed from 30208 to 30720 (in bits)
there are data member changes:
type 'atomic_long_t[30]' of 'pglist_data::vm_stat' changed:
type name changed from 'atomic_long_t[30]' to 'atomic_long_t[32]'
array type size changed from 1920 to 2048
array type subrange 1 changed length from 30 to 32
and size changed from 1920 to 2048 (in bits) (by +128 bits)
1443 impacted interfaces:
[C] 'const char linux_banner[382]' was changed to 'const char linux_banner[361]' at version.c:45:1:
type of variable changed:
type name changed from 'const char[382]' to 'const char[361]'
array type size changed from 3056 to 2888
array type subrange 1 changed length from 382 to 361
'enum cpuhp_state at cpuhotplug.h:25:1' changed:
type size hasn't changed
9 enumerator insertions:
'cpuhp_state::CPUHP_HYP_CORE_CTL_ISOLATION_DEAD' value '45'
'cpuhp_state::CPUHP_CORE_CTL_ISOLATION_DEAD' value '46'
'cpuhp_state::CPUHP_QCOM_CPUFREQ_PREPARE' value '52'
'cpuhp_state::CPUHP_AP_EDAC_PMU_STARTING' value '94'
'cpuhp_state::CPUHP_AP_QCOM_CPUFREQ_STARTING' value '121'
'cpuhp_state::CPUHP_AP_QCOM_SLEEP_STARTING' value '122'
'cpuhp_state::CPUHP_AP_ARM_SAVE_RESTORE_CORESIGHT4_STARTING' value '134'
'cpuhp_state::CPUHP_AP_ARM_MM_CORESIGHT4_STARTING' value '135'
'cpuhp_state::CPUHP_AP_NOTIFY_PERF_ONLINE' value '172'
107 enumerator changes:
4 impacted interfaces:
function void __cpuhp_remove_state(cpuhp_state, bool)
function int __cpuhp_setup_state(cpuhp_state, const char*, bool, void ()*, void ()*, bool)
function int __cpuhp_state_add_instance(cpuhp_state, hlist_node*, bool)
function int __cpuhp_state_remove_instance(cpuhp_state, hlist_node*, bool)
'enum node_stat_item at mmzone.h:158:1' changed:
type size hasn't changed
2 enumerator insertions:
'node_stat_item::NR_ION_HEAP' value '30'
'node_stat_item::NR_ION_HEAP_POOL' value '31'
1 enumerator change:
'node_stat_item::NR_VM_NODE_STAT_ITEMS' from value '30' to '32' at mmzone.h:158:1
one impacted interface:
function void mod_node_page_state(pglist_data*, node_stat_item, long int)
'enum snd_jack_types at jack.h:52:1' changed:
type size hasn't changed
5 enumerator insertions:
'snd_jack_types::SND_JACK_OC_HPHL' value '64'
'snd_jack_types::SND_JACK_OC_HPHR' value '128'
'snd_jack_types::SND_JACK_UNSUPPORTED' value '256'
'snd_jack_types::SND_JACK_MICROPHONE2' value '512'
'snd_jack_types::SND_JACK_ANC_HEADPHONE' value '515'
6 enumerator changes:
'snd_jack_types::SND_JACK_BTN_5' from value '512' to '1024' at jack.h:52:1
'snd_jack_types::SND_JACK_BTN_4' from value '1024' to '2048' at jack.h:52:1
'snd_jack_types::SND_JACK_BTN_3' from value '2048' to '4096' at jack.h:52:1
'snd_jack_types::SND_JACK_BTN_2' from value '4096' to '8192' at jack.h:52:1
'snd_jack_types::SND_JACK_BTN_1' from value '8192' to '16384' at jack.h:52:1
'snd_jack_types::SND_JACK_BTN_0' from value '16384' to '32768' at jack.h:52:1
one impacted interface:
function int snd_jack_set_key(snd_jack*, snd_jack_types, int)
'struct lruvec_stat at memcontrol.h:110:1' changed:
type size changed from 1920 to 2048 (in bits)
there are data member changes:
type 'long int[30]' of 'lruvec_stat::count' changed:
type name changed from 'long int[30]' to 'long int[32]'
array type size changed from 1920 to 2048
array type subrange 1 changed length from 30 to 32
and size changed from 1920 to 2048 (in bits) (by +128 bits)
1439 impacted interfaces:
'struct mem_cgroup at memcontrol.h:197:1' changed:
type size hasn't changed
there are data member changes:
type 'atomic_long_t[36]' of 'mem_cgroup::stat' changed:
type name changed from 'atomic_long_t[36]' to 'atomic_long_t[38]'
array type size changed from 2304 to 2432
array type subrange 1 changed length from 36 to 38
and size changed from 2304 to 2432 (in bits) (by +128 bits)
'atomic_long_t mem_cgroup::events[54]' offset changed from 12544 to 12672 (in bits) (by +128 bits)
'atomic_long_t mem_cgroup::memory_events[7]' offset changed from 16000 to 16128 (in bits) (by +128 bits)
'unsigned long int mem_cgroup::socket_pressure' offset changed from 16448 to 16576 (in bits) (by +128 bits)
'bool mem_cgroup::tcpmem_active' offset changed from 16512 to 16640 (in bits) (by +128 bits)
'int mem_cgroup::tcpmem_pressure' offset changed from 16544 to 16672 (in bits) (by +128 bits)
'int mem_cgroup::kmemcg_id' offset changed from 16576 to 16704 (in bits) (by +128 bits)
'memcg_kmem_state mem_cgroup::kmem_state' offset changed from 16608 to 16736 (in bits) (by +128 bits)
'list_head mem_cgroup::kmem_caches' offset changed from 16640 to 16768 (in bits) (by +128 bits)
'int mem_cgroup::last_scanned_node' offset changed from 16768 to 16896 (in bits) (by +128 bits)
'list_head mem_cgroup::cgwb_list' offset changed from 16832 to 16960 (in bits) (by +128 bits)
'wb_domain mem_cgroup::cgwb_domain' offset changed from 16960 to 17088 (in bits) (by +128 bits)
'list_head mem_cgroup::event_list' offset changed from 17920 to 18048 (in bits) (by +128 bits)
'spinlock_t mem_cgroup::event_list_lock' offset changed from 18048 to 18176 (in bits) (by +128 bits)
'mem_cgroup_per_node* mem_cgroup::nodeinfo[]' offset changed from 18112 to 18240 (in bits) (by +128 bits)
1439 impacted interfaces:
'struct mem_cgroup_per_node at memcontrol.h:126:1' changed:
type size changed from 5824 to 5952 (in bits)
there are data member changes:
type 'atomic_long_t[30]' of 'mem_cgroup_per_node::lruvec_stat' changed:
type name changed from 'atomic_long_t[30]' to 'atomic_long_t[32]'
array type size changed from 1920 to 2048
array type subrange 1 changed length from 30 to 32
and size changed from 1920 to 2048 (in bits) (by +128 bits)
'unsigned long int mem_cgroup_per_node::lru_zone_size[2][5]' offset changed from 3072 to 3200 (in bits) (by +128 bits)
'mem_cgroup_reclaim_iter mem_cgroup_per_node::iter[13]' offset changed from 3712 to 3840 (in bits) (by +128 bits)
'memcg_shrinker_map* mem_cgroup_per_node::shrinker_map' offset changed from 5376 to 5504 (in bits) (by +128 bits)
'rb_node mem_cgroup_per_node::tree_node' offset changed from 5440 to 5568 (in bits) (by +128 bits)
'unsigned long int mem_cgroup_per_node::usage_in_excess' offset changed from 5632 to 5760 (in bits) (by +128 bits)
'bool mem_cgroup_per_node::on_tree' offset changed from 5696 to 5824 (in bits) (by +128 bits)
'bool mem_cgroup_per_node::congested' offset changed from 5704 to 5832 (in bits) (by +128 bits)
'mem_cgroup* mem_cgroup_per_node::memcg' offset changed from 5760 to 5888 (in bits) (by +128 bits)
1439 impacted interfaces:
'struct mem_cgroup_stat_cpu at memcontrol.h:97:1' changed:
type size changed from 6016 to 6144 (in bits)
there are data member changes:
type 'long int[36]' of 'mem_cgroup_stat_cpu::count' changed:
type name changed from 'long int[36]' to 'long int[38]'
array type size changed from 2304 to 2432
array type subrange 1 changed length from 36 to 38
and size changed from 2304 to 2432 (in bits) (by +128 bits)
'unsigned long int mem_cgroup_stat_cpu::events[54]' offset changed from 2304 to 2432 (in bits) (by +128 bits)
'unsigned long int mem_cgroup_stat_cpu::nr_page_events' offset changed from 5760 to 5888 (in bits) (by +128 bits)
'unsigned long int mem_cgroup_stat_cpu::targets[3]' offset changed from 5824 to 5952 (in bits) (by +128 bits)
1439 impacted interfaces:
'struct per_cpu_nodestat at mmzone.h:302:1' changed:
type size changed from 248 to 264 (in bits)
there are data member changes:
type 's8[30]' of 'per_cpu_nodestat::vm_node_stat_diff' changed:
type name changed from 's8[30]' to 's8[32]'
array type size changed from 240 to 256
array type subrange 1 changed length from 30 to 32
and size changed from 240 to 256 (in bits) (by +16 bits)
1443 impacted interfaces:
'struct pglist_data at mmzone.h:635:1' changed:
details were reported earlier
'struct snd_soc_card at soc.h:1057:1' changed:
type size changed from 6272 to 6528 (in bits)
1 data member insertion:
'mutex snd_soc_card::dapm_power_mutex', at offset 1792 (in bits) at soc.h:1070:1
there are data member changes:
'bool snd_soc_card::instantiated' offset changed from 1792 to 2048 (in bits) (by +256 bits)
'bool snd_soc_card::topology_shortname_created' offset changed from 1800 to 2056 (in bits) (by +256 bits)
'void ()* snd_soc_card::probe' offset changed from 1856 to 2112 (in bits) (by +256 bits)
'void ()* snd_soc_card::late_probe' offset changed from 1920 to 2176 (in bits) (by +256 bits)
'void ()* snd_soc_card::remove' offset changed from 1984 to 2240 (in bits) (by +256 bits)
'void ()* snd_soc_card::suspend_pre' offset changed from 2048 to 2304 (in bits) (by +256 bits)
'void ()* snd_soc_card::suspend_post' offset changed from 2112 to 2368 (in bits) (by +256 bits)
'void ()* snd_soc_card::resume_pre' offset changed from 2176 to 2432 (in bits) (by +256 bits)
'void ()* snd_soc_card::resume_post' offset changed from 2240 to 2496 (in bits) (by +256 bits)
'void ()* snd_soc_card::set_bias_level' offset changed from 2304 to 2560 (in bits) (by +256 bits)
'void ()* snd_soc_card::set_bias_level_post' offset changed from 2368 to 2624 (in bits) (by +256 bits)
'void ()* snd_soc_card::add_dai_link' offset changed from 2432 to 2688 (in bits) (by +256 bits)
'void ()* snd_soc_card::remove_dai_link' offset changed from 2496 to 2752 (in bits) (by +256 bits)
'long int snd_soc_card::pmdown_time' offset changed from 2560 to 2816 (in bits) (by +256 bits)
'snd_soc_dai_link* snd_soc_card::dai_link' offset changed from 2624 to 2880 (in bits) (by +256 bits)
'int snd_soc_card::num_links' offset changed from 2688 to 2944 (in bits) (by +256 bits)
'list_head snd_soc_card::dai_link_list' offset changed from 2752 to 3008 (in bits) (by +256 bits)
'int snd_soc_card::num_dai_links' offset changed from 2880 to 3136 (in bits) (by +256 bits)
'list_head snd_soc_card::rtd_list' offset changed from 2944 to 3200 (in bits) (by +256 bits)
'int snd_soc_card::num_rtd' offset changed from 3072 to 3328 (in bits) (by +256 bits)
'snd_soc_codec_conf* snd_soc_card::codec_conf' offset changed from 3136 to 3392 (in bits) (by +256 bits)
'int snd_soc_card::num_configs' offset changed from 3200 to 3456 (in bits) (by +256 bits)
'snd_soc_aux_dev* snd_soc_card::aux_dev' offset changed from 3264 to 3520 (in bits) (by +256 bits)
'int snd_soc_card::num_aux_devs' offset changed from 3328 to 3584 (in bits) (by +256 bits)
'list_head snd_soc_card::aux_comp_list' offset changed from 3392 to 3648 (in bits) (by +256 bits)
'const snd_kcontrol_new* snd_soc_card::controls' offset changed from 3520 to 3776 (in bits) (by +256 bits)
'int snd_soc_card::num_controls' offset changed from 3584 to 3840 (in bits) (by +256 bits)
'const snd_soc_dapm_widget* snd_soc_card::dapm_widgets' offset changed from 3648 to 3904 (in bits) (by +256 bits)
'int snd_soc_card::num_dapm_widgets' offset changed from 3712 to 3968 (in bits) (by +256 bits)
'const snd_soc_dapm_route* snd_soc_card::dapm_routes' offset changed from 3776 to 4032 (in bits) (by +256 bits)
'int snd_soc_card::num_dapm_routes' offset changed from 3840 to 4096 (in bits) (by +256 bits)
'const snd_soc_dapm_widget* snd_soc_card::of_dapm_widgets' offset changed from 3904 to 4160 (in bits) (by +256 bits)
'int snd_soc_card::num_of_dapm_widgets' offset changed from 3968 to 4224 (in bits) (by +256 bits)
'const snd_soc_dapm_route* snd_soc_card::of_dapm_routes' offset changed from 4032 to 4288 (in bits) (by +256 bits)
'int snd_soc_card::num_of_dapm_routes' offset changed from 4096 to 4352 (in bits) (by +256 bits)
'bool snd_soc_card::fully_routed' offset changed from 4128 to 4384 (in bits) (by +256 bits)
'work_struct snd_soc_card::deferred_resume_work' offset changed from 4160 to 4416 (in bits) (by +256 bits)
'list_head snd_soc_card::component_dev_list' offset changed from 4416 to 4672 (in bits) (by +256 bits)
'list_head snd_soc_card::widgets' offset changed from 4544 to 4800 (in bits) (by +256 bits)
'list_head snd_soc_card::paths' offset changed from 4672 to 4928 (in bits) (by +256 bits)
'list_head snd_soc_card::dapm_list' offset changed from 4800 to 5056 (in bits) (by +256 bits)
'list_head snd_soc_card::dapm_dirty' offset changed from 4928 to 5184 (in bits) (by +256 bits)
'list_head snd_soc_card::dobj_list' offset changed from 5056 to 5312 (in bits) (by +256 bits)
'snd_soc_dapm_context snd_soc_card::dapm' offset changed from 5184 to 5440 (in bits) (by +256 bits)
'snd_soc_dapm_stats snd_soc_card::dapm_stats' offset changed from 5952 to 6208 (in bits) (by +256 bits)
'snd_soc_dapm_update* snd_soc_card::update' offset changed from 6080 to 6336 (in bits) (by +256 bits)
'u32 snd_soc_card::pop_time' offset changed from 6144 to 6400 (in bits) (by +256 bits)
'void* snd_soc_card::drvdata' offset changed from 6208 to 6464 (in bits) (by +256 bits)
35 impacted interfaces:
function int devm_snd_soc_register_card(device*, snd_soc_card*)
function int devm_snd_soc_register_component(device*, const snd_soc_component_driver*, snd_soc_dai_driver*, int)
function int snd_soc_add_component_controls(snd_soc_component*, const snd_kcontrol_new*, unsigned int)
function void snd_soc_card_change_online_state(snd_soc_card*, int)
function snd_kcontrol* snd_soc_card_get_kcontrol(snd_soc_card*, const char*)
function int snd_soc_card_jack_new(snd_soc_card*, const char*, int, snd_soc_jack*, snd_soc_jack_pin*, unsigned int)
function int snd_soc_component_disable_pin(snd_soc_component*, const char*)
function int snd_soc_component_force_enable_pin(snd_soc_component*, const char*)
function void snd_soc_component_init_regmap(snd_soc_component*, regmap*)
function unsigned int snd_soc_component_read32(snd_soc_component*, unsigned int)
function int snd_soc_component_set_sysclk(snd_soc_component*, int, int, unsigned int, int)
function int snd_soc_component_update_bits(snd_soc_component*, unsigned int, unsigned int, unsigned int)
function int snd_soc_component_write(snd_soc_component*, unsigned int, unsigned int)
function int snd_soc_dai_get_channel_map(snd_soc_dai*, unsigned int*, unsigned int*, unsigned int*, unsigned int*)
function int snd_soc_dai_set_channel_map(snd_soc_dai*, unsigned int, unsigned int*, unsigned int, unsigned int*)
function int snd_soc_dai_set_fmt(snd_soc_dai*, unsigned int)
function int snd_soc_dai_set_pll(snd_soc_dai*, int, int, unsigned int, unsigned int)
function int snd_soc_dai_set_sysclk(snd_soc_dai*, int, unsigned int, int)
function int snd_soc_dai_set_tdm_slot(snd_soc_dai*, unsigned int, unsigned int, int, int)
function int snd_soc_dapm_add_routes(snd_soc_dapm_context*, const snd_soc_dapm_route*, int)
function int snd_soc_dapm_ignore_suspend(snd_soc_dapm_context*, const char*)
function snd_soc_dapm_widget* snd_soc_dapm_kcontrol_widget(snd_kcontrol*)
function int snd_soc_dapm_mixer_update_power(snd_soc_dapm_context*, snd_kcontrol*, int, snd_soc_dapm_update*)
function int snd_soc_dapm_mux_update_power(snd_soc_dapm_context*, snd_kcontrol*, int, soc_enum*, snd_soc_dapm_update*)
function int snd_soc_dapm_new_controls(snd_soc_dapm_context*, const snd_soc_dapm_widget*, int)
function int snd_soc_dapm_new_widgets(snd_soc_card*)
function int snd_soc_dapm_sync(snd_soc_dapm_context*)
function void snd_soc_jack_report(snd_soc_jack*, int, int)
function int snd_soc_of_get_dai_link_codecs(device*, device_node*, snd_soc_dai_link*)
function int snd_soc_of_parse_audio_routing(snd_soc_card*, const char*)
function int snd_soc_of_parse_card_name(snd_soc_card*, const char*)
function int snd_soc_register_component(device*, const snd_soc_component_driver*, snd_soc_dai_driver*, int)
function snd_soc_component* snd_soc_rtdcom_lookup(snd_soc_pcm_runtime*, const char*)
function int snd_soc_unregister_card(snd_soc_card*)
function snd_soc_component* soc_find_component(const device_node*, const char*)
'struct task_struct at sched.h:635:1' changed:
type size changed from 27648 to 28672 (in bits)
2 data member insertions:
'mm_event_task task_struct::mm_event[7]', at offset 15936 (in bits) at sched.h:976:1
'unsigned long int task_struct::next_period', at offset 16832 (in bits) at sched.h:977:1
there are data member changes:
'void* task_struct::journal_info' offset changed from 15936 to 16896 (in bits) (by +960 bits)
'bio_list* task_struct::bio_list' offset changed from 16000 to 16960 (in bits) (by +960 bits)
'blk_plug* task_struct::plug' offset changed from 16064 to 17024 (in bits) (by +960 bits)
'reclaim_state* task_struct::reclaim_state' offset changed from 16128 to 17088 (in bits) (by +960 bits)
'backing_dev_info* task_struct::backing_dev_info' offset changed from 16192 to 17152 (in bits) (by +960 bits)
'io_context* task_struct::io_context' offset changed from 16256 to 17216 (in bits) (by +960 bits)
'unsigned long int task_struct::ptrace_message' offset changed from 16320 to 17280 (in bits) (by +960 bits)
'siginfo_t* task_struct::last_siginfo' offset changed from 16384 to 17344 (in bits) (by +960 bits)
'task_io_accounting task_struct::ioac' offset changed from 16448 to 17408 (in bits) (by +960 bits)
'unsigned int task_struct::psi_flags' offset changed from 16960 to 17920 (in bits) (by +960 bits)
'u64 task_struct::acct_rss_mem1' offset changed from 17024 to 17984 (in bits) (by +960 bits)
'u64 task_struct::acct_vm_mem1' offset changed from 17088 to 18048 (in bits) (by +960 bits)
'u64 task_struct::acct_timexpd' offset changed from 17152 to 18112 (in bits) (by +960 bits)
'nodemask_t task_struct::mems_allowed' offset changed from 17216 to 18176 (in bits) (by +960 bits)
'seqcount_t task_struct::mems_allowed_seq' offset changed from 17280 to 18240 (in bits) (by +960 bits)
'int task_struct::cpuset_mem_spread_rotor' offset changed from 17312 to 18272 (in bits) (by +960 bits)
'int task_struct::cpuset_slab_spread_rotor' offset changed from 17344 to 18304 (in bits) (by +960 bits)
'css_set* task_struct::cgroups' offset changed from 17408 to 18368 (in bits) (by +960 bits)
'list_head task_struct::cg_list' offset changed from 17472 to 18432 (in bits) (by +960 bits)
'robust_list_head* task_struct::robust_list' offset changed from 17600 to 18560 (in bits) (by +960 bits)
'compat_robust_list_head* task_struct::compat_robust_list' offset changed from 17664 to 18624 (in bits) (by +960 bits)
'list_head task_struct::pi_state_list' offset changed from 17728 to 18688 (in bits) (by +960 bits)
'futex_pi_state* task_struct::pi_state_cache' offset changed from 17856 to 18816 (in bits) (by +960 bits)
'perf_event_context* task_struct::perf_event_ctxp[2]' offset changed from 17920 to 18880 (in bits) (by +960 bits)
'mutex task_struct::perf_event_mutex' offset changed from 18048 to 19008 (in bits) (by +960 bits)
'list_head task_struct::perf_event_list' offset changed from 18304 to 19264 (in bits) (by +960 bits)
'callback_head task_struct::rcu' offset changed from 18432 to 19392 (in bits) (by +960 bits)
'tlbflush_unmap_batch task_struct::tlb_ubc' offset changed from 18432 to 19392 (in bits) (by +960 bits)
'pipe_inode_info* task_struct::splice_pipe' offset changed from 18560 to 19520 (in bits) (by +960 bits)
'page_frag task_struct::task_frag' offset changed from 18624 to 19584 (in bits) (by +960 bits)
'int task_struct::nr_dirtied' offset changed from 18752 to 19712 (in bits) (by +960 bits)
'int task_struct::nr_dirtied_pause' offset changed from 18784 to 19744 (in bits) (by +960 bits)
'unsigned long int task_struct::dirty_paused_when' offset changed from 18816 to 19776 (in bits) (by +960 bits)
'u64 task_struct::timer_slack_ns' offset changed from 18880 to 19840 (in bits) (by +960 bits)
'u64 task_struct::default_timer_slack_ns' offset changed from 18944 to 19904 (in bits) (by +960 bits)
'unsigned long int task_struct::trace' offset changed from 19008 to 19968 (in bits) (by +960 bits)
'unsigned long int task_struct::trace_recursion' offset changed from 19072 to 20032 (in bits) (by +960 bits)
'mem_cgroup* task_struct::memcg_in_oom' offset changed from 19136 to 20096 (in bits) (by +960 bits)
'gfp_t task_struct::memcg_oom_gfp_mask' offset changed from 19200 to 20160 (in bits) (by +960 bits)
'int task_struct::memcg_oom_order' offset changed from 19232 to 20192 (in bits) (by +960 bits)
'unsigned int task_struct::memcg_nr_pages_over_high' offset changed from 19264 to 20224 (in bits) (by +960 bits)
'mem_cgroup* task_struct::active_memcg' offset changed from 19328 to 20288 (in bits) (by +960 bits)
'request_queue* task_struct::throttle_queue' offset changed from 19392 to 20352 (in bits) (by +960 bits)
'uprobe_task* task_struct::utask' offset changed from 19456 to 20416 (in bits) (by +960 bits)
'int task_struct::pagefault_disabled' offset changed from 19520 to 20480 (in bits) (by +960 bits)
'task_struct* task_struct::oom_reaper_list' offset changed from 19584 to 20544 (in bits) (by +960 bits)
'vm_struct* task_struct::stack_vm_area' offset changed from 19648 to 20608 (in bits) (by +960 bits)
'atomic_t task_struct::stack_refcount' offset changed from 19712 to 20672 (in bits) (by +960 bits)
'void* task_struct::security' offset changed from 19776 to 20736 (in bits) (by +960 bits)
'thread_struct task_struct::thread' offset changed from 19840 to 20864 (in bits) (by +1024 bits)
1576 impacted interfaces:
'struct vb2_queue at videobuf2-core.h:509:1' changed:
type size changed from 4480 to 6528 (in bits)
there are data member changes:
type 'vb2_buffer*[32]' of 'vb2_queue::bufs' changed:
type name changed from 'vb2_buffer*[32]' to 'vb2_buffer*[64]'
array type size changed from 2048 to 4096
array type subrange 1 changed length from 32 to 64
and size changed from 2048 to 4096 (in bits) (by +2048 bits)
'unsigned int vb2_queue::num_buffers' offset changed from 3648 to 5696 (in bits) (by +2048 bits)
'list_head vb2_queue::queued_list' offset changed from 3712 to 5760 (in bits) (by +2048 bits)
'unsigned int vb2_queue::queued_count' offset changed from 3840 to 5888 (in bits) (by +2048 bits)
'atomic_t vb2_queue::owned_by_drv_count' offset changed from 3872 to 5920 (in bits) (by +2048 bits)
'list_head vb2_queue::done_list' offset changed from 3904 to 5952 (in bits) (by +2048 bits)
'spinlock_t vb2_queue::done_lock' offset changed from 4032 to 6080 (in bits) (by +2048 bits)
'wait_queue_head_t vb2_queue::done_wq' offset changed from 4096 to 6144 (in bits) (by +2048 bits)
'vb2_fileio_data* vb2_queue::fileio' offset changed from 4352 to 6400 (in bits) (by +2048 bits)
'vb2_threadio_data* vb2_queue::threadio' offset changed from 4416 to 6464 (in bits) (by +2048 bits)
11 impacted interfaces:
function void vb2_buffer_done(vb2_buffer*, vb2_buffer_state)
function int vb2_dqbuf(vb2_queue*, v4l2_buffer*, bool)
function void vb2_ops_wait_finish(vb2_queue*)
function void vb2_ops_wait_prepare(vb2_queue*)
function void* vb2_plane_vaddr(vb2_buffer*, unsigned int)
function int vb2_qbuf(vb2_queue*, v4l2_buffer*)
function int vb2_queue_init(vb2_queue*)
function void vb2_queue_release(vb2_queue*)
function int vb2_reqbufs(vb2_queue*, v4l2_requestbuffers*)
function int vb2_streamoff(vb2_queue*, v4l2_buf_type)
function int vb2_streamon(vb2_queue*, v4l2_buf_type)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I6cdab914de16705a40fec93379ba697d0d6566db
It appears that the clang version we were using when we first introduced
build.config.allmodconfig had issues with XFS_FS, so 884416f517
("ANDROID: create build.configs for allmodconfig") made sure to disable
it.
Now that ACK uses an updated clang, attempt to re-enable that option.
Bug: 140224784
Bug: 140490203
Test: allmodconfig build for x86_64 and arm64
Fixes: 884416f517 ("ANDROID: create build.configs for allmodconfig")
Signed-off-by: Quentin Perret <qperret@google.com>
Change-Id: Iffdaaedb67162515af3b60ec62efd8f947ce17f2
[nc: Also drop comment, unlike the android-mainline version]
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Add support for creating device links out of more DT properties.
Cc: MyungJoo Ham <myungjoo.ham@samsung.com>
Cc: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Saravana Kannan <saravanak@google.com>
Signed-off-by: Rob Herring <robh@kernel.org>
(cherry picked from commit 78056e701c
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next)
Signed-off-by: Saravana Kannan <saravanak@google.com>
Change-Id: I65ca9efd8d8dde2c366dd7ec99e4e7d03f3735e7
mm_event feature exports mm_event_count function and adds new fields
in the task_struct. Fix ABI diffs by adding the necessary padding.
Bug: 80168800
Bug: 116825053
Bug: 153442668
Test: boot
Change-Id: I4e69c994f47402766481c58ab5ec2071180964b8
Signed-off-by: Minchan Kim <minchan@google.com>
(cherry picked from commit 04ff5ec537a5f9f546dcb32257d8fbc1f4d9ca2d)
Signed-off-by: Martin Liu <liumartin@google.com>
[surenb: cherry picked and trimmed the original patch to include only
necessary changes to resolve ABI diff for task_struct and
mm_event_count, changed enum mm_event_type to contain the final
members]
Bug: 149182139
Test: build and boot
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Iacdba61298ba15fc71b46e0323b4160f174300b7
New nr_ion_heap and nr_ion_heap_pool fields in vmstat file cause ABI
differences. Fix them by adding the fields.
Bug: 110330255
Bug: 130198686
Bug: 153442668
Test: boot
Signed-off-by: Minchan Kim <minchan@google.com>
(cherry picked from commit 8f76a3ed2a76492deba9edebc990cac3b32f78be)
Signed-off-by: Martin Liu <liumartin@google.com>
[surenb: cherry picked and trimmed the original patch to include only
necessary changes to resolve ABI diff for node_stat_item enum]
Bug: 149182139
Test: build and boot
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I82b43bd3d94b950bd266aa53a3794182604a52d0
This makes sure that phy consumer devices don't unnecessarily try to
probe before phys supplier devices
Bug: 153389865
Signed-off-by: Saravana Kannan <saravanak@google.com>
Change-Id: I59623500f0697d60ffd79640d6a7bd0c27787a3c
This is a partial cherry-pick of the original commit.
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Bug: 154275330
(cherry picked from commit 62523500193e11a8837d4c76ef4a42be2ca4ea0f)
Signed-off-by: Saravana Kannan <saravanak@google.com>
Change-Id: Ibd407f59deab4b5bd655a71f938f79cffe1a5021
This is a partial cherry-pick of just the header changes.
change-Id: Ib1e18a8d40301c553efe0919e11c89ad87d9cfca
Signed-off-by: Udipto Goswami <ugoswami@codeaurora.org>
Bug: 154275330
(cherry picked from commit b1caa8095292da59320a24ee5e9f470af2d0aad4)
Signed-off-by: Saravana Kannan <saravanak@google.com>
This is a partial cherry-pick of just the header changes.
Change-Id: I9f349baa5878f7f2a696dc52f048ead54a831c05
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Bug: 154275330
(cherry picked from commit 5a5e9243e049f05dfa9610a77c4f43c4eddddc64)
Signed-off-by: Saravana Kannan <saravanak@google.com>
Needed for vendors. Do not add to android-5.4+
Change-Id: I3d5df20bab8504938b4b6c958c75e04490ddf543
Signed-off-by: Will McVicker <willmcvicker@google.com>
Signed-off-by: Saravana Kannan <saravanak@google.com>
Bug: 154267716
Test: compile
Partial cherry picked from commit 5cb59eb5283f6f5a900c3c4971f7efbd83b7e43a
("qcom: Fix compile issue when setting msm_lmh_dcvs as a module")
adjusted: kernel/trace/power-traces.c
skipped: drivers/thermal/qcom/lmh_dbg.h
drivers/thermal/qcom/msm_lmh_dcvs.c
Export the trace symbol -- clock_set_rate -- for the msm_lmh_dcvs
driver.
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: Ic68bc07997d73ba55f9ba7deff7dc7eef320e4bf
(cherry picked from commit 5cb59eb5283f6f5a900c3c4971f7efbd83b7e43a)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154153737
Allow platform drivers to register with CPU cooling with their frequency
mitigation functions. This allows the platform drivers to provide the
callbacks to get the current ceil limit and to set the floor and ceil
limits for the cpu.
Change-Id: I47960b002bf1bce1cd588de2892de46793a95562
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
(cherry picked from commit 986fde1710c194bede83bf62eb542e6f05af3886)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154153737
While playback and capture is done concurrently the dapm widget
data is accessed parallelly which results in data corruption and
kernel panic. Fix this problem by serializing the stream event
operation by adding lock
dapm_seq_run will invoke dapm power sequence for pre-sorted list
of widgets to be powered up. Kernel panic issue is observed
during stability runs with the above sequence caused by null
pointer dereference in dapm_seq_run_coalesced. Fix kernel panic
issue by checking for valid snd_soc_dapm_context pointer in
dapm_seq_run before invoking dapm_seq_run_coalesced
Widget list in dapm is getting corrupted during concurrent
use cases where dapm_power_widget is accessed. This corruption
is resulting in kernel crash in dapm. Fix the issue by adding
protection in dapm_power_widgets API.
This change also squashes the below changes-
(1)
ASoC: dapm: fix race condition in dapm
Dirty widget list can be accessed by multiple paths
in dapm framework. Dirty list is protected by dapm mutex.
Since dapm_force_enable_pin function accesses the dirty
list, protect it using the dapm mutex.
(2)
soc-dapm: Fix double mutex lock
dapm_mutex lock is acquired from soc_dapm_force_enable_pin_unlocked
function which will cause double lock because the same mutex is
acquired in soc_dapm_force_enable_pin(). Fix this issue by removing
dapm_mutex acquire from soc_dapm_force_enable_pin_unlocked function.
CRs-Fixed: 388785
Test: build
Bug: 151372815
Change-Id: I49d19860277726cf3152e104ab40627fd56c021c
Signed-off-by: Sriranjan Srikantam <cssrika@codeaurora.org>
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
(cherry picked from commit 853ed7c58fd03dd1b024f30a20f69a8df06cceed)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
Microphone2 and SND_JACK_BTN_5 enum are same, resulting
in SND_JACK_BTN_5 event getting triggered when ANC headset
is plugged into the device.
Use unique values in sound jack type enum.
Test: build
Bug: 151372815
Change-Id: I668e50afcad11b1f62f511f4241f79bad858c7d2
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
(cherry picked from commit ce59edee66bf7ce6ea7d0baee51c2cbd18685521)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
ALSA jack framework currently supports reporting only
one single microphone. Add support to report presence of
the second microphone to userspace.
Test: build
Bug: 149430094
Change-Id: I72d16892f2fa563c026bf90d847d9365dcf2233a
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
(cherry picked from commit b071d2a1b2a52b1f13ae14769e473f1ee4f66702)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
Change adds support for jack switch types supported
by platform.
This change also squashes the below changes-
include: increase allowed SW INPUT device ID from 15 to 32
Increase the Input device SW ID from 15 to 32. This is needed
to accommodate more input devices.
Test: build
Bug: 149430094
Change-Id: If77f8b37b4db72ada2b5d8a3095265eef90ab62b
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
(cherry picked from commit 3e70a3037a39604d697282be829845a63dce191d)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
Change updates the jack types that will be supported
by the platforms.
Test: build
Bug: 151372815
Change-Id: I948c6ffe4cc2cadd710242637c625006715ff7cc
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
(cherry picked from commit e7fcc54d6dd81ea5d24ac01202ace1738026a3ba)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
Add support for USB atomic notifier callbacks when host controller
drivers reports death of controller on some fatal error.
Current implementation doesn't help to recover from this condition.
Controller platform drivers can register for this callback and take
necessary steps to reset and add hcd again.
Bug: 152001148
Test: Builds
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
(cherry picked from commit b31fc5d2047a5f62e3044e4862994fa07fcaf959)
Signed-off-by: Sandeep Patil <sspatil@google.com>
Change-Id: Ie9064e669424096fee8c35cddccab29faf60cc6b
Signed-off-by: Will McVicker <willmcvicker@google.com>
Few userspace clients and drivers need more frames and
hence increase video max frame number from 32 to 64.
Bug: 143356419
Change-Id: Ib5394b7b71d75177234333dae23ec30fea01450f
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
(cherry picked from commit e81694723a)
Bug: 154168148
Signed-off-by: Connor O'Brien <connoro@google.com>
Many nvmem providers are not very keen on having default sysfs
nvmem entry, as most of the usecases for them are inside kernel
itself. And in some cases read/writes to some areas in nvmem are
restricted and trapped at secure monitor level, so accessing them
from userspace would result in board reboots.
This patch adds new NVMEM_SYSFS Kconfig to make binary sysfs entry
an optional one. This provision will give more flexibility to users.
This patch also moves existing sysfs code to a new file so that its
not compiled in when its not really required.
Bug: 154188491
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Gaurav Kohli <gkohli@codeaurora.org>
Tested-by: Gaurav Kohli <gkohli@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ae0c2d7255)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: resolved trivial merge conflicts]
Change-Id: I648edb8d43fc7c2437c415b999c41657a6d11554
Add new structs and routines allowing users to define nvmem cells from
machine code. This global list of entries is parsed when a provider
is registered and cells are associated with the relevant nvmem_device
struct.
A possible improvement for the future is to allow users to register
cell tables after the nvmem provider has been registered by updating
the cell list at each call to nvmem_(add|del)_cell_table().
Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit b985f4cba6)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: fix trivial merge conflicts]
Change-Id: I4070c4c5d12aa9f555e55ec1f5edccee6395ca7b
Nvmem subsystem keeps a global list of cells that, for non-DT systems,
can only be referenced by cell name, which makes it impossible to have
more than one nvmem device with cells named the same.
This patch makes every nvmem device the owner of the list of its cells.
This effectively removes the support for non-DT systems, but it will
be reintroduced following a different approach in subsequent patches.
This isn't a problem as support for board files in nvmem is currently
broken anyway: any user that would try to get an nvmem cell from the
global cell list would remove the cell after the calling
nvmem_cell_put(). This can cause anything from a subsequent user not
being able to get the cell to double free errors if more users hold
reference to the same cell at the same time.
Fortunately there are no such users which allows us to rework this part.
Bug: 154188491
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit c7235ee3f4)
Signed-off-by: Will McVicker <willmcvicker@google.com>
[willmcvicker: fix trivial merge conflicts]
Change-Id: Ibedab956757f5eb94c3c6ff3a1476121624a9234