Commit graph

798893 commits

Author SHA1 Message Date
Daniel Mentz
8a744ca663 ANDROID: drm/dsi: Fix byte order of DCS set/get brightness
The MIPI DCS specification demands that brightness values are sent in
big endian byte order. It also states that one parameter (i.e. one byte)
shall be sent/received for 8 bit wide values, and two parameters shall
be used for values that are between 9 and 16 bits wide.

Bug: 139263611
Bug: 139107810
Change-Id: I24306e21ec6a5ff48ea121d977419a81d5b44152
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Signed-off-by: Wilson Sung <wilsonsung@google.com>
(cherry picked from commit 3c373bfd83fd686390ea60a032ff876242c71d49)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:55 -07:00
Hridya Valsaraju
7e7f454531 ANDROID: GKI: mm: Export symbols to modularize CONFIG_MSM_DRM
These symbols are required to modularize the display drivers.

Bug: 141888346
Change-Id: Iedff789423cabf1d207ffffaba7d7bc574fc83cd
Signed-off-by: Hridya Valsaraju <hridya@google.com>
(cherry picked from commit 3d473101c9fb3f734c1be30ff17b8ad46bb1b568)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:55 -07:00
Meng Wang
209a4825b3 ANDROID: GKI: ALSA: compress: Add support to send codec specific data
Codec specific  metadata is sent only for first stream in gapless
playback. This causes incorrect configuration to be set for second
stream and distortions are observed due to framedrops in adsp.
Add support to send codec specific format during start of
next stream in gapless using set_next_track_param.

Change-Id: Ieec6b2afedec156e47873efcad9b3571160b0a29
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Signed-off-by: Alexy Joseph <alexyj@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit acff8e6a3c)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:55 -07:00
Eric Laurent
992ef3b1c8 ANDROID: GKI: ALSA: Compress - dont use lock for all ioctls
Some simple ioctls like timsetamp query, capabities query can be
done anytime and should not be under the stream lock. Move these to
snd_compress_simple_iotcls() which is invoked without lock held.

While at it, improve readblity a bit by sprinkling some empty lines.

Change-Id: Icc8ffdadd565c635f6a95e7e5bdda76257f24ea3
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Eric Laurent <elaurent@google.com>
Git-commit: 6a44374b8b92e9946dc1e5c15c2a11003aa859b1
Git-repo: https://android.googlesource.com/kernel/msm
[dhakumar@codeaurora.org: resolved merge conflicts]
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
[bgoswami@codeaurora.org: resolved merge conflicts]
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 7e86bc28b7)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:55 -07:00
Asish Bhattacharya
2430e0237e ANDROID: GKI: ASoC: msm: qdsp6v2: add support for AMR_WB_PLUS offload
Add AMR_WB_PLUS to supported offload formats and send media
format block through compress driver.

Change-Id: I258dc05fd5b6442ef40a5d1d4538870c4ddcbe2e
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
Bug: 151372815
(cherry picked from commit a909cafb69)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:55 -07:00
Nidhisha Dhananjayan
2596dca52d ANDROID: GKI: msm: dolby: MAT and THD audiocodec name modification
Modified names of SND_AUDIOCODEC for THD and MAT
as per the standards.
SND_AUDIOCODEC_DLB_THD to SND_AUDIOCODEC_THD
SND_AUDIOCODEC_DLB_MAT to SND_AUDIOCODEC_MAT.

Change-Id: If03662774cf0ae3573ed98ed6b6de42a7589e358
Acked-by: Janamaddi Sravan Kumar <c_jsrava@qti.qualcomm.com>
Signed-off-by: Nidhisha Dhananjayan <nidhis@codeaurora.org>
Bug: 151372815
(cherry picked from commit 5992d8fae1)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Deeraj Soman
e221163705 ANDROID: GKI: asoc: msm: Add support for compressed perf mode
Add support for compressed perf mode.
Compressed perf mode configures the DSP in low latency
mode. In low latency mode, DSP have reduced buffer
size for faster operations. Above layers may pass
this flag for configuring the DSP in low latency
mode.

Change-Id: Ib291d0fb9921edbaf2466d44c87aeed3367aec67
Signed-off-by: Deeraj Soman <sdeeraj@codeaurora.org>
Bug: 151372815
(cherry picked from commit aec78f41d3)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Nidhisha Dhananjayan
e04046b0a3 ANDROID: GKI: msm: audio: support for gapless_pcm
snd_codec_option structure for gapless_pcm_playback.
This is used for updating the channels in gapless pcm
cases.

Change-Id: Id0d950f0f431e5d9fe2a8ccd5e5124a235b66f27
Acked-by: Janamaddi Sravan Kumar <c_jsrava@qti.qualcomm.com>
Signed-off-by: Nidhisha Dhananjayan <nidhis@codeaurora.org>
Bug: 151372815
(cherry picked from commit 4fc12e7fd8)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Nidhisha Dhananjayan
81e1224283 ANDROID: GKI: uapi: msm: dolby: Support for TrueHD and MAT decoders
Audio codec addition of MAT and TrueHD decoders for
decoding in DSP.

Change-Id: I049c1210d3600da723850bae1dd61b6ad4b3a78a
Acked-by: Janamaddi Sravan Kumar <c_jsrava@qti.qualcomm.com>
Signed-off-by: Nidhisha Dhananjayan <nidhis@codeaurora.org>
Bug: 151372815
(cherry picked from commit 0563121f3e)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Meng Wang
9dfd801016 ANDROID: GKI: ASoC: msm: qdsp6v2: Add TrueHD HDMI compress pass-though
Add TrueHD audio format for compressed HDMI pass-through

Change-Id: Id8a0b8c3a01c881ae284f13c2c0a36959c2413ac
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit cd79e0f7bc)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Dhanalakshmi Siddani
dee954b28b ANDROID: GKI: ALSA: compress: Add APTX format support in ALSA
Extend ALSA (Advanced Linux Sound Architecture) compress
to support APTX format.

CRs-Fixed: 1106128
Change-Id: I301c3fac1f0e267ca82f20a42437bae86a22413c
Signed-off-by: Dhanalakshmi Siddani <dsiddani@codeaurora.org>
Bug: 151372815
(cherry picked from commit 3aeaf95e8d)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
418114d1ce ANDROID: GKI: msm: qdsp6v2: Add timestamp support for compress capture
Add timestamp support for compress driver.
Modify ASM driver to read the buffer from predefined offset.

CRs-fixed: 1072067
Change-Id: I1c46befc223285495b3c0650e6c3eaae81f58771
Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit a0c23f9915)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
473ad5915d ANDROID: GKI: SoC: msm: Add support for meta data in compressed TX
There is a usecase where compressed data is sent over HDMI IN to
ADSP. The format of compressed is detected in ADSP and sent through
the meta data to compressed driver. Add support for meta data in
compressed TX for this use case.

Change-Id: Idbb18fe4a0ad828e9c2e9d7beec048b3cedf002d
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 3e34295e0d)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
9383e53071 ANDROID: GKI: ALSA: compress: Add DSD format support for ALSA
WCD934X audio codec supports playback of DSD (Direct
Stream Digital) format. Extend ALSA (Advanced Linux
Sound Architecture) compress to support DSD format.

CRs-Fixed: 1056422
Change-Id: Ifb06674c251335a1d8cec71931355dca4c0e012d
Signed-off-by: Preetam Singh Ranawat <apranawat@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 9fb80c87a2)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
ed8ba29c69 ANDROID: GKI: ASoC: msm: qdsp6v2: add support for ALAC and APE offload
Add ALAC and APE to supported offload formats and send media
format block for both formats through compress driver.

Change-Id: I22b7cf38684250d2f8d6f9aefcd43452bb18e7f9
Signed-off-by: Satya Krishna Pindiproli <satyak@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 040ab02c60)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Sudheer Papothi
5397ecb300 ANDROID: GKI: SoC: msm: Add compressed TX and passthrough support
There is use case that the HDMI input goes through MI2S
TX interface to ADSP. Add compressed TX support for
this use case.
Add support for compressed bitstream passthrough over HDMI
for DD/DDP contents.
Use compressed driver to support passthrough.

Change-Id: I92d0f301d44cc71c89de07cd60a4d20ce6f7913e
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@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>
Bug: 151372815
(cherry picked from commit ebb7ffe46b)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
03333fc86c ANDROID: GKI: ASoC: msm: qdsp6v2: Add FLAC in compress offload path
Add FLAC format in compress offload driver, and asm
module.

Change-Id: I818ace8397e761b1acff7f9b2eab6e0103ed78c8
Signed-off-by: Apurupa Pattapu <apurupa@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 02c08155fd)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:54 -07:00
Banajit Goswami
4e39276ff3 ANDROID: GKI: ASoC: msm: add support for different compressed formats
Add support for below compressed formats and features
 * DTS playback
 * PCM capture in Compressed driver
 * MP2 decoder
 * DTS_LBR Passthrough Support
 * Transcode from MP3, WMA to DTS compressed
 * Update compress audio params

Change-Id: I595e638da78cced02142f4ee430afb7357eb336c
Signed-off-by: Srikanth Uyyala <suyyala@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit ee29f1dd0f)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:53 -07:00
Banajit Goswami
07ac574f15 ANDROID: GKI: ASoC: msm: Update the encode option and sample rate
Populate the sample rate, encode option in wma config params.
WMA V9 and WMA Pro tunnel-mode supports are added to compressed
driver. It allows user-space application to decode WMA V9 and
WMA Pro audio stream through QDSP6.
Codec specific metadata is sent only for first stream in gapless
playback. This causes incorrect configuration to be set for second
stream and distortions are observed due to framedrops in adsp.
Add support to send codec specific format during start of
next stream in gapless.
Add bit rate to wma codec data structure as it can vary between
streams in gapless.

Change-Id: Ieeb9d302454d3935faa51cac77021e7c1d77012c
Signed-off-by: Aviral Gupta <aviralg@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Bug: 151372815
(cherry picked from commit 2315eec8b2)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:53 -07:00
Saravana Kannan
4d4eb9da60 ANDROID: GKI: Enable CONFIG_SND_VERBOSE_PROCFS in gki_defconfig
This is needed to reduce ABI diff for ALSA/soc modules.

Bug: 151372815
Change-Id: I1d8257946fa2f20d531ce0bc3595be023839b192
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:53 -07:00
Saravana Kannan
4907b9fe1e ANDROID: GKI: Add hidden CONFIG_SND_SOC_COMPRESS to gki_defconfig
This is needed to reduce ABI diff for ALSA/soc modules.

Bug: 151372815
Change-Id: Ia0a73bd28f94bdc4e8de31efc3b8e97b1156ab01
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:53 -07:00
Karthikeyan Mani
8c62976a01 ANDROID: GKI: ALSA: pcm: add locks for accessing runtime resource
Add spin lock to resolve race conditions while
accessing substream runtime resource.

Change-Id: I8db743303ceb50205d62adfc02caf6ecab635d47
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Bug: 151372815
(cherry picked from commit f5879f2128)
Signed-off-by: Saravana Kannan <saravanak@google.com>
2020-04-17 20:04:53 -07:00
Alistair Delva
8898725bba ANDROID: GKI: Update ABI for DRM changes
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
2020-04-18 01:37:02 +00:00
Alistair Delva
dec3fa208e ANDROID: GKI: Add drm_dp_send_dpcd_{read,write} accessor functions
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I36e093ddcc1e2645e05a2a683ac52bd2f629dc35
2020-04-18 01:36:52 +00:00
Alistair Delva
35acc5c9dd ANDROID: GKI: drm: Add drm_dp_mst_get_max_sdp_streams_supported accessor function
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Ic6f57de89c7632c50db95b2f5ce85db92e3d6935
2020-04-18 01:36:44 +00:00
Alistair Delva
0c5afac321 ANDROID: GKI: drm: Add drm_dp_mst_has_fec accessor function
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Ifcd858c35cb52cd2a3024dcb456e79f6214ab25a
2020-04-18 01:36:27 +00:00
Alistair Delva
b572376bed ANDROID: GKI: Add 'dsc_info' to struct drm_dp_mst_port
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
2020-04-18 01:36:13 +00:00
Hemant Kumar
27ac6136bc ANDROID: GKI: usb: Add support to handle USB SMMU S1 address
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 3e3d0ab182)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154042109
2020-04-18 00:27:45 +00:00
Hemant Kumar
52b86b23cc ANDROID: GKI: usb: Add helper APIs to return xhci phys addresses
This is a merge of two cherry picks for simplicity and reduction of
churn.

Cherry picked from commit 787b74a487
("usb: xhci: Add helper APIs to return xhci dma addresses")
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>

Cherry picked from commit b8360b2a98
("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 787b74a487)
(cherry picked from commit b8360b2a98)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154042109
Change-Id: I9fd1e95b00f2185b01374a46d7dff3182c3b3d78
2020-04-18 00:27:36 +00:00
Alistair Delva
28b5ef8f1c ANDROID: Add C protos for dma_buf/drm_prime get_uuid
Fixes I0599ce4cafee3dc705805c1ad97295bea264cfdf and
Ifb429e36ebbba9feead6fd1792fbefa9ca097f0c.

Bug: 153580313
Change-Id: Ia070392e45e8325dec53b51300d987b3f23f0920
Signed-off-by: Alistair Delva <adelva@google.com>
2020-04-17 23:15:12 +00:00
Alistair Delva
fdef3b7210 ANDROID: GKI: Make linux_banner a C pointer
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
2020-04-17 23:13:32 +00:00
Alistair Delva
adc90eb071 ANDROID: GKI: Add 'refresh_rate', 'id' to struct drm_panel_notifier
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I830e73760f541d149329ac04343d7afd335fcac9
2020-04-17 20:26:30 +00:00
Alistair Delva
a9b4dabcee ANDROID: GKI: Add 'i2c_mutex' to struct drm_dp_aux
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Icb5f818632d770b25ffe60286e30fa5179b72917
2020-04-17 20:26:22 +00:00
Alistair Delva
716aae82b8 ANDROID: GKI: Add 'checksum' to struct drm_connector
Resolves an abi diff.

Bug: 152417756
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: Ic6627d056eff40bb79a600d5ffb83ada78319c56
2020-04-17 20:26:13 +00:00
Alistair Delva
c4ea3263ea Revert "BACKPORT: drm: Add HDR source metadata property"
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
2020-04-17 20:26:06 +00:00
Alistair Delva
a295300648 Revert "BACKPORT: drm: Parse HDR metadata info from EDID"
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
2020-04-17 20:25:58 +00:00
Uma Shankar
e62dae58c8 ANDROID: drm: Add DP colorspace property
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
2020-04-17 20:25:17 +00:00
Alistair Delva
9ef33e9591 ANDROID: GKI: drm: Initialize display->hdmi when parsing vsdb
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>
2020-04-17 20:25:10 +00:00
Shashank Babu Chinta Venkata
c2392efab3 ANDROID: drivers: gpu: drm: add support to batch commands
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
2020-04-17 20:25:03 +00:00
Will McVicker
ef8eec5d3c ANDROID: ABI: update the qcom whitelist
These changes are based on the new msm serial driver.

Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 154153369
Change-Id: Iea008b29fc4ce78496638dbc22b1775ff6036659
2020-04-17 09:58:53 -07:00
Will McVicker
aa006282c8 ANDROID: GKI: ARM64: smp: add vendor field pending_ipi
This is added for ABI compatibility with vendors.

Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 140652396
Test: compile
Change-Id: Iac3f7c061db8a807586c565b40502bfc75195277
2020-04-17 09:58:53 -07:00
Will McVicker
4b7a673f59 ANDROID: gki_defconfig: enable msm serial early console
This is used for early console on qcom devices.

Signed-off-by: Will McVicker <willmcvicker@google.com>
Bug: 154153369
Test: compile
Change-Id: Iabf29261f36fd4c41a89491d49548c331ae19a3e
2020-04-17 09:58:48 -07:00
Mukesh Kumar Savaliya
3b328707cf ANDROID: serial: msm_geni_serial_console : Add Earlycon support
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>
2020-04-17 09:36:11 -07:00
Will McVicker
32d475905c ANDROID: GKI: serial: core: export uart_console_device
Needed for a modularized uart console driver.

Change-Id: Ia6e3c3a48e40ef9f9e7266b47498703218ef40d9
Bug: 154153369
Test: compile
Signed-off-by: Will McVicker <willmcvicker@google.com>
2020-04-17 09:36:08 -07:00
Greg Kroah-Hartman
d7a79add37 ANDROID: GKI: update abi definition due to previous changes in the tree
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
2020-04-17 15:06:36 +02:00
Quentin Perret
ae733f893d ANDROID: build.config.allmodconfig: Re-enable XFS_FS
It appears that the clang version we were using when we first introduced
build.config.allmodconfig had issues with XFS_FS, so 884416f5176a
("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: 884416f5176a ("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>
2020-04-17 08:41:31 +00:00
Saravana Kannan
43152c5b4f FROMGIT: of: property: Add device link support for extcon
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 78056e701c61132d15e0942e415926a6393fcf17
 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
2020-04-17 06:44:16 +00:00
Suren Baghdasaryan
bb45ae8608 ANDROID: GKI: arm64: gki_defconfig: enable CONFIG_MM_EVENT_STAT
Enable mm_event configuration.

Bug: 149182139
Test: build and boot
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I0f47cc7ec0413c52e2d5e7ef1f0d69a14e4151c2
2020-04-17 06:43:35 +00:00
Minchan Kim
14ede71790 ANDROID: GKI: add fields from per-process mm event tracking feature
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
2020-04-17 06:43:14 +00:00
Suren Baghdasaryan
c69ff7a87b ANDROID: GKI: fix ABI diffs caused by ION heap and pool vmstat additions
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
2020-04-17 06:43:05 +00:00