| Commit message (Collapse) | Author | Age |
| |
|
|
|
| |
rtc: twl: Use threaded IRQ, remove IRQ enable in interrupt handler
twl: add missing IRQF_ONESHOT
|
| |
|
|
|
|
| |
This reverts commit 13312d2e5bae87b72f030290e6675e07833b3db0.
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
|
| |
|
|
|
|
|
|
| |
userspace"
This reverts commit e3e5280a1cb7c90b1a208ffd8cd3c9918cc24d57.
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces the helper of ehci_sync_mem to flush
qtd/qh into memory immediately on some ARM, so that HC can
see the up-to-date qtd/qh descriptor asap.
This patch fixs one performance bug on ARM Cortex A9 dual core
platform, which has been reported on quite a few ARM machines
(OMAP4, Tegra 2, snowball...), see details from link of
https://bugs.launchpad.net/bugs/709245.
The patch has been tested ok on OMAP4 panda A1 board, and the
performance of 'dd' over usb mass storage can be increased from
4~5MB/sec to 14~16MB/sec after applying this patch.
SRU Justification:
Impact:
- without the patch, 'dd' over usb mass storage is about
4~5MB/sec.
Fix:
- After applying the patch, 'dd' over usb mass storage is
about 14~16MB/sec.
BugLink: http://bugs.launchpad.net/bugs/709245
upstream discusstion:
https://patchwork.kernel.org/patch/1113332/
Signed-off-by: Ming Lei <ming.lei@canonical.com>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
|
| |
|
|
|
|
| |
This reverts commit fc517b54e0cc527c5341bf0aa6fd7cc31740d65c.
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
|
| |
|
|
|
|
|
|
| |
Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
|
| |
|
|
| |
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@linaro.org>
|
| |
|
|
|
|
|
|
| |
We currently expect it to be "pvrsrvkm" and not "omap_gpu_pvr", so
change it to load the correct driver.
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@linaro.org>
|
| |
|
|
|
|
|
|
|
| |
Add support for reading the MAC address from the system registers if there
is an EEPROM present. This involves caching the KS_CCR register for later
use (will also be useful for ETHTOOL support) and adding a print to say
that there is an EEPROM present.
Signed-off-by: Abraham Arce <x0066660@ti.com>
|
| |
|
|
|
|
|
| |
This is a suggestion from Rob Clark. Purpose is to reduce load
for copying bitstream into codec input buffer.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
| |
|
|
| |
Signed-off-by: Andy Green <andy.green@linaro.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
For each mailbox interrupt,process both cores(sysm3 and appm3) ipc stack.
This is to fix the issue of message being dropped, when both cores tries
to put the message at the same time. For example both sysm3 and appm3 are
trying to write into MBX and appm3 sees that there is already a message
pending by SYSM3.In this case appm3 will not interrupt A9.But A9 will only
process sysm3 ipc stack.So to take care of this,process both cores ipc stack
for each MBX interrupt.
Change-Id: I209db12d54204818f6c4b24aab162263bbd53d3b
Signed-off-by: Subin K G <subin.kg@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Currenlty ipc_attach is whiling inside the kernel till
it become success.This has been changed to a retry for
500ms, after that it will report failure to userspace.
This change is to avoid rebooting of the board, in case
if ipc_attach fails.
Change-Id: Ie47043c54858140e198af7354b9441232a117760
Signed-off-by: Subin K G <subin.kg@ti.com>
|
| |
|
|
|
|
|
|
|
|
| |
The is_cached parameter is not initialized prior to calling
platform_mem_unmap from proc4430_detach. This change sets the
is_cached parameter to false to match the value used when mapped
so that the memory entries are now unmapped consistently.
Change-Id: I7690d317093cd82c13c9894e8cbc0fb2432dff02
Signed-off-by: Bryan Honza <honza@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
atomic_cmpmask_and_set() is operating on an uninitialized attach_count
which can pass the cmpmask as if it has been initialized
resulting in the cmpmask_and_set() not initializing the attach_count.
For instance, if the uninitialized attach_count happens to be
0xffffffff, atomic_cmpmask_and_set() will not change the attach_count.
This attach_count is allocated on the heap.
Change-Id: Iaadc3f093287d965ff4d00f8d3f9c63ce596a6d4
Signed-off-by: Bryan Honza <honza@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If we disable SYSLINK_RECOVERY option in drivers->syslink
->SYSLINK_RECOVERY, build breaks with below errors
drivers/built-in.o: In function `devh_notification_handler':
drivers/dsp/syslink/devh/44xx/devh44xx.c:103: undefined reference to
`ipc_recover_schedule'
drivers/built-in.o: In function `devh44xx_wdt_ipc_notifier_call':
drivers/dsp/syslink/devh/44xx/devh44xx.c:244: undefined reference to
`ipc_recover_schedule'
make: *** [.tmp_vmlinux1] Error 1
Fixed by moving ipc_revover_schedule function under SYSLINK_RECOVERY Flag.
Change-Id: Idb4de38bbe1e2586eebac9f76150616ea93d56f3
Signed-off-by: Shivananda Hebbar <x0hebbar@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
Store the pid of process who call the ipc_open in it's private
data so at the time of release it can use this to send death
notification instead of using current pid whenever ipc release
has been called.
Change-Id: I86429112bd9668869ceeae43195309be2311ab5d
Signed-off-by: Subin K G <subin.kg@ti.com>
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
Instead of using the current pid use the pid passed to
the devh.This is the required since the process who opens
the driver handle (iommu, tiler, ipc),may not the one
releasing the handle.And in turn devh will be giving the
wrong pid to ipu pm.
Change-Id: I153ef85cbc0b5d671b82cfa5f07bbb1e99c39531
Signed-off-by: Subin K G <subin.kg@ti.com>
|
| |
|
|
|
|
|
|
| |
There were parts not protected when register/unregister single
events.
Change-Id: I53d99659b91abbbcef66117bca7c37bf73e7aa97
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
|
| |
|
|
|
|
|
| |
Add protection againts adding/removing notify drivers_handles.
Change-Id: I53f391d97b9b115ac64d007cc0a0d8ef7cc80a3b
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
|
| |
|
|
|
|
|
|
|
| |
if you don't unregister the callback for notify events first, the
transportshm object can be dereferenced in the callback causing
a kerner panic.
Change-Id: I0f55e2b5070bec7c617392b3080914c0372f98bf
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds vanilla l-o 2.6.38 specific changes. The patch might get
redundant once the OMAP_PM specific changes/ baseport changes go in.
Check the return value of kfifo_out ti avoid a warning
Do not use any constraint req/rel since the fwk is not
ready yet.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Subramaniam C.A <subramaniam.ca@ti.com>
Signed-off-by: Cris Jansson <cjansson@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After an iommufault iss and fdif need to be reset
for the proper reuse of both.
The proper api to call is _softreset() but for that
sysc struct in hwmod needs to be enabled but that part
is not ready.
This is hack until the proper fix is done in sysc and
the proper api can be used to softreset.
Change-Id: I7568308bcd49697946a08a1b03b6a846dd0c9f5d
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
|
| |
|
|
|
|
|
| |
This patch uses unlocked_ioctl instead of ioctl in all SysLink drivers.
The support for ioctl was removed since BKL is not to be used anymore.
Signed-off-by: Subramaniam C.A <subramaniam.ca@ti.com>
|
| |
|
|
|
|
|
|
|
|
| |
This patch enables hibernation by default and also adds build support
for iommu-debug.The patch is a port of these additions from 2.6.35 omap
android kernel.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Leed Aguilar <leed.aguilar@ti.com>
Signed-off-by: C A Subramaniam <subramaniam.ca@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After recovery the mechanism to release all the resources
and constraints was not taking in to consideration the IPU
that is created behind the scenes to handle the sys and app
constraints and as a consequence all the constraints attached
to it were not released leading to not hit retention in idle path.
That IPU behind scenes is a special rcb slot that only has constraints;
the fix is taking care of this case and releases only the constraints.
If the IPU is explicitly requested then it will be consider as a normal
resource.
Change-Id: I49a7ab05912bcc4de4e61c223ba0f4dd4c7a2d83
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
Signed-off-by: Paul Hunt <hunt@ti.com>
|
| |
|
|
|
|
|
| |
Use dma calls for cache flushing under a configurable flag.
Use this option until Multimedia integration issues are sorted out.
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
wdt notification event was not being sent to the deh because
if there are resources in use by IPU the assumption was that
it is in a good state (not hanging) and the timer was being reloaded
without catching the issue. This fix is avoiding that scenario
adding an event PM_ALIVE, sent by ipu, that indicates there are
resources in use but ipu wont hibernate, and the timer needs
to be reloaded in kernel for hib_time seconds again.
Also resources clean up is now done when the wd issue is catched.
Change-Id: I34304763ce50ac51595a9a6b7c9305d95174f8f8
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Modified to configure timer 3 that is used to trigger hibernation
and it is also used as watch dog timer. Since both ducati cores
can go to retention together and if one core is not responding
both need to be reset, we only use 1 timer
[Hari K] The free irq while freeing
checks the dev_id as the token with the dev_id that it was registered
earlier. To avoid the race condition as when the remote proc frees the
dmtimer handle save the handle in ipu_pm to use it as a token when passing
to free_irq
A cleaner solution should be investigated for watchdog timer
Change-Id: I15d3c0182d84861819cc36abf1f78cbc1674375f
Signed-off-by: Shahid Akhtar <sakhtar@ti.com>
|
| |
|
|
|
|
|
|
| |
This patch adds build related files
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Ramesh Gupta G <grgupta@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SYSLINK: ipc - move check for in recovery state per ipc submodule
With this approach, now each submodule can allow which ioctl
can go through when the IPC is in recovery state. It is done
by exporting a new function in ipc.
Change-Id: I3402f2f83cd3dddbdd6a0d8caf94bf061a5b981c
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
SYSLINK: ipc - allow some ioctl go through in recovery state
This api can go through even in recovery state:
messageq_unblock
messageq_delete
messageq_close
messageq_destroy
Change-Id: If738b58c21f1d18c3ef1ba019bb598290096d32b
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
SYSLINK: IPC- provide ipc start and stop notification
Enable the notification of IPC start and stop, which devh can
use to register/unregister for SYS-ERRORS.
This also includes the changes to export ipc_recovery_schedule
function. This function should be called by error handlers such
as sys error and watchdog error.
Change-Id: I436c37b9c4b74d00c771e88c480ea0e96a0268fd
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Wajahat Khan <w-khan@ti.com>
syslink: ipc: fix compilation warnings
Fixing the following compilation warning when
including ipc.h and notify_ducatidriver.h in another
module:
warning: function declaration isn't a prototype
Change-Id: Idbb0b5289a3e8406fbe0b86e70d63d55d7e3060f
Reported-by: Ricardo Neri <ricardo.neri@ti.com>
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the IPU subsystem has hibernated, there is no need to wake it up
and forward suspend notifications. Also, resume notifications will
not be forwarded to the IPU SS if it has hibernated. This is because
self-hibernation only occurs when no resources are in use. In this
case the SysLink PM context save/restore should be all that is needed.
Change-Id: I892e58b569d922038db8fb8604d1432087235f75
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Paul Hunt <hunt@ti.com>
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
Signed-off-by: Axel Haslam <axelhaslam@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also has compiler warning fix in AUXCLK request function
syslink: ipu_pm: refactor and cleanup functions
Including:
- ipu_pm module code was a reviewed and reworked to remove
redundant code, simplify and enhance the implementation.
- Change ipu_notifications to receive proc_id.
- Add IOMMU_FAULT notifier callback function.
- Function to release all resources when IOMMU_FAULT event
is received or when detaching, this is called in a
workqueue to avoid calling context problems in the case of
the FAULT event and called directly in the case of detaching.
- Add the possibility to select the SRC_CLK when requesting
a gptimer.
- Add pr_debug traces for debugging purpose:
Previosly all the errors when requesting/releasing
resources were just reported to IPU using notify_event
in the payload. Now kernel is printing errors/warnings/
debug messages and also reporting the error back to IPU.
This is needed because IPU could be dead and not able to
see/print the error ipu_pm is reporting.
Change-Id: I22614bafc7cb7e3070d5bf565be6138fca5a809b
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
syslink: ipu_pm: fix suspend/resume when no IPU image loaded
ipu_pm_drv_suspend and _resume were trying to notify ipu for
suspend/resume without cheking if an image was loaded leading
to an error in the suspend path.
Checking the handle to each proc before sending the notification
is avoiding this.
Suspend/resume is working now with/without an image loaded in IPU.
Change-Id: I55aca1674b1cdffba9fb3247e7da605b4082a521
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
SYSLINK: IPU-PM: clean up warning in AUXCLK request function
clean up clk_disable( ) warning in AUXCLK request function:
ipu_pm_get_aux_clk( ).
Change-Id: I6bcc41e220f80f4e248bef65b3ed0fc379451d98
Signed-off-by: Paul Hunt <hunt@ti.com>
SYSLINK: IPU-PM: restore IOMMU during ipu pm detach and mmu close
The IPU PM during the Ducati hibernation is shutting down the
IOMMU. If the User process that is using IOMMU is killed when the
Ducati is in hibernation state, the board hangs due to access to IOMMU during
resource cleanup.
The issue was observed when the Syslink daemon is killed with Ducati in
hibernation.
Change-Id: Ia5bd05fe382488c33ac858657f05aee9e22a48ee
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
|
| |
|
|
|
|
|
|
|
| |
- Call ipu_pm_save_ctx() to truly simulate system suspend, this
is just for testing purpose and is intented to validate IPU
suspend/resume cb's and proper restore of IPU.
Change-Id: I63a957b5b2980e4c4f1f0443fd5ce541b2b3b281
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SYSLINK: IPC-replace printks with pr_xxx
Replace
printk(KERN_ERR) with pr_err
printk(KERN_INFO) with pr_info
printk(KERN_WARNING) with pr_info
Change-Id: Ic434b3ca34f131528c71f8f3fc6b5b51252db92c
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
SYSLINK: notify-replace printks with pr_xxx
Replace
printk(KERN_ERR) with pr_err
printk(KERN_INFO) with pr_info
printk(KERN_WARNING) with pr_info
Change-Id: Iad946fec668a2fa190ea4c54067f59378cb6f147
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
SYSLINK: notify-ducati-replace printks with pr_xxx
Replace
printk(KERN_ERR) with pr_err
printk(KERN_INFO) with pr_info
printk(KERN_WARNING) with pr_info
Change-Id: Ic65782b709447033912a7b3fe76daa3548b1ad4c
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
SYSLINK: PROCMGR-replace printks with pr_xxx
Replace
printk(KERN_ERR) with pr_err
printk(KERN_INFO) with pr_info
printk(KERN_WARNING) with pr_info
Change-Id: Iee8c0a38dbb32dc33b42d4ba757a746f791a3047
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Added a new command in messageq to unblock. A new variable
is also added to the messageq object to unblock the messageq.
The purpose of unblock is to unblock the messageq_get() when
it is pending for a new message with MessageQ_FOREVER timeout. The
messageq_unblock is intended for use before deletion of messageq
and it unblocks messageq_get() with MessageQ_FOREVER timeout value
for termination.
Signed-off-by: Shahid Akhtar <sakhtar@ti.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ipu_dev header to mach-omap2 tree
Header file needed fot mach-omap2/ipu_dev.c file
Signed-off-by: Paul Hunt <hunt@ti.com>
omap:ipu_pm: add ipu_utility to mach-omap2 tree
IVAHD Sequencer WFI Boot Code for IPU PM Driver
Signed-off-by: Paul Hunt <hunt@ti.com>
omap:ipu_pm: add ipu_drv to mach-omap2 tree
Add needed api for ipu_pm module
Signed-off-by: Paul Hunt <hunt@ti.com>
omap:ipu_pm: add ipu_dev to mach-omap2 tree.
Platform Device handling for IPU PM Driver
Includes:
- ipu_pm_module_start
- ipu_pm_module_stop
- platform data definition for the following devices:
+ fdif
+ ipu
+ ipu_c0
+ ipu_c1
+ iss
+ iva
+ iva_seq0
+ iva_seq1
+ L3
+ mpu
-ipussdev_init to init all devices.
Signed-off-by: Paul Hunt <hunt@ti.com>
syslink:ipu_pm: add/remove ipu_pm_start/stop
Add the calls to api that will enable:
- iva_hd
- iva_seq0
- iva_seq1
- fdif
- iss
modules using the hwmod implementation.
Hibernation disabled.
Gptimer3 used for hibernation was disabled.
Setting CM_MPU_M3_CLKSTCTRL.CLKTRCTRL[1:0] = HW_AUTO
Retention is disable by default.
Signed-off-by: Paul Hunt <hunt@ti.com>
syslink:ipu_pm: fix req/rel aux_clk/iss/iva/idle
The current implementation was not meeting all
the requiriments needed to properly enable and
use aux_clk.
Anyway this is a hack way to do it, the proper
implementation is still pending.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Temporary path using cmm_write_reg to enable CAM_PHY
Signed-off-by: Paul Hunt <hunt@ti.com>
Ivahd requesting was not fully working since
sl2 was not being requested and that is needed
for ivahd to be fully functional.
In ipu_dev sl2 is initialized
In ipu_pm the flow to request iva should be:
- Requesting (ivaseq1 call is requesting sl2)
ivahd>ivaseq0>(ivaseq1>sl2)
- Releasing (iva call is first releasing sl2)
ivaseq0>ivaseq1>(sl2>ivahd)
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Setting IdleAllowed flag that enables the idle mode
in Ducati. WFI can be called in Ducati flag
whenever this flag is set
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
Fix a compile error related to iva/iss when trying
to build with ES1.0 configuration. In ES1.0, the
PM is not supported.
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
syslink:ipu_pm: DFVS support for freq
Fix bug in error message string referencing
Signed-off-by: Paul Hunt <hunt@ti.com>
Add platform data for DSP resource and fix
attributes for MPU and L3 interconnect.
Signed-off-by: Paul Hunt <hunt@ti.com>
Provide internal APIs for performance and
latency constraint frameworks to use to assert
these constraints into the system power management.
Signed-off-by: Paul Hunt <hunt@ti.com>
MPU and CORE freq/lat cstrs
Add special handling for MPU and CORE frequency and
latency constraints.
To specify a constraint to MPU or CORE the api needs
to be called passing the following to the api:
- IPUPM_SELF
- IPUPM_MPU
- IPUPM_CORE
Signed-off-by: Paul Hunt <hunt@ti.com>
DVFS support in ipu_pm
Calling the dvfs apis per resource.
Included:
- ipu[perf|lat]
- iss[perf|lat]
- ivahd[perf|lat]
- L3 bus[lat]
- mpu[perf|lat]
Pending:
- fdif
- dsp
Note: Latency calls are working but hasnt been tested.
Perf/rate calls are working.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Paul Hunt <hunt@ti.com>
(cherry picked from commit 3c1cdb45bb67d11eda14420a7b8eaacff0c24173)
SYSLINK:IPU-PM-move iommu handles to attach and detach
Move getting iommu handle to attach and detach from setup/destroy.
Having the iommu get in setup is causing the mmu fault recovery fail
since the iommu object gets incremented before the fault application
closes the iommu handle which leads to failure in shutting down the
iommu device completely.
Signed-off-by: Hari Kanigeri <h-kanigeri2@ti.com>
syslink:ipu_pm: add L3 bw and fdif cstr
ipu_pm api to set the bandwidth constraint for L3 bus
New api is:
ipu_pm_module_set_bandwidth(rsrc,
target_rsrc,
bw);
bw is received in KiB/s and converted into Hz
Add support to set performance and latency cstrs to
fdif.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Paul Hunt <hunt@ti.com>
Signed-off-by: Juan Gutierrez <jgutierrez@ti.com>
syslink:ipu_pm: send pid_death just to appm3
ipu_pm_notification is broadcasting all events to both
sys/app processors whenever an event is sent using that
api.
For PID_DEATH event the requirement is only to send the
message to APPM3 since is the one that will be executing
the resource manager; also because of that sending the
message to SYSM3 is unnecessary.
Signed-off-by: Miguel Vadillo <vadillo@ti.co |