Add build.config to support Kalama target.
Change-Id: Ib551207d415928370276adc7439fd9adb702f836
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Originally, the PID IMEM field was updated as part of the f_diag driver
instance. Since the f_diag, driver has been removed, relocate this logic
into DWC3 MSM. Once receiving the pullup enable call, the logic will look
up for the diag function, and if present handle writing the PID and device
serial number to IMEM. This removes the need for having userspace
update/trigger the IMEM update.
Change-Id: If6ba232270269001690b3cedd3d0de9bf2d4cebb
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Add snapshot of binding header files as of 'commit 8bc1219b2b23
("Merge "ARM: dts: qcom: Add hotplug mitigation for cpu TSENS
thermal zones"")' from msm-5.15/msm-5.15.
Change-Id: I07ab7223a35a05e1b7e1f84ffa652876f5b8f472
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
Enable CONFIG_QCOM_LLCC and CONFIG_QCOM_LLCC_PERFMON for pineapple SoCs.
Change-Id: Idd14fb819b3cef012d27080c889eeff297e68838
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Add LLCC configuration data for pineapple SoC.
Change-Id: I209ffd87bbd1a3881f624d5c324748f53582b6a0
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
Move OF node parsing for the DWC3 MSM and DWC3 core into its own APIs in an
effort to reduce code complexity for the DWC3 MSM probe API.
Change-Id: Ibd44dd4252286ee997a3508edff8582a7ecb8b78
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
This is a snapshot of hung_task_enh driver as of msm-5.15 commit
<5911da4cc369> (Merge "usb: phy: snps: Add support to vote/unvote
ref_clk").
Change-Id: Idfae06cec172254e5f18564fc5a042c1af506f84
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
Add public APIs that should have been ported along with
commit 7af068c1bf78 ("clk: qcom: clk-debug: Add snapshot
from msm-5.10").
Change-Id: I8a3b74b027da1e67375d77fa296be9bb9041dad9
Signed-off-by: Vivek Aknurwar <quic_viveka@quicinc.com>
Add debug cc measure nodes for Pineapple to support
debugfs clk measure.
Change-Id: Ibf46ee5c39c590dd88d5ba528156a0aa4061e02a
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
Add symbols needed for upstream ipcc driver to the symbol list.
Change-Id: I953cddbe08718b2f33c017a9e2e83e0e74308b73
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
Enable RPMh clock driver so consumers can vote for
actual RPMH clocks.
Change-Id: I3e1e10e930df46501bf95fbc2ac7a0e18391f667
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
Add clock rpmh data to communicate with RPMH clocks
for Pineapple.
Change-Id: I13bcf5623595e69addea70a52d902e15d9977550
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
We sometimes might want to ignore the SMMU global address space size
being reported to us in SMMU_IDR1.NUMPAGENDXB, and assume instead that
the TCU address space size we report in our device tree is equal twice
the size of the global address space (such that the context bank
address space and global address space are equal in size, with the
context bank address space taking the upper half). Using this
assumption, we can then use the DT-provided size (in the "reg ="
property) to determine the layout of the global and context bank
address spaces.
Define ARM_SMMU_OPT_IGNORE_NUMPAGENDXB to allow users to allow this
override to occur. Move the parse_driver_options() call earlier into
the probe process since we need to read the options earlier now.
Change-Id: I775cd40e1308da89b5d5e4b11f963f783ce172ab
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
Merge remote-tracking branch 'quic/tmp-5204e04' into msm-pineapple
* quic/tmp-5204e04:
sched: improve the scheduler
sched: walt: handle support for single and two cluster system
sched/walt: check for -1 for first_idle cpu
sched/walt: Remove avg_cap check in packing CPU feature
sched/walt: Add walt_disabled checks
sched/walt: Fix excess detach_task in walt_lb_pull_tasks
sched/walt: Check reserved CPU during walt_newidle_balance
treewide: Fixup copyright attribution
Revert "sched/walt: print all history samples"
Revert "sched: Use bitshift over division"
sched: walt: handle CTS failure for sched_set/getaffinity
sched: walt: add nested spinlock api
sched/walt: Ensure driving cpu is used for region3
sched: walt: Drop double rq locks for migrations
sched/walt: handle misaligned task window start
sched/walt: reject queue_wakelist() is cpu is same as waker cpu
sched/walt: Improve the scheduler
sched/walt/halt: track halt reasons
sched/walt: properly account irq entry/exit
sched/walt: Prevent within cluster load balance of misfits
sched/walt: Cleanup CPUFREQ flags and reasons
sched/walt: Add thermal pressure to cpu_util TP
sched/walt: Add global_ws to walt dump
sched: walt: allow silver to help prime during newidle balance
sched/walt cfs: rt: find a packing cpu
sched/walt: add functionality for choosing a packing cpu
sched/walt/avg: cache window based statistics
sched/walt: Kick newidle balance after unhalting
Revert "sched: walt: Remove finding historical runtimes in pred"
sched/walt: window rollover missing fix
sched/walt/halt: prevent selection of non-32 bit cpu
sched/walt: Ensure one 32bit capable cpu is never halted
sched/walt: print global ws in UTRA traces
sched/walt: remove set_window_start
sched/walt: prevent main walt_irq_work execution for no notif
sched/walt: add wrq->latest_clock to the walt dump
sched/walt: use rq->clock_task from scheduler tick hook
sched/walt: Improve the scheduler
sched/walt: use num_mvp_tasks for check if rq have mvp task
sched/walt: don't requeue mvp task if only have one mvp task on rq
sched/walt: add num_mvp_tasks for get the number of mvp task in walt rq
sched/walt: get rcu lock before use task's cgroups
sched/walt: check current task's mvp_list instead of mvp prio
sched/walt: skip long running RT task detection for stopper tasks
sched: Re-fix lock_cpus mask setting during IC migrations
sched: Improve the Scheduler
sched: Use bitshift over division
sched/walt: remove duplicate definitions of rt_task_arrival_time
sched/walt: check for incorrect cpu assignment
sched/walt: fix deadlock due to recursive rq locking
sched/walt: fix incorrect migrations for RT task
sched/walt: streamline affinity mask
sched: Revert "sched/walt: Account for changing task affinity"
sched/walt: Fix lock_cpus mask setting during IC migrations
sched/walt/halt: ra-arrange the code
sched/walt: Add yield case to LRRT task detection
sched/walt/core_control: disable need_all_cpus()
sched/walt: Add parameter for CPUFREQ reasons
sched: Align window start with tick boundary
sched/walt: Account for changing task affinity
sched/walt/rt: limit long running RT task detection to FIFO
sched/walt: print all history samples
sched/walt: stop accounting stopper threads as long running RT
sched/walt: Improve comments
sched/walt: Optimize update_task_ravg() calls
sched/walt/core_ctl: do core control immediately
sched/walt/halt: use kthread to launch cpu drain operations
sched: walt: fix stale window_start for walt load
sched: walt: properly account for migrating mvp task
sched/walt: Fix in long running RT task detection
sched/walt: Disable long running RT task detection
sched/walt: Remove unused sysctl node
sched/walt: cleanup copyright issues
sched/walt: walt hooks skipped during rt throttling
sched/walt: kick unhalted cpu for load-balancing
sched/walt: Fix setting RTG Boost Freq
sched: walt: add trace in update_cpu_capacity
sched: Fix negative capacity issue under thermal conditions
sched/walt/halt: prevent migration of migration_disabled tasks
sched/walt: cleanup hooks for halt
sched: walt: Use pred_demand_scaled for all predictive ops
sched: walt: Introduce bucket bitmask
sched: walt: Remove finding historical runtimes in pred
sched: walt: Use rq_clock instead of sched_ktime_get
sched/walt: avoid halted cpus in get_nohz_timer_target
sched: walt: use the is_cpu_allowed tracehook to restrict cpus
Revert "sched/walt_cfs: temporarily disable MVP feature"
sched/walt_cfs: set_next_entity hierarchy
sched/walt: do not perform unnecessary migrations
sched/walt: Deprecate RT task throttling
sched/walt: Handle long running RT tasks
sched/walt: rename to sched_get_cpu_util_pct
sched/walt: guarantee result from energy efficient cpu
sched: walt: take runnable into account for placement descision
sched/walt: Fix in walt_lb_tick
sched/walt_cfs: temporarily disable MVP feature
sched: walt: update the copyright
sched/walt: catch any set_task_cpu to unaffined cpus
sched/walt: allow checking of last halt time against threshold
sched/walt: create conditions for walt-bug and console output
sched/walt: Compare cluster IDs instead of capacities
sched: walt: fix rounding off error
sched/walt: update select_task_rq_rt to filter halted cpus
sched/walt: Deal with mvp_list at the very initial stage
sched: Simplify sliding window logic
sched/walt: remove unused can_halt cpu mask
sched/walt: cleanup cpu_active and cpu_online usage
sched/walt: catch tasks running on disallowed cpus
sched/walt/halt: cleaup issues post-review
sched/walt: Increase the number of history samples
sched: Remove references to min/max capacity cpus
sched/walt: make cmt aware of boosted/colocated task
sched/walt: move trace_sched_compute_energy tracepoint
sched/walt: kick Gold if farthest cluster needs help
sched/walt: avoid halted cpus in walt_find_energy_efficient_cpu
sched/walt: avoid halted cpus for rt in find_lowest_rq
sched/walt: limit the cpu selected by rto_next_cpu
sched/walt: limited the dest_cpu with set_cpus_allowed_ptr_locked
sched/walt: do not allow migration to halted CPU
sched/walt/rt: check halted flag for rt task wakeups
sched/walt: avoid halted cpus for prev cpu fastpath
sched/walt: avoid halted cpus in newidle balance
sched/walt/core_ctl: minimum changes for halt
sched/walt/halt: update tracepoints for halt/start
sched/walt/pause: remove pause functionality from build
sched/walt/halt: walt halt functionality
sched/walt: walt irq work reduce locking
sched/walt: remove task from mvp list if task in yield
sched/walt: Fix frequent frequency updates
sched/walt: Remove unsused function
sched/walt: Restore obj file in Makefile
sched/walt: Improve the scheduler
sched: Improve the scheduler
sched: walt: Improve the scheduler
sched: walt: Fix stale walt CPU reservation flag
sched: walt: Fix bad casting in trace
sched: Improve the Scheduler
walt_lb: Read push_task under lock
sched/walt: Remove duplicate get_task_struct
sched/walt: improve preemptirq template based tracepoints
sched/walt/walt_rt: Improve the scheduler
include/linux/cpu: Remove get_online_cpus and put_online_cpus wrapper
sched/walt: Remove vendor hook for resume_cpus
Revert "sched:walt: register tracehooks for race with pause"
sched/walt: Improve the scheduler
sched/walt: Clear scale_frequency_data during init
pause: port the users of pause
sched/walt: complain if num clusters is high
sched/walt: Change rq lock variable as per upstream
sched/walt: Remove redefinition of 'task_of' function
sched_walt: Change from MAX_USER_RT_PRIO to MAX_RT_PRIO
sched/walt: Change task state variable
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Remove newline in traces
sched: walt: Create pipeline "low latency" tasks
sched/walt: fix target load crossover
sched: walt: Add target load tunables
sched/walt: Fix caching freq earlier than down rate limit check
sched/walt: improve task_util trace and variable names
sched: walt: Don't crash unless crash mode enabled
sched: Improve the scheduler
sched/walt: Improve the scheduler
sched: walt: Imrpove the scheduler
sched: Improve the Scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched: walt: Improve the scheduler
sched: walt: Improve the Scheduler
sched/walt: Improve the scheduler
sched: walt: Do dequeue task accounting after dequeue
sched: walt: Use CRA for sum util
sched/walt: eval_need code and trace cleanup
sched/walt: Improve the scheduler
sched/walt: update the value of active_cpus
sched: walt: Increase nr_threshold to 40 percent
sched: walt: add sched_switch_ctrs_cfg event
sched: walt: Account rt scale to cpu_capacity
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Check if necessary for sched_boost modify
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt/walt_cfs: Improve the scheduler
sched/walt: reduce severity of walt pause warning
sched/walt: reduce severity of core_ctl warning
sched/walt: convert existing walt debug to use macro
sched/walt: sysctl node to allow capture of walt issues
sched/walt: when idle task is scheduled cra must be zero
sched/walt: check next task state
Sched/walt/walt_cfs: Improve the scheduler
sched: walt: Register restricted trace hook for libunity fixup
sched/walt: test to ensure dequeue cpu same as enqueue cpu
sched/walt/walt_rt: Improve the scheduler
sched/walt: choose best cpu based on spare cap
sched/walt: skip finding max when energy evaluating
sched/walt: skip enery evaluation for need_idle when idle CPU is available
sched/walt/core_ctl: use printk_deferred() in case of errors
sched/walt: allow reference to walt debug capabilities
sched: walt: Use unsigned long type for counter values
sched/walt_rt: Honor sync wakeups
sched: walt: use scale_cpu for energy evals
sched/walt: correct return value for walt_pause/resume_cpus()
sched/walt: Improve the scheduler
sched: walt: Fix the logic for detecting enq/deq
sched: Use IS_ENABLED macro to check if config is enabled
sched: suppress silver region frequency boost
sched: walt: Add AMU based instructions and cycle counts
sched:walt: register restricted tracehooks for race with pause
sched: walt: Ensure only valid cpu selected
sched: walt: Add cgroup_attach trace point
Revert "sched:walt: register tracehooks for race with pause"
sched/walt: prevent lockup when system is suspending
sched:walt: register tracehooks for race with pause
sched/walt: Fix scheduling while atomic
sched: Enable walt debug module in first stage
sched: walt: Fix max_util calculation
sched/walt: print per cluster energy
sched/walt: consolidate multiple rcu unlock statements
sched: walt: Setup complex sibling hints at init
sched/walt: Improve the scheduler
sched/walt: use just 3% energy criteria
sched/walt: Improve the scheduler
sched/walt: initiate initialization after topology
sched/walt: Improve the scheduler
sched/walt: handle overlap between silver and gold
sched/walt: use prs for energy evaluation
sched/walt: skip energy for uninvolved cluster
sched/walt: create walt friendly energy apis
sched/walt: Track best target cpu for each cluster
sched: walt: Move perf counter trace to dynamic trace point
sched: walt: support dynamic trace event registration
sched: Disable LPM if CONSERVATIVE_BOOST is enabled
sched: walt: Fix waltgov_next_freq format specifiers
sched/walt: improve debug of strange rq situations in walt
sched/walt: add sched_busy_hyst_time trace event
sched: Add util_busy_hist feature
sched: Add util busy hist sysctl tunables
sched/walt: improve logging in the error paths
sched/walt: Do the rq clock update before MVP tasks update
sched/walt: Fix locking issue in MVP tasks update
sched/walt: Improve the scheduler
sched: walt: Adjust nomenclature
sched: walt: expand waltgov_util_update trace point
sched/fair: Add sched_sync_hint_enable node
sched/walt: fix lock ordering issue between RTG lock and task's RQ lock
sched/walt: Improve the scheduler
sched/walt: fixup_busy_time: Correct typo in lockdep_assert_held
sched/walt: Improve the scheduler
sched/walt: Fix newline issues
sched/walt: Improve the scheduler
walt: honor affinity in placement path
sched/walt: Add MVP tasks feature
sched/walt: cleanup references to pr_emerg
sched: Improve the scheduler
sched/walt: Add small task filtering to uclamp
sched/walt: Cache the affinity of a user space task
sched/walt: enhanced debug for double enqueue/dequeue
sched/walt: debug for fixup_cumulative_runnable_avg
sched/walt: Improve the scheduler
sched/walt: improved debug for tracking accounting cases
sched/walt: Apply binder vendor hook performance tune
sched/walt: Improve the scheduler
sched/walt: Initialize task groups from vendor hook
sched: walt: Cleanup fbt_env boosted member
sched: walt: Improve FEEC energy variable nomenclature
sched: walt: Shift boost status of current task
sched: walt: Move spare_cap calculation
sched: walt: remove extra function call
sched/walt: add rt_time to dump_throttled_rt_tasks
sched/walt: null ptr dereference fix in walt_lb_active_migration
sched/walt: core_ctl init out of order
sched/walt: Read sysctl_sched_ravg_window_nr_ticks under mutex
sched/walt: Remove unused sched_dynamic_ravg_window_enable tunable
sched/walt: sched_task_util trace point updates
sched/walt: Modify sched_task_util tracepoint
sched/walt: update check during debug module init
sched/walt: Adjust code as per new dequeue_task() hook invocation
sched/walt: Update CPU capacity based on cpufreq constraints
thermal/pause: thermal driver not tracking pause state
walt/core_ctl: handle error conditions
walt/pause: switch over to mutex and protect call to pause/resume
sched/pause: handle cpu online processing for pause
sched: walt: Improve the scheduler
sched/walt: Remove incorrect TODO/FIXME comments
sched/walt: Track wake_q length using newer parameter
sched: walt: Improve the Scheduler
sched: walt: Move task_boost_type declarations
sched/walt: Improve the chance of RT task pull
sched/walt: Improve walt_newidle_balance trace point
sched/walt: improve debug for time_delta < 0
sched/pause: support refcounting on pause cpus operation
sched/walt: Track CPUs that can't be paused
sched/walt: Fix !idle case in walt_get_idle_exit_latency
sched/walt: Remove left over references to cum_window_demand
sched/walt: Add fair task check in tick path load balance
sched/walt: Remove duplicate restricted vendor hook registration
sched/walt: Implement balance_rt vendor hook
binder: update low_latency selection for binder transactions
sched/walt: Use nr_running > 1 condition for same cluster lb
sched/walt: Use unbounded cpu util in load balancer
sched/walt: Don't migrate running task to a busy CPU
sched/walt: Fix misfit accounting issues
sched/walt: Fix walt_lb_find_busiest_lower_cap_cpu() condition
sched/walt: implement select_task_rq_rt trace hook
sched/trace: support compat in enq/deq trace
sched/walt: Temporarily disable sibling_count_hint
sched/walt: Clean up the code
sched/walt: Make debug module depend on SCHED_WALT
sched/walt: Remove the active task special case from wfbt()
sched/walt: Fix waking new tasks on higher capacity CPUs
sched/walt: Move public declarations of core_ctl.h to walt.h
sched/walt: remove unused functions and variables
sched/walt: Make wake_up_idle related functions public
sched/walt: Make walt_task_struct struct public
sched/walt: Export set_task_boost() API
sched/walt: Introduce waltgov boost feature
sched/walt: Remove sched_load_boost related code
sched/walt: Update cpufreq_driver_fast_switch() invocation
sched/walt: Remove references to schedutil flags
sched/walt: Simplify core_ctl active cpu count management
sched/walt: Fix lockdep warning
sched/walt: Remove left over code related to kernel command line param
sched/walt: Implement sched_lpm_disallowed_time() API
sched: walt: Cleanup core_ctl
sched/walt: Remove should_we_pause() function
sched/walt: Remove evaluation from the core_ctl thread context
sched/wakeup: Optimize core_ctl thread wakeup
sched/walt: Remove unused sched_pause trace point
sched/walt: Add window rollover trace event
sched/walt: Synchronize per-task sysctl and sysctl_task_read_pid
sched/walt: Improve the scheduler
sched/walt: Add a build time test for vendor data size check
sched: walt: Fixup root domain selection
sched/walt: Remove obsolete TODO comments
sched/walt: wait for cpufreq policies
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched/walt: Improve the scheduler
sched: Improve the scheduler
sched/walt: Restrict new idle load balance based on avg_idle
sched/walt: Introduce WALT as a module
Change-Id: Iad463c5cdd9384cc09f68b47fdadbc5e2a8143ac
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
Wakeup_enable bit controls the interrupt routing to parent irqchip.
Add support to set it during interrupt allocation for the GPIOs which
are used as interrupt.
While at this update the intr_target_bit value to correct one.
Change-Id: I2eae47aa07be9ba2cb1bcc814a234c9181d1a7d0
Signed-off-by: Maulik Shah <quic_mkshah@quicinc.com>
This is snapshot of the llcc_perfmon driver from msm-5.15
'commit 8220ce415efa8 ("driver: llcc_perfmon: Add perfmon filter
changes")'
This LLCC perfmon driver provides Sysfs interfaces for the clients to
monitor the events. Driver support for monitor events from LLCC sub blocks.
Also updated driver to handle opcode & cache alloc filters.
Change-Id: Ic711fdbc774d2da1938feff5c0d7888e5cf8495a
Signed-off-by: Sankaran Nampoothiri <snampoot@codeaurora.org>
Signed-off-by: Avinash Philip <avinashp@codeaurora.org>
Signed-off-by: grandhir <grandhir@codeaurora.org>
Signed-off-by: grandhir <quic_grandhir@quicinc.com>