SRF Replacement - Constraints Part

From OMAPpedia

(Difference between revisions)
Jump to: navigation, search
(Implementation Schedule)
(Implementation Schedule)
Line 100: Line 100:
| Start with the design as aligned in the workshop and implement check for state change function || Vibhore || 25-Jun || Completed || '''30-Jun: ''' Completed '''23-Jun: ''' On track || None
| Start with the design as aligned in the workshop and implement check for state change function || Vibhore || 25-Jun || Completed || '''30-Jun: ''' Completed '''23-Jun: ''' On track || None
|-
|-
-
| Resolve any compilation issues & test on zoom3 || Vibhore || '''New: ''' 07-Jul ''' Orig: ''' 28-Jun  || In Progress|| '''07-Jul: ''' Faced few issues with test code which had to be developed for testing device latency constraints''' 02-Jul: ''' debugging & functionality testing '''23-Jun: ''' None || None
+
| Resolve any compilation issues & test on zoom3 || Vibhore || '''New: ''' 07-Jul ''' Old: ''' 28-Jun  || In Progress|| '''07-Jul: ''' Faced few issues with test code which had to be developed for testing device latency constraints''' 02-Jul: ''' debugging & functionality testing '''23-Jun: ''' None || None
|-
|-
| Post device latency constraints for review || Vibhore || 12-Jul || Not started || '''07-Jul: ''' None || None
| Post device latency constraints for review || Vibhore || 12-Jul || Not started || '''07-Jul: ''' None || None
Line 106: Line 106:
| Implement interrupt latency constraints using PM QoS || Vibhore || 15-Jul || Not started || None || None
| Implement interrupt latency constraints using PM QoS || Vibhore || 15-Jul || Not started || None || None
|-
|-
-
| Post RFC patches for interrupt latency || Vibhore || '''New: ''' 19-Jul, '''Old: ''' 30-Jun || Not started || '''07-Jul: ''' Prioritized the device latency constraint implementation which is new '''02-Jul: ''' delayed, '''23-Jun: ''' None || None
+
| Post RFC patches for interrupt latency || Vibhore || '''New: ''' 19-Jul, '''Old: ''' 30-Jun || Not started || '''07-Jul: ''' Prioritized the device latency constraint implementation which is new '''02-Jul: ''' Delayed, '''23-Jun: ''' None || None
|-
|-
| Implement throughput constraints & post RFC patches || Vibhore || 22-Jul || Not started || None || '''07-Jul: ''' Requires DVFS functionality which is available on OMAP3 today and will be done for OMAP4 by the target date
| Implement throughput constraints & post RFC patches || Vibhore || 22-Jul || Not started || None || '''07-Jul: ''' Requires DVFS functionality which is available on OMAP3 today and will be done for OMAP4 by the target date

Revision as of 10:18, 7 July 2010

Contents

Introduction

This wikipage describes the efforts of replacing constraints part of the Shared Resource Framework (SRF).


SRF Replacement - Constraints Part

Types of Latency Constraints

Details of Interrupt Latency

Details of Device Latency

Proposed Implementation

void omap_pm_set_max_dev_wakeup_lat(struct device *dev, long t)
{
	/*  existing code */	
	1. Look for devices’ power domain (multiple step lookup as starting  with general device)
	2. Use device pointer as identifier for constraint request

	if (t == -1)
		pwrdm_wakeuplat_release_constraint(pwrdm, dev);
	else
		pwrdm_wakeuplat_set_constraint (pwrdm, dev, t);
}
struct powerdomain {
/* existing entries*/
const u32 wakeuplat[NUM_FUNC_PWRST];
static LIST_HEAD(wakeup_lat_constraint_list);
} 
static struct powerdomain core_44xx_pwrdm = {
.wakeuplat = {
  [FUNC_PWRST_OFF] = 50,
  [FUNC_PWRST_OSWR] = 30,
  [FUNC_PWRST_CSWR] = 5,
  [FUNC_PWRST_ON] = 0,
 };
}
pwrdm_wakeuplat_set_constraint (struct powerdomain *pwrdm, stuct device *dev, long lat_us){
	1. If new constraint, add a new entry to wakeup_lat_constraint_list
	2. If already existing, update entries’ latency value
	3. pwrdm_check_for_state_change (pwrdm)
} 
pwrdm_wakeuplat_release_constraint (struct powerdomain *pwrdm, char   *lat_dev_name){
	1. Remove this devices’ constraint from wakeup_lat_constraint_list
	2. pwrdm_check_for_state_change (pwrdm)
}
pwrdm_wakeuplat_update_pwrst (struct powerdomain *pwrdm){
	1. min_latency = find_min_wakeup_latency_constraint (pwrdm) 
		 //go through the list for minimum latency value
	2. find power state that has latency lower than minimum constraint
	
	3.  if (pwrdm->state != new_state)
 		    pwrdm_set_next_pwrst (pwrdm, new_state); // existing function to program next state
}

Implementation Schedule

Post PM Workshop Deliverables for SRF Replacement - Constraints Part

Task Owner Target Date State Status Comments & Actions
Start with the design as aligned in the workshop and implement check for state change function Vibhore 25-Jun Completed 30-Jun: Completed 23-Jun: On track None
Resolve any compilation issues & test on zoom3 Vibhore New: 07-Jul Old: 28-Jun In Progress 07-Jul: Faced few issues with test code which had to be developed for testing device latency constraints 02-Jul: debugging & functionality testing 23-Jun: None None
Post device latency constraints for review Vibhore 12-Jul Not started 07-Jul: None None
Implement interrupt latency constraints using PM QoS Vibhore 15-Jul Not started None None
Post RFC patches for interrupt latency Vibhore New: 19-Jul, Old: 30-Jun Not started 07-Jul: Prioritized the device latency constraint implementation which is new 02-Jul: Delayed, 23-Jun: None None
Implement throughput constraints & post RFC patches Vibhore 22-Jul Not started None 07-Jul: Requires DVFS functionality which is available on OMAP3 today and will be done for OMAP4 by the target date
Extensive testing on OMAP3 & OMAP4 and rework to address review comments Vibhore 31-Jul Not started 23-Jun: None None
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox