bt: remove muldiv64()
Originally, timers were ticks based, and it made sense to
add ticks to current time to know when to trigger an alarm.
But since commit:
7447545 change all other clock references to use nanosecond resolution accessors
All timers use nanoseconds and we need to convert ticks to nanoseconds.
As get_ticks_per_sec() is 10^9,
    a = muldiv64(b, get_ticks_per_sec(), 100);
    y = muldiv64(x, get_ticks_per_sec(), 1000000);
can be converted to
    a = b * 10000000;
    y = x * 1000;
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
			
			
This commit is contained in:
		
							parent
							
								
									0a4f9240f5
								
							
						
					
					
						commit
						fdfea124f9
					
				| @ -595,7 +595,7 @@ static void bt_hci_inquiry_result(struct bt_hci_s *hci, | ||||
| static void bt_hci_mod_timer_1280ms(QEMUTimer *timer, int period) | ||||
| { | ||||
|     timer_mod(timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) + | ||||
|                    muldiv64(period << 7, get_ticks_per_sec(), 100)); | ||||
|                      (uint64_t)(period << 7) * 10000000); | ||||
| } | ||||
| 
 | ||||
| static void bt_hci_inquiry_start(struct bt_hci_s *hci, int length) | ||||
| @ -1099,7 +1099,7 @@ static int bt_hci_mode_change(struct bt_hci_s *hci, uint16_t handle, | ||||
|     bt_hci_event_status(hci, HCI_SUCCESS); | ||||
| 
 | ||||
|     timer_mod(link->acl_mode_timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) + | ||||
|                    muldiv64(interval * 625, get_ticks_per_sec(), 1000000)); | ||||
|                                     ((uint64_t)interval * 625) * 1000); | ||||
|     bt_hci_lmp_mode_change_master(hci, link->link, mode, interval); | ||||
| 
 | ||||
|     return 0; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Laurent Vivier
						Laurent Vivier