rt/msr_module.c
changeset 40 d07ebafe62dd
parent 38 3213cbbd58b7
child 42 a22a202d0f42
equal deleted inserted replaced
39:6965c23a6826 40:d07ebafe62dd
   246         klemme = next2004(&wrap);
   246         klemme = next2004(&wrap);
   247 
   247 
   248 
   248 
   249     ms++;
   249     ms++;
   250     ms %= 1000;
   250     ms %= 1000;
   251     if (cnt++ > 20)
   251     if (cnt++ > 200)
   252     {
   252     {
   253         cnt = 0;
   253         cnt = 0;
   254 
   254 
   255         if (++kanal > 3)
   255         if (++kanal > 3)
   256         {
   256         {
   319     /* und wieder in die Timerliste eintragen */
   319     /* und wieder in die Timerliste eintragen */
   320     /* und neu in die Taskqueue eintragen */
   320     /* und neu in die Taskqueue eintragen */
   321 //    timer.expires += 1;
   321 //    timer.expires += 1;
   322 //    add_timer(&timer);
   322 //    add_timer(&timer);
   323 
   323 
   324     ipipe_control_irq(irq,0,IPIPE_ENABLE_MASK);  //nicht weiterreichen
   324     ipipe_control_irq(irq,0,IPIPE_ENABLE_MASK);  //Interrupt bestˇätigen
   325     if(counter++ > HZREDUCTION) {
   325     if(counter++ > HZREDUCTION) {
   326 	ipipe_propagate_irq(irq);  //wie lange braucht der Rest der Pipeline ??
   326 	ipipe_propagate_irq(irq);  //und weiterreichen
   327 	counter = 0;
   327 	counter = 0;
   328     }
   328     }
   329 
   329 
   330 
   330 
   331 }
   331 }
   332 
   332 
   333 void domain_entry (int iflag) {
   333 void domain_entry (void) {
   334     printk("Domain %s started.\n",	ipipe_current_domain->name);
   334     printk("Domain %s started.\n",	ipipe_current_domain->name);
   335 
   335 
   336 
   336 
   337     ipipe_get_sysinfo(&sys_info);
   337     ipipe_get_sysinfo(&sys_info);
   338     ipipe_virtualize_irq(ipipe_current_domain,sys_info.archdep.tmirq,
   338     ipipe_virtualize_irq(ipipe_current_domain,sys_info.archdep.tmirq,