Currently the code subtracts busy time when a task is being migrated.
IOW migrate_busy_time_subtraction is called in set_task_cpu hook.
And the code adds busy time in an after-migration enqueue IOW
enqueue_after_migration is seen set in enqueue hook.
Both the above operations happen under the prev_cpu and next cpu rq
lock respt.
Now a task could exit or enter group after the migration and before
the enqueue i.e. transfer_busy_time could be called when
enqueue_after_migration is set. This could lead to -ve load bugs as
we have only subtracted the load and not added it.
To address this, complete the addition step in
transfer_busy_time() itself, prior to moving the busy time,
if a task is found to be migrating.
Change-Id: Ifa7a2b017763392431dfa5407ec9dbde76d90019
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
This driver provides the support to program the hardware of
Trace Noc component when enable the source which is connected to
Trace Noc. Trace NoC is a interconnect that is used
to collect trace from various subsystems and transport it
QDSS trace sink.
Change-Id: I70ebda4142be066bc15d8809d7ffe3bdbee10fb9
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
Enable the qti-fixed-regulator driver so that proxy consumer
voting and debug features may be used for fixed regulator
devices.
Change-Id: Ia7946a3d82f12b22463e5446a9540e27970c7679
Signed-off-by: David Collins <quic_collinsd@quicinc.com>
Enable CONFIG_QTI_PMIC_GLINK_CLIENT_DEBUG in pineapple-consolidate
defconfig so that debug features can be enabled in altmode-glink,
qti_battery_debug and qti_battery_charger drivers.
Change-Id: I2d0ef18d061237a256c008aa971096879141a5fa
Signed-off-by: Subbaraman Narayanamurthy <quic_subbaram@quicinc.com>
Enable PMIC Glink driver and its clients for pineapple to support
battery charging, Type-C, altmode and the drivers that help with
debugging them.
Change-Id: Ib386a198d9de3e441e2fce650beca44a5bdfd6e3
Signed-off-by: Subbaraman Narayanamurthy <quic_subbaram@quicinc.com>
Add inline function to fix compile issue when smem is called but not
enabled.
Change-Id: If31fc795fb5f42a1f221780d3d98e362766cca59
Signed-off-by: Cong Zhang <quic_congzhan@quicinc.com>
This is a snapshot of I3C GENI driver and associated file as of msm-5.15
'commit 9b48a7431cacec7 ("i3c: i3c-master-msm-geni: Fix DAA process
from GENI I3C master")'.
Change-Id: I5cead40609c9489bf60c23e49349171c25579fe6
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
This snapshot is taken as of msm-5.15 'commit 8faf434d5fa0
("serial: msm_geni_serial: Update logs in vote_clock_on &
vote_clock_off")'.
Change-Id: I69d602419e6e0cd2c1be349a141f7116134569f8
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
This is a snapshot of I2C GENI driver and associated files
as of msm-5.15 'commit d2769a2c9a5b1 ("i2c:i2c-msm-geni:
Updating last mark busy failure case")'.
Change-Id: I2993ee80034e46eb3413cdfd37d6a1256e45a338
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
This is a snapshot of SPI GENI driver and associated files
as of msm-5.15 'commit 086bf6b97b ("msm: spi: spi-msm-geni:
update icc bw voting values")'.
Change-Id: Idf37d8716d9619384bbb9de550b77f71645fa25f
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
This is a snapshot of MHI bus misc driver from msm-5.15
commit 1a84bdeed262 ("bus: mhi: core: Add snapshot
of MHI bus misc driver").
Change-Id: If606eee09983d27e291acb7fb85f268a1fe63cb2
Signed-off-by: Lazarus Motha <quic_lmotha@quicinc.com>
Currently, before configuring ADC/ADC_TM, we poll for HS_READY
bit to be set which has a max poll wait time of 2 ms. As per the
recent hardware guidelines, increase this to 15 ms as HS_READY
won't be set within 2 ms in some circumstances.
Change-Id: I1cafa5052c80c2ef9512e794afd7e01eb39a53f4
Signed-off-by: Subbaraman Narayanamurthy <quic_subbaram@quicinc.com>
Add null checks for the output of platform_get_resource_byname()
calls to avoid the possibility of a null pointer dereference.
Change-Id: I7499933f4b6971233a04730e3e1512949fd7540b
Signed-off-by: David Collins <quic_collinsd@quicinc.com>
Current code can end up accessing SOCINFO_PART_MAX_PARTTYPE
for partid in certain scenarios which isn't desired, correct the check.
Change-Id: Ida1ff23993d7dad93e5dd0635d3bfecac4c35201
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Add the macros and strings to recognize more feature codes.
Change-Id: I0a9a0b950bd951e350bbc7e34d78e257da916263
Signed-off-by: Lynus Vaz <quic_lvaz@quicinc.com>
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Socinfo need to provide pcode and feature string information
to client drivers.
Change-Id: I7a9ce09803ea855a94591ef85003a67b81a70230
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
[quic_gurus@quicinc.com: Fixed merge conflicts]
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Add the support to get the sku information from userspace.
Change-Id: I39b60fcc430308cd75e67fa400ad9515b5ad4b65
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
[quic_gurus@quicinc.com: Fixed trivial merge conflicts]
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Below are some new fields are getting updated in socinfo
structure from bootloader under revision 16.
e.g
esku;
nproduct_code;
npartnamemap_offset;
nnum_partname_mapping;
Add the change in socinfo driver to accommodate this.
Change-Id: I11b5182c15af32da61cddbf4bb45d5aef390135a
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
[quic_gurus@quicinc.com: Added missing break and fallthrough]
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Enable the QCOM Ramdump driver on pineapple platforms.
Change-Id: Ica92d8a605fdda7845d55a2766c31407be86a945
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
To add support for elf64 dumps phdr was converted to a void
pointer, but the logic to increment the phdr was not updated
accordingly. This change increments the address of phdr based
on the elf class.
Fixes: fc0253777c4c ('soc: qcom: ramdump: Add support for elf64 dumps')
Change-Id: I103835cfa1333aacfc8fe8ca3ae02dc84607a5cc
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
The qcom_elf_dump() API currently only supported elf32 dumps, but
the kernel is compiled as CONFIG_BIT64=y. This results in the
addresses in the elf header being truncated. This change adds
support to specify the class of the elf file to be generated.
Change-Id: I1b72a828df0b45978891ed6ba6261273200500b0
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
[quic_gurus@quicinc.com: Remove adsprpc.c; hasn't been ported yet]
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Freeing a completion after setting it to complete can be racy with
the thread that is waiting for completion. To avoid this race the
ramdump descriptor should remain on the stack so that we only "free"
the completion once wait_for_completion() returns.
Change-Id: Ice02260a4f91aa6cd107eb371601d9ed910fb6cf
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: Vamsi Krishna Lanka <quic_vamslank@quicinc.com>