carl9170 firmware: introduce __noreturn attribute
authorChristian Lamparter <chunkeey@googlemail.com>
Thu, 30 Sep 2010 15:34:47 +0000 (17:34 +0200)
committerChristian Lamparter <chunkeey@googlemail.com>
Thu, 30 Sep 2010 15:34:47 +0000 (17:34 +0200)
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
carlfw/include/usb.h
carlfw/src/main.c
carlfw/usb/main.c
include/linux/compiler.h

index 1fb9e82a70ad6dc55110d9054d9db97ecfe1247d..3f35567f8b9910133cb45fb401a28c56ab39a859 100644 (file)
@@ -162,7 +162,7 @@ static inline void usb_structure_check(void)
        BUILD_BUG_ON(sizeof(struct usb_interface_descriptor) != USB_DT_INTERFACE_SIZE);
 }
 
-void __attribute__((noreturn)) jump_to_bootcode(void);
+void __noreturn jump_to_bootcode(void);
 
 void send_cmd_to_host(const uint8_t len, const uint8_t type,
                      const uint8_t ext, const uint8_t *body);
@@ -180,7 +180,7 @@ void usb_print_hex_dump(const void *buf, int len);
 void usb_init_highspeed_fifo_cfg(void);
 void usb_init_fullspeed_fifo_cfg(void);
 
-void start(void);
-void __attribute__((noreturn)) reboot(void);
+void __noreturn start(void);
+void __noreturn reboot(void);
 
 #endif /* __CARL9170FW_USB_H */
index 3efa6a8fe5383939e3000c7c036b4739d66a1a59..9500c0d26720bcb4d43f409e790048669788ae01 100644 (file)
@@ -85,7 +85,7 @@ static void handle_fw(void)
                reboot();
 }
 
-static void __attribute__((noreturn)) main_loop(void)
+static void __noreturn main_loop(void)
 {
        /* main loop */
        while (1) {
@@ -117,7 +117,7 @@ static void __attribute__((noreturn)) main_loop(void)
  * we put _start() there with the linker script carl9170.lds.
  */
 
-void __attribute__((noreturn)) start(void)
+void start(void)
 {
        clock_set(true, AHB_40MHZ_OSC);
 
index 1a966256e2989decba5ff9be1b87fd609d71cdb5..57f75a44162f93635161182b7a8cc5013f3d1fdd 100644 (file)
@@ -270,7 +270,7 @@ static void turn_power_off(void)
        set(AR9170_PHY_REG_ADC_SERIAL_CTL, AR9170_PHY_ADC_SCTL_SEL_INTERNAL_ADDAC);
 }
 
-void __attribute__((noreturn)) reboot(void)
+void __noreturn reboot(void)
 {
        /* write watchdog magic pattern for suspend  */
        andl(AR9170_PWR_REG_WATCH_DOG_MAGIC, 0xffff);
index fe04cc6f9bfb7181ffc365d99bd634845da62c6a..ec4edf7f66dde9c378cad379c021f4d2173ba5a9 100644 (file)
@@ -18,6 +18,7 @@
 #define __SHARED_COMPILER_H
 
 #define __noinline     __attribute__((noinline))
+#define __noreturn     __attribute__((noreturn))
 #define __inline       __attribute__((always_inline))
 #define __hot          __attribute__((hot))
 #define __cold         __attribute__((cold))