Do not set RTC frequency if already set (Aurelien Jarno).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3954 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									c717d8bf13
								
							
						
					
					
						commit
						b5a23ad40c
					
				
							
								
								
									
										5
									
								
								vl.c
								
								
								
								
							
							
						
						
									
										5
									
								
								vl.c
								
								
								
								
							| 
						 | 
				
			
			@ -1305,11 +1305,14 @@ static void hpet_stop_timer(struct qemu_alarm_timer *t)
 | 
			
		|||
static int rtc_start_timer(struct qemu_alarm_timer *t)
 | 
			
		||||
{
 | 
			
		||||
    int rtc_fd;
 | 
			
		||||
    unsigned long current_rtc_freq = 0;
 | 
			
		||||
 | 
			
		||||
    TFR(rtc_fd = open("/dev/rtc", O_RDONLY));
 | 
			
		||||
    if (rtc_fd < 0)
 | 
			
		||||
        return -1;
 | 
			
		||||
    if (ioctl(rtc_fd, RTC_IRQP_SET, RTC_FREQ) < 0) {
 | 
			
		||||
    ioctl(rtc_fd, RTC_IRQP_READ, ¤t_rtc_freq);
 | 
			
		||||
    if (current_rtc_freq != RTC_FREQ &&
 | 
			
		||||
        ioctl(rtc_fd, RTC_IRQP_SET, RTC_FREQ) < 0) {
 | 
			
		||||
        fprintf(stderr, "Could not configure '/dev/rtc' to have a 1024 Hz timer. This is not a fatal\n"
 | 
			
		||||
                "error, but for better emulation accuracy either use a 2.6 host Linux kernel or\n"
 | 
			
		||||
                "type 'echo 1024 > /proc/sys/dev/rtc/max-user-freq' as root.\n");
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue