In the GKI configuration, the arm-smmu-mod module will already
be present as a GKI module (i.e. the module will be generated from
the GKI ARM SMMU source). As such, there is no way to distinguish
between Qualcomm's ARM SMMU module, and the GKI ARM SMMU module,
since they have the same name. Thus, rename Qualcomm's ARM SMMU
module to distinguish between the two.
Change-Id: I6a41d3d518a800da4d560c8b8d2b8c48f1866d9a
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Some implementation's of the 'cat' command pass the
absolute position of the file-offset. In the current
implementation of 'regmap_data_read_file' this leads
to dumping all the registers from offset 0.
Avoid this by quitting the read loop if the file-offset
requested is lower than actual read-offset.
Change-Id: I7c6c31958e92f16387bf4cb5de7fbf4572fcce21
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
This patch fixes a NULL pointer dereference by checking
if vccq & vccq2 are valid before dereferencing it.
Change-Id: Ieb5aefab77428adbbbbf892f2be1a9942d7c3851
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Use the dev_iommu_fwspec_get() accessor, instead of directly
accessing the device structure for the IOMMU fwspec, as well
as remove an unnecessary forward declaration.
Change-Id: Id09202bd468bddbf8bdf194513fda34b59756fba
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
When the ARM SMMU module is unloaded, the exit routine does not
fully clean-up after the initialization routine, as it leaves
the TBU driver registered. Thus, unregister the TBU driver
when unloading the SMMU module.
Change-Id: I536f756dab7eebeffe0dd907629feed6657a2532
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
The remove() callback for the ARM SMMU driver should ensure
the SMMU devices that are being registered are no longer
visible to the IOMMU framework, so remove the devices
by invoking iommu_device_unregister().
Change-Id: I87dd7b4619e5b26b7eed64b04e3716f3b9c417c5
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
ipa_disable_apps_wan_cons_deaggr() has different declarations when
CONFIG_IPA or CONFIG_IPA3 are not set. Thus fix the declaration to
align with CONFIG_IPA or CONFIG_IPA3 enabled one.
Change-Id: Ic09cac2484c9cfbcd0833583c05c6fc19a3c2aed
Signed-off-by: Jia Ding <jiad@codeaurora.org>
This reverts commit 75afa532e7.
Too many things rely on cmd-db to be built in to allow it to
be built as a module.
Change-Id: I317ba89a7d3c9f88832e73834b65bcccac79bbe1
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
The ability to vote IPA clock from user space is now required. Given
this, voting for IPA clock can now be done via an ioctl. These changes
implement the ioctl.
Change-Id: Id7e02678e96da98f2a17f35e7f6736fba39ca990
CRs-Fixed: 2592003
Signed-off-by: Perry Randise <prandise@codeaurora.org>
The ability to vote IPA clock from user space is now required. Given
this, voting for IPA clock can now be done via an ioctl. This header
file supports the ioctl and can be independently propagated.
Change-Id: I742a7950f9fc53f17cb6f210f2b7f06ade842011
CRs-Fixed: 2592003
Signed-off-by: Perry Randise <prandise@codeaurora.org>
possibility of OOB access on device->response_pkt in
__response_handler. for e.x if msg queue contains 1000
messages and all 1000 were read and queue is empty.
So __get_q_size api will return zero and _iface_msgq_read
will go in an infinite loop, even if packet_count
== max_packets.
Change-Id: I8e64ff70d5bcefb52d66bfea121f3febf4728384
Signed-off-by: suchawla <suchawla@codeaurora.org>
Add usb streaming support to collect trace data externally.
Add support to enable USB mode for coresight devices.
Set memory as the default mode on ETR.
Change-Id: I3bd2bd92c676ff79a3ae5a045a54e7d1e867543d
Signed-off-by: Mulu He <muluhe@codeaurora.org>
Signed-off-by: Tingwei Zhang <tingweiz@qti.qualcomm.com>
Add support for PMIC7 ADC_TM peripheral in ADC_TM common driver files.
Add main ADC_TM driver file for PMIC7. As register offsets and SW flows
have changed significantly for ADC_TM due to ADC architecture change,
this new driver is required for ADC_TM on PMIC7.
Change-Id: I9c92ab0a93a1bf487cb9fa0e9640b3c4eaf2b21a
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
ADC_TM peripheral is used by client to set thresholds on channels
supported by VADC and send notification once set thresholds are
crossed. The driver registers thermistors used for thermal
mitigation with of_thermal to allow thermal driver to set
thresholds and receive notification through thermal sysfs.
This is a snapshot of the driver taken from msm-4.19 as of commit
f94ba33e3b90 ("Merge "usb: dwc3-msm: Fix GDSC collapse in host mode
bus suspend").
Change-Id: I9211552317955c503b7287876e11cd161c37f706
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
On uC debug stats, whenever uC provides the invalid protocol id,
we have to do the iounmap to prevent the leak.
Change-Id: I1360a04c5013657b5c9a051ee11d1a6cb5556915
Signed-off-by: Bojun Pan <bojunp@codeaurora.org>
Enable all of the configuration options related to memory
hotplug for the Lahaina target.
Change-Id: I1f39c5ee7ecdca18746f09fb2ee58b4c2de63602
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
After a memory block is offlined, the page-table entries should be removed
in order to avoid any CPU speculative accesses happening on this region.
Clear off the entries at the leaf levels (PUD or PMD) on a block mapped
memory region. This only zeroes the entries and does not free the page
table memory. During online, we create mappings again for these regions.
Change-Id: I71091c33589645567c60457ba569dd393ddcab59
Signed-off-by: Sudarshan Rajagopalan <sudaraja@codeaurora.org>
[isaacm@codeaurora.org: resolve merge conflicts]
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Currently we use a percentage property value to determine the amount of
offlinable memory in the system.
However a percentage property doesn't support accurately configuring the
offlinable region sizes on targets with different amounts of DDR.
For example it is not possible to configure the system such that 4GB
targets won't have any offlinable region, 6GB targets will have a 1GB
offlinable region and 8GB targets having a 3GB offlinable region without
creating a separate DT files for each target.
Many customers want to be able to support different DDR sizes without
creating separate DT files for each target.
Replace the mem-percent property with an offline-sizes property which
contains an array of offlinable memory region sizes to apply to targets
based on their DDR size.
Change-Id: I93210beec153ca0179c0087ce98afd4dfc22ea02
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Update the physical end address of available RAM in calculation
used for randomizing the memory base address base.
Change-Id: Id32260d5c15ec4363ab62755238a10cc4dfaabe8
Signed-off-by: Sudarshan Rajagopalan <sudaraja@codeaurora.org>
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
The system RAM region would not be ideally contiguous from
start to end of DRAM. Detect any offset/holes present in the
DDR region and update the memory limit being set, so that the
DRAM end address is aligned to the memory block size. This is
a requirement for mem-offline framework to work properly.
Change-Id: I97cb0cce70e7c414ae2d200a4a3f714d145c0e64
Signed-off-by: Sudarshan Rajagopalan <sudaraja@codeaurora.org>
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Add a new sysfs node called allocated_bytes to each memory block which
reports the amount of memory currently allocated from that block.
Userspace can then use the allocated_byes node to better evaluate the
potential cost of offlining an individual block since all the allocated
memory in the block will need to be migrated when the block is offlined.
Change-Id: I520de2dd56e4562a65c48e38edb1236a8cbce5fd
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Signed-off-by: Swathi Sridhar <swatsrid@codeaurora.org>
[isaacm@codeaurora.org: resolve merge conflicts]
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>