All of lore.kernel.org
 help / color / mirror / Atom feed
* [abelloni:rtc-next 17/17] drivers/rtc/rtc-cmos.c:776:9: error: implicit declaration of function 'acpi_clear_event'
@ 2026-04-07  3:51 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-04-07  3:51 UTC (permalink / raw)
  To: Alexandre Belloni; +Cc: oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git rtc-next
head:   a33bf4b6adf70aa8c8a18a231ea7aed3fd1b3875
commit: a33bf4b6adf70aa8c8a18a231ea7aed3fd1b3875 [17/17] rtc: cmos: Remove redundant include of linux/acpi.h
config: x86_64-randconfig-001-20260404 (https://download.01.org/0day-ci/archive/20260404/202604040603.JCX3Waev-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260404/202604040603.JCX3Waev-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604040603.JCX3Waev-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/rtc/rtc-cmos.c: In function 'rtc_handler':
>> drivers/rtc/rtc-cmos.c:776:9: error: implicit declaration of function 'acpi_clear_event' [-Wimplicit-function-declaration]
     776 |         acpi_clear_event(ACPI_EVENT_RTC);
         |         ^~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:776:26: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     776 |         acpi_clear_event(ACPI_EVENT_RTC);
         |                          ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:776:26: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/rtc/rtc-cmos.c:777:9: error: implicit declaration of function 'acpi_disable_event' [-Wimplicit-function-declaration]
     777 |         acpi_disable_event(ACPI_EVENT_RTC, 0);
         |         ^~~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:778:16: error: 'ACPI_INTERRUPT_HANDLED' undeclared (first use in this function)
     778 |         return ACPI_INTERRUPT_HANDLED;
         |                ^~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_rtc_event_setup':
>> drivers/rtc/rtc-cmos.c:783:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     783 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:786:9: error: implicit declaration of function 'acpi_install_fixed_event_handler' [-Wimplicit-function-declaration]
     786 |         acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:786:42: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     786 |         acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
         |                                          ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_rtc_event_cleanup':
   drivers/rtc/rtc-cmos.c:797:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     797 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:800:9: error: implicit declaration of function 'acpi_remove_fixed_event_handler' [-Wimplicit-function-declaration]
     800 |         acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:800:41: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     800 |         acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
         |                                         ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'rtc_wake_on':
   drivers/rtc/rtc-cmos.c:805:26: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     805 |         acpi_clear_event(ACPI_EVENT_RTC);
         |                          ^~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:806:9: error: implicit declaration of function 'acpi_enable_event' [-Wimplicit-function-declaration]
     806 |         acpi_enable_event(ACPI_EVENT_RTC, 0);
         |         ^~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'rtc_wake_off':
   drivers/rtc/rtc-cmos.c:811:28: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     811 |         acpi_disable_event(ACPI_EVENT_RTC, 0);
         |                            ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_cmos_wake_setup':
   drivers/rtc/rtc-cmos.c:841:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     841 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:850:13: error: 'acpi_gbl_FADT' undeclared (first use in this function)
     850 |         if (acpi_gbl_FADT.month_alarm && !acpi_gbl_FADT.day_alarm) {
         |             ^~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:860:35: error: 'ACPI_FADT_S4_RTC_WAKE' undeclared (first use in this function)
     860 |         if (acpi_gbl_FADT.flags & ACPI_FADT_S4_RTC_WAKE)
         |                                   ^~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'cmos_check_acpi_rtc_status':
>> drivers/rtc/rtc-cmos.c:871:9: error: unknown type name 'acpi_event_status'
     871 |         acpi_event_status rtc_status;
         |         ^~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:872:9: error: unknown type name 'acpi_status'; did you mean 'si_status'?
     872 |         acpi_status status;
         |         ^~~~~~~~~~~
         |         si_status
   drivers/rtc/rtc-cmos.c:874:13: error: 'acpi_gbl_FADT' undeclared (first use in this function)
     874 |         if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
         |             ^~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:874:35: error: 'ACPI_FADT_FIXED_RTC' undeclared (first use in this function)
     874 |         if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
         |                                   ^~~~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:877:18: error: implicit declaration of function 'acpi_get_event_status'; did you mean 'acpi_rtc_event_setup'? [-Wimplicit-function-declaration]
     877 |         status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
         |                  ^~~~~~~~~~~~~~~~~~~~~
         |                  acpi_rtc_event_setup
   drivers/rtc/rtc-cmos.c:877:40: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     877 |         status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
         |                                        ^~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:878:13: error: implicit declaration of function 'ACPI_FAILURE' [-Wimplicit-function-declaration]
     878 |         if (ACPI_FAILURE(status)) {
         |             ^~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:880:33: error: 'ACPI_EVENT_FLAG_SET' undeclared (first use in this function)
     880 |         } else if (rtc_status & ACPI_EVENT_FLAG_SET) {
         |                                 ^~~~~~~~~~~~~~~~~~~


vim +/acpi_clear_event +776 drivers/rtc/rtc-cmos.c

dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  744  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  745  static u32 rtc_handler(void *context)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  746  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  747  	struct device *dev = context;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  748  	struct cmos_rtc *cmos = dev_get_drvdata(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  749  	unsigned char rtc_control = 0;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  750  	unsigned char rtc_intr;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  751  	unsigned long flags;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  752  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  753  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  754  	/*
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  755  	 * Always update rtc irq when ACPI is used as RTC Alarm.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  756  	 * Or else, ACPI SCI is enabled during suspend/resume only,
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  757  	 * update rtc irq in that case.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  758  	 */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  759  	if (cmos_use_acpi_alarm())
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  760  		cmos_interrupt(0, (void *)cmos->rtc);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  761  	else {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  762  		/* Fix me: can we use cmos_interrupt() here as well? */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  763  		spin_lock_irqsave(&rtc_lock, flags);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  764  		if (cmos_rtc.suspend_ctrl)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  765  			rtc_control = CMOS_READ(RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  766  		if (rtc_control & RTC_AIE) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  767  			cmos_rtc.suspend_ctrl &= ~RTC_AIE;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  768  			CMOS_WRITE(rtc_control, RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  769  			rtc_intr = CMOS_READ(RTC_INTR_FLAGS);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  770  			rtc_update_irq(cmos->rtc, 1, rtc_intr);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  771  		}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  772  		spin_unlock_irqrestore(&rtc_lock, flags);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  773  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  774  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  775  	pm_wakeup_hard_event(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @776  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @777  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @778  	return ACPI_INTERRUPT_HANDLED;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  779  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  780  
d13e9ad9f5146f Rafael J. Wysocki 2022-11-09  781  static void acpi_rtc_event_setup(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  782  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @783  	if (acpi_disabled)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  784  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  785  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @786  	acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  787  	/*
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  788  	 * After the RTC handler is installed, the Fixed_RTC event should
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  789  	 * be disabled. Only when the RTC alarm is set will it be enabled.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  790  	 */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  791  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  792  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  793  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  794  
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  795  static void acpi_rtc_event_cleanup(void)
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  796  {
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  797  	if (acpi_disabled)
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  798  		return;
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  799  
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09 @800  	acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  801  }
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  802  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  803  static void rtc_wake_on(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  804  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  805  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @806  	acpi_enable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  807  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  808  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  809  static void rtc_wake_off(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  810  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  811  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  812  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  813  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  814  #ifdef CONFIG_X86
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  815  static void use_acpi_alarm_quirks(void)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  816  {
3d762e21d56370 Mario Limonciello 2023-11-06  817  	switch (boot_cpu_data.x86_vendor) {
3d762e21d56370 Mario Limonciello 2023-11-06  818  	case X86_VENDOR_INTEL:
3d762e21d56370 Mario Limonciello 2023-11-06  819  		if (dmi_get_bios_year() < 2015)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  820  			return;
3d762e21d56370 Mario Limonciello 2023-11-06  821  		break;
3d762e21d56370 Mario Limonciello 2023-11-06  822  	case X86_VENDOR_AMD:
3d762e21d56370 Mario Limonciello 2023-11-06  823  	case X86_VENDOR_HYGON:
3d762e21d56370 Mario Limonciello 2023-11-06  824  		if (dmi_get_bios_year() < 2021)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  825  			return;
3d762e21d56370 Mario Limonciello 2023-11-06  826  		break;
3d762e21d56370 Mario Limonciello 2023-11-06  827  	default:
3d762e21d56370 Mario Limonciello 2023-11-06  828  		return;
3d762e21d56370 Mario Limonciello 2023-11-06  829  	}
3d762e21d56370 Mario Limonciello 2023-11-06  830  	if (!is_hpet_enabled())
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  831  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  832  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  833  	use_acpi_alarm = true;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  834  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  835  #else
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  836  static inline void use_acpi_alarm_quirks(void) { }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  837  #endif
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  838  
d13e9ad9f5146f Rafael J. Wysocki 2022-11-09  839  static void acpi_cmos_wake_setup(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  840  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  841  	if (acpi_disabled)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  842  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  843  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  844  	use_acpi_alarm_quirks();
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  845  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  846  	cmos_rtc.wake_on = rtc_wake_on;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  847  	cmos_rtc.wake_off = rtc_wake_off;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  848  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  849  	/* ACPI tables bug workaround. */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @850  	if (acpi_gbl_FADT.month_alarm && !acpi_gbl_FADT.day_alarm) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  851  		dev_dbg(dev, "bogus FADT month_alarm (%d)\n",
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  852  			acpi_gbl_FADT.month_alarm);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  853  		acpi_gbl_FADT.month_alarm = 0;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  854  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  855  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  856  	cmos_rtc.day_alrm = acpi_gbl_FADT.day_alarm;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  857  	cmos_rtc.mon_alrm = acpi_gbl_FADT.month_alarm;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  858  	cmos_rtc.century = acpi_gbl_FADT.century;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  859  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @860  	if (acpi_gbl_FADT.flags & ACPI_FADT_S4_RTC_WAKE)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  861  		dev_info(dev, "RTC can wake from S4\n");
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  862  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  863  	/* RTC always wakes from S1/S2/S3, and often S4/STD */
8c28c4993f117e Wolfram Sang      2024-12-17  864  	device_init_wakeup(dev, true);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  865  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  866  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  867  static void cmos_check_acpi_rtc_status(struct device *dev,
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  868  					      unsigned char *rtc_control)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  869  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  870  	struct cmos_rtc *cmos = dev_get_drvdata(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @871  	acpi_event_status rtc_status;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @872  	acpi_status status;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  873  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @874  	if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  875  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  876  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @877  	status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @878  	if (ACPI_FAILURE(status)) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  879  		dev_err(dev, "Could not get RTC status\n");
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @880  	} else if (rtc_status & ACPI_EVENT_FLAG_SET) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  881  		unsigned char mask;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  882  		*rtc_control &= ~RTC_AIE;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  883  		CMOS_WRITE(*rtc_control, RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  884  		mask = CMOS_READ(RTC_INTR_FLAGS);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  885  		rtc_update_irq(cmos->rtc, 1, mask);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  886  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  887  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  888  

:::::: The code at line 776 was first introduced by commit
:::::: dca4d3b71c8a09a16951add656711fbd6f5bfbb0 rtc: cmos: Eliminate forward declarations of some functions

:::::: TO: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
:::::: CC: Alexandre Belloni <alexandre.belloni@bootlin.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 2+ messages in thread
* [abelloni:rtc-next 17/17] drivers/rtc/rtc-cmos.c:776:9: error: implicit declaration of function 'acpi_clear_event'
@ 2026-04-03 21:04 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-04-03 21:04 UTC (permalink / raw)
  To: Alexandre Belloni; +Cc: oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git rtc-next
head:   a33bf4b6adf70aa8c8a18a231ea7aed3fd1b3875
commit: a33bf4b6adf70aa8c8a18a231ea7aed3fd1b3875 [17/17] rtc: cmos: Remove redundant include of linux/acpi.h
config: x86_64-rhel-9.4 (https://download.01.org/0day-ci/archive/20260403/202604032226.TPEKkUt6-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260403/202604032226.TPEKkUt6-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604032226.TPEKkUt6-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/rtc/rtc-cmos.c: In function 'rtc_handler':
>> drivers/rtc/rtc-cmos.c:776:9: error: implicit declaration of function 'acpi_clear_event' [-Wimplicit-function-declaration]
     776 |         acpi_clear_event(ACPI_EVENT_RTC);
         |         ^~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:776:26: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     776 |         acpi_clear_event(ACPI_EVENT_RTC);
         |                          ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:776:26: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/rtc/rtc-cmos.c:777:9: error: implicit declaration of function 'acpi_disable_event' [-Wimplicit-function-declaration]
     777 |         acpi_disable_event(ACPI_EVENT_RTC, 0);
         |         ^~~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:778:16: error: 'ACPI_INTERRUPT_HANDLED' undeclared (first use in this function)
     778 |         return ACPI_INTERRUPT_HANDLED;
         |                ^~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_rtc_event_setup':
>> drivers/rtc/rtc-cmos.c:783:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     783 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:786:9: error: implicit declaration of function 'acpi_install_fixed_event_handler' [-Wimplicit-function-declaration]
     786 |         acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:786:42: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     786 |         acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
         |                                          ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_rtc_event_cleanup':
   drivers/rtc/rtc-cmos.c:797:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     797 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:800:9: error: implicit declaration of function 'acpi_remove_fixed_event_handler' [-Wimplicit-function-declaration]
     800 |         acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c:800:41: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     800 |         acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
         |                                         ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'rtc_wake_on':
   drivers/rtc/rtc-cmos.c:805:26: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     805 |         acpi_clear_event(ACPI_EVENT_RTC);
         |                          ^~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:806:9: error: implicit declaration of function 'acpi_enable_event' [-Wimplicit-function-declaration]
     806 |         acpi_enable_event(ACPI_EVENT_RTC, 0);
         |         ^~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'rtc_wake_off':
   drivers/rtc/rtc-cmos.c:811:28: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     811 |         acpi_disable_event(ACPI_EVENT_RTC, 0);
         |                            ^~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'acpi_cmos_wake_setup':
   drivers/rtc/rtc-cmos.c:841:13: error: 'acpi_disabled' undeclared (first use in this function); did you mean 'irqs_disabled'?
     841 |         if (acpi_disabled)
         |             ^~~~~~~~~~~~~
         |             irqs_disabled
>> drivers/rtc/rtc-cmos.c:850:13: error: 'acpi_gbl_FADT' undeclared (first use in this function)
     850 |         if (acpi_gbl_FADT.month_alarm && !acpi_gbl_FADT.day_alarm) {
         |             ^~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:860:35: error: 'ACPI_FADT_S4_RTC_WAKE' undeclared (first use in this function)
     860 |         if (acpi_gbl_FADT.flags & ACPI_FADT_S4_RTC_WAKE)
         |                                   ^~~~~~~~~~~~~~~~~~~~~
   drivers/rtc/rtc-cmos.c: In function 'cmos_check_acpi_rtc_status':
>> drivers/rtc/rtc-cmos.c:871:9: error: unknown type name 'acpi_event_status'
     871 |         acpi_event_status rtc_status;
         |         ^~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:872:9: error: unknown type name 'acpi_status'; did you mean 'si_status'?
     872 |         acpi_status status;
         |         ^~~~~~~~~~~
         |         si_status
   drivers/rtc/rtc-cmos.c:874:13: error: 'acpi_gbl_FADT' undeclared (first use in this function)
     874 |         if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
         |             ^~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:874:35: error: 'ACPI_FADT_FIXED_RTC' undeclared (first use in this function)
     874 |         if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
         |                                   ^~~~~~~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:877:18: error: implicit declaration of function 'acpi_get_event_status'; did you mean 'acpi_rtc_event_setup'? [-Wimplicit-function-declaration]
     877 |         status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
         |                  ^~~~~~~~~~~~~~~~~~~~~
         |                  acpi_rtc_event_setup
   drivers/rtc/rtc-cmos.c:877:40: error: 'ACPI_EVENT_RTC' undeclared (first use in this function)
     877 |         status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
         |                                        ^~~~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:878:13: error: implicit declaration of function 'ACPI_FAILURE' [-Wimplicit-function-declaration]
     878 |         if (ACPI_FAILURE(status)) {
         |             ^~~~~~~~~~~~
>> drivers/rtc/rtc-cmos.c:880:33: error: 'ACPI_EVENT_FLAG_SET' undeclared (first use in this function)
     880 |         } else if (rtc_status & ACPI_EVENT_FLAG_SET) {
         |                                 ^~~~~~~~~~~~~~~~~~~


vim +/acpi_clear_event +776 drivers/rtc/rtc-cmos.c

dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  744  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  745  static u32 rtc_handler(void *context)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  746  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  747  	struct device *dev = context;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  748  	struct cmos_rtc *cmos = dev_get_drvdata(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  749  	unsigned char rtc_control = 0;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  750  	unsigned char rtc_intr;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  751  	unsigned long flags;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  752  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  753  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  754  	/*
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  755  	 * Always update rtc irq when ACPI is used as RTC Alarm.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  756  	 * Or else, ACPI SCI is enabled during suspend/resume only,
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  757  	 * update rtc irq in that case.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  758  	 */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  759  	if (cmos_use_acpi_alarm())
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  760  		cmos_interrupt(0, (void *)cmos->rtc);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  761  	else {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  762  		/* Fix me: can we use cmos_interrupt() here as well? */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  763  		spin_lock_irqsave(&rtc_lock, flags);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  764  		if (cmos_rtc.suspend_ctrl)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  765  			rtc_control = CMOS_READ(RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  766  		if (rtc_control & RTC_AIE) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  767  			cmos_rtc.suspend_ctrl &= ~RTC_AIE;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  768  			CMOS_WRITE(rtc_control, RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  769  			rtc_intr = CMOS_READ(RTC_INTR_FLAGS);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  770  			rtc_update_irq(cmos->rtc, 1, rtc_intr);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  771  		}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  772  		spin_unlock_irqrestore(&rtc_lock, flags);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  773  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  774  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  775  	pm_wakeup_hard_event(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @776  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @777  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @778  	return ACPI_INTERRUPT_HANDLED;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  779  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  780  
d13e9ad9f5146f Rafael J. Wysocki 2022-11-09  781  static void acpi_rtc_event_setup(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  782  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @783  	if (acpi_disabled)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  784  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  785  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @786  	acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  787  	/*
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  788  	 * After the RTC handler is installed, the Fixed_RTC event should
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  789  	 * be disabled. Only when the RTC alarm is set will it be enabled.
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  790  	 */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  791  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  792  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  793  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  794  
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  795  static void acpi_rtc_event_cleanup(void)
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  796  {
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  797  	if (acpi_disabled)
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  798  		return;
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  799  
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09 @800  	acpi_remove_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler);
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  801  }
83ebb7b3036d15 Rafael J. Wysocki 2022-11-09  802  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  803  static void rtc_wake_on(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  804  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  805  	acpi_clear_event(ACPI_EVENT_RTC);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @806  	acpi_enable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  807  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  808  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  809  static void rtc_wake_off(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  810  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  811  	acpi_disable_event(ACPI_EVENT_RTC, 0);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  812  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  813  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  814  #ifdef CONFIG_X86
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  815  static void use_acpi_alarm_quirks(void)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  816  {
3d762e21d56370 Mario Limonciello 2023-11-06  817  	switch (boot_cpu_data.x86_vendor) {
3d762e21d56370 Mario Limonciello 2023-11-06  818  	case X86_VENDOR_INTEL:
3d762e21d56370 Mario Limonciello 2023-11-06  819  		if (dmi_get_bios_year() < 2015)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  820  			return;
3d762e21d56370 Mario Limonciello 2023-11-06  821  		break;
3d762e21d56370 Mario Limonciello 2023-11-06  822  	case X86_VENDOR_AMD:
3d762e21d56370 Mario Limonciello 2023-11-06  823  	case X86_VENDOR_HYGON:
3d762e21d56370 Mario Limonciello 2023-11-06  824  		if (dmi_get_bios_year() < 2021)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  825  			return;
3d762e21d56370 Mario Limonciello 2023-11-06  826  		break;
3d762e21d56370 Mario Limonciello 2023-11-06  827  	default:
3d762e21d56370 Mario Limonciello 2023-11-06  828  		return;
3d762e21d56370 Mario Limonciello 2023-11-06  829  	}
3d762e21d56370 Mario Limonciello 2023-11-06  830  	if (!is_hpet_enabled())
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  831  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  832  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  833  	use_acpi_alarm = true;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  834  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  835  #else
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  836  static inline void use_acpi_alarm_quirks(void) { }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  837  #endif
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  838  
d13e9ad9f5146f Rafael J. Wysocki 2022-11-09  839  static void acpi_cmos_wake_setup(struct device *dev)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  840  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  841  	if (acpi_disabled)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  842  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  843  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  844  	use_acpi_alarm_quirks();
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  845  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  846  	cmos_rtc.wake_on = rtc_wake_on;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  847  	cmos_rtc.wake_off = rtc_wake_off;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  848  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  849  	/* ACPI tables bug workaround. */
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @850  	if (acpi_gbl_FADT.month_alarm && !acpi_gbl_FADT.day_alarm) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  851  		dev_dbg(dev, "bogus FADT month_alarm (%d)\n",
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  852  			acpi_gbl_FADT.month_alarm);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  853  		acpi_gbl_FADT.month_alarm = 0;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  854  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  855  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  856  	cmos_rtc.day_alrm = acpi_gbl_FADT.day_alarm;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  857  	cmos_rtc.mon_alrm = acpi_gbl_FADT.month_alarm;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  858  	cmos_rtc.century = acpi_gbl_FADT.century;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  859  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @860  	if (acpi_gbl_FADT.flags & ACPI_FADT_S4_RTC_WAKE)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  861  		dev_info(dev, "RTC can wake from S4\n");
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  862  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  863  	/* RTC always wakes from S1/S2/S3, and often S4/STD */
8c28c4993f117e Wolfram Sang      2024-12-17  864  	device_init_wakeup(dev, true);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  865  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  866  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  867  static void cmos_check_acpi_rtc_status(struct device *dev,
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  868  					      unsigned char *rtc_control)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  869  {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  870  	struct cmos_rtc *cmos = dev_get_drvdata(dev);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @871  	acpi_event_status rtc_status;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @872  	acpi_status status;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  873  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @874  	if (acpi_gbl_FADT.flags & ACPI_FADT_FIXED_RTC)
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  875  		return;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  876  
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @877  	status = acpi_get_event_status(ACPI_EVENT_RTC, &rtc_status);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @878  	if (ACPI_FAILURE(status)) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  879  		dev_err(dev, "Could not get RTC status\n");
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09 @880  	} else if (rtc_status & ACPI_EVENT_FLAG_SET) {
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  881  		unsigned char mask;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  882  		*rtc_control &= ~RTC_AIE;
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  883  		CMOS_WRITE(*rtc_control, RTC_CONTROL);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  884  		mask = CMOS_READ(RTC_INTR_FLAGS);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  885  		rtc_update_irq(cmos->rtc, 1, mask);
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  886  	}
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  887  }
dca4d3b71c8a09 Rafael J. Wysocki 2022-11-09  888  

:::::: The code at line 776 was first introduced by commit
:::::: dca4d3b71c8a09a16951add656711fbd6f5bfbb0 rtc: cmos: Eliminate forward declarations of some functions

:::::: TO: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
:::::: CC: Alexandre Belloni <alexandre.belloni@bootlin.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-04-07  3:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-07  3:51 [abelloni:rtc-next 17/17] drivers/rtc/rtc-cmos.c:776:9: error: implicit declaration of function 'acpi_clear_event' kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2026-04-03 21:04 kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.