Add memory barrier for data syncronization before reading the TCSR
config register. The value written at Sub System is mismatching the
read back value at APPS.
Change-Id: I74862f6d8aa54a67988eca2fb9569e23cc89844a
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
To ensure the configs is optimized and workable for LV booting,
we need to refine the configs:
1. remove SWIOTLB_NONLINEAR and VIRTIO_MMIO_SWIOTLB as bounce
buffers are no longer used for LV GVM Virtio device.
2. disable ZONE_DMA, otherwise general SWIOTLB init will fail,
which causes kernel panic.
3. Set all modules as in-built.
Change-Id: If4fbf5ecf7391bc16e3d75b803444a67cc884e43
Signed-off-by: Wei Liu <quic_wliu8@quicinc.com>
Currently, both remoteproc and wdog driver panic handler has the
same priority due to which both gets registered one after the other.
Having the same priority breaks WDOG panic handler which should be
called as early as possible otherwise we will the devices gets
stuck if any of previous handlers gets stuck due to some reason
like sleep while atomic etc.,
Fix this by correcting the priorities as
dload_mode => INT_MAX
wdog => INT_MAX - 1
rproc => INT_MAX - 2
minidump => INT_MAX - 3
va-minidump => INT_MAX - 4, INT_MAX - 5 .
Change-Id: I79e454c7c671bbc83e5fac86e16717c3e09a06ce
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Signed-off-by: Srinivasarao Pathipati <quic_c_spathi@quicinc.com>
When FMD mode is enabled, deassert the perst signal if perst is already
in asserted state and do not allow it to be reasserted.
Change-Id: I45105f189214f683d718ab96a1db30cd2bc80667
Signed-off-by: Vivek Pernamitta <quic_vpernami@quicinc.com>
Signed-off-by: Paras Sharma <quic_parass@quicinc.com>
Make HW strobe signal level triggered instead of edge triggered for
external LEDs based on HW side recommendation.
Change-Id: I8c88646a252b58923c08bff0459c3f53a94f1bcd
Signed-off-by: Jishnu Prakash <quic_jprakash@quicinc.com>
According to Table No. 4 in HPG, the power-on reset must
be asserted for at least 10us after all supplies have ramped up.
Change-Id: I086ff86e50cf9846beb422901d61954ddcc47ff5
Signed-off-by: Uttkarsh Aggarwal <quic_uaggarwa@quicinc.com>
- Add support for loading gpucc-sm8150 in first stage init.
Change-Id: Icc42894ff33d4359fc92a0c84d29facca7ef4e16
Signed-off-by: Yash Jain <quic_yashmj@quicinc.com>
Currently i2c geni driver doesn't have null pointer check condition
in GSI error call back function. If any invalid error is coming from GSI,
i2c geni driver is accessing null pointer which is causing crash.
To solve this added null pointer checks in GSI call back error functions.
Change-Id: I5034bd01c3eb554109890eb071e9087a1dd7cbd6
Signed-off-by: Prasanna S <quic_prass@quicinc.com>
Enable khungtask enhancement for features like
black/while list, monitor iowait process, etc.
While at it, remove khungtask config from vendor
consolidate build as it is enabled for all builds
via gki.
Change-Id: I98e57379d8cb587163107a3b874b8be1cf966b46
Signed-off-by: Amrit Anand <quic_amrianan@quicinc.com>
Recently terminate sequence got updated for q2spi as per hpg.
Which is impacting other protocols and leading to regression.
To solve this terminate sequence added separately for q2spi,
rest all protocols will use older terminate sequence.
Change-Id: I00b6699e7fc1af533e29b732ede75ea03290b595
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
Currently in gpi_terminate_all function, we are performing reset
whenever stop channel failed for corresponding tx/rx channel but
we need to reset for both the channels and reprogram the channel
context and also performing gpi_noop operation on both tx and rx
channel if stop cmd is success.
Change-Id: Ia7811f5659b82674033d530b076255f581b91c74
Signed-off-by: Krishna Chaithanya Reddy G <quic_kgangapu@quicinc.com>
Currently in the gpi_process_xfer_compl_event() function, when an
unexpected error occurs on the RX channel, we free the TX channel
descriptor. This is followed by receiving a TX event, which results
in an event without a pending descriptor error. Consequently, we
return without updating the channel read pointer, leading to an
insufficient space in channel rings error.
So,updating the channel ring tx and rx read pointer when we get
error event without a pending descriptor.
Change-Id: I3ecbe915fa96e9e82a3a84751351242dc9314d71
Signed-off-by: Krishna Chaithanya Reddy G <quic_kgangapu@quicinc.com>
Currently i2c geni driver doesn't have null pointer check condition
in GSI error call back function. If any invalid error is coming from GSI,
i2c geni driver is accessing null pointer which is causing crash.
To solve this added null pointer checks in GSI call back error functions.
Change-Id: I5034bd01c3eb554109890eb071e9087a1dd7cbd6
Signed-off-by: Prasanna S <quic_prass@quicinc.com>
For i2c multi descriptor case when transfers ongoing,
sometimes we are getting nack from the slaves. In this case
i2c geni driver un mapping the buffers without gsi terminate.
In this scenario gsi hw is accessing unmapped buffers, which
is leading to smmu crash. To solve this added gsi error
check before buffer unmap, with this logic gsi terminate
sequence is followed by buffer unmap.
Change-Id: I67fab8352bbd8b66c5e6563984be89050d782f40
Signed-off-by: Krishna Chaithanya Reddy G <quic_kgangapu@quicinc.com>
Add first stage, systemdlkm blocklist and vendor blocklist modules
files for Neo LA platform.
Change-Id: I1ac9e4d56a4c4ac38f335c38ec282a9c4c767aee
Signed-off-by: Asit Shah <quic_asitshah@quicinc.com>
Add initial configs to generate the gki and consolidated variants of the
defconfigs meant to support the Neo LA target.
Change-Id: I94cb1d5d56fd3027e3d02a507217b3cbdc1b02a0
Signed-off-by: Venkata Talluri <quic_vtalluri@quicinc.com>
Signed-off-by: Asit Shah <quic_asitshah@quicinc.com>
Add snapshot of support of auto-resume WA for the revision of
repeaters that doesn't support the feature.
commit c5b632332b948 ("usb: phy: Enable auto-resume WA if
repeater doesn't support").
Change-Id: Ie0556bce34bbc2d321ed821c6beb7ba4a43f3ffd
Signed-off-by: Pratham Pratap <quic_ppratap@quicinc.com>
Signed-off-by: Shubham Chouhan <quic_schouhan@quicinc.com>
Fix the region register fail issue on Resource Manager VM when
client call minidump add region API. Variable 'md_init_done'
should be set as global type when used between two or more files.
Change-Id: I1ca57f7f58435ef0ca1db91317d2e6db7a22599a
Signed-off-by: Fei Yang <quic_feiyan@quicinc.com>
Unchecked dereferences that could potentially result
in a NULL pointer dereference have been removed.
Additionally, variable that had the potential to remain
uninitialized has been eliminated to protect the program
from unpredictable outcomes.
Change-Id: I715fdf846dd07b22b11d5ae0430020f6922fa559
Signed-off-by: Shashank Shekhar <quic_sshe@quicinc.com>
In some of the exit early conditions, the ret value is not overridden with
an error code. This would lead to a condition where the QMI response
status would be zero (success), while other fields are not properly
populated. The error condition in question is:
uaudio_err("invalid substream\n");
Address this by setting the ret value manually in case of an error
condition. This would allow for the audio DSP to treat the QMI response as
a failure versus attempting to continue processing it. The issue was
seen if the audio device is disconnected shortly after attempting to
start the audio session.
Change-Id: Ibf4198bb15ba490f665accba2f8459cfc4810b34
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Signed-off-by: Udipto Goswami <quic_ugoswami@quicinc.com>
As part of initial commit 'a0a208f93d57e4e8a5bb3d0529dd9caa9a4304fd
(serial: msm_geni_serial: Add SSR support for SSC QUPs")',
we are bailing out in spi_geni_prepare_message() and
spi_geni_unprepare_transfer_hardware() for LEVM usecase which is not
expected as xfer_prepared flag is set to false in
spi_geni_prepare_transfer_hardware().
If it is a LEVM usecase, set xfer_prepared flag to true in
spi_geni_prepare_transfer_hardware() and exit.
Change-Id: I7003e790b01b843535f1ca0efc6cd708d3e0cb28
Signed-off-by: Prasanna S <quic_prass@quicinc.com>
For i2c multi descriptor case when transfers ongoing,
sometimes we are getting nack from the slaves. In this case
i2c geni driver un mapping the buffers without gsi terminate.
In this scenario gsi hw is accessing unmapped buffers, which
is leading to smmu crash. To solve this added gsi error
check before buffer unmap, with this logic gsi terminate
sequence is followed by buffer unmap.
Change-Id: I67fab8352bbd8b66c5e6563984be89050d782f40
Signed-off-by: Krishna Chaithanya Reddy G <quic_kgangapu@quicinc.com>
class[0|1]_cpus[i] < num_possible_cpus() comparison can result
in wrong comparison if some of the cpu are disabled from
the firmware. Handle them properly via mentioning the class
cpus as phandles.
Change-Id: I83293ed8c93d3c55f7ce8a9697a2af2b89ecbd29
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Add support to enable EMAC driver for LA metal platform.
Change-Id: I6aeb44aa173d601a7794aebce50cb9143efedab9
Signed-off-by: Uppalamarthi Sowmya <quic_usowmya@quicinc.com>