Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame^] | 1 | #ifndef LED_H |
| 2 | #define LED_H |
| 3 | |
| 4 | #define LED7 0x80 /* top (or furthest right) LED */ |
| 5 | #define LED6 0x40 |
| 6 | #define LED5 0x20 |
| 7 | #define LED4 0x10 |
| 8 | #define LED3 0x08 |
| 9 | #define LED2 0x04 |
| 10 | #define LED1 0x02 |
| 11 | #define LED0 0x01 /* bottom (or furthest left) LED */ |
| 12 | |
| 13 | #define LED_LAN_TX LED0 /* for LAN transmit activity */ |
| 14 | #define LED_LAN_RCV LED1 /* for LAN receive activity */ |
| 15 | #define LED_DISK_IO LED2 /* for disk activity */ |
| 16 | #define LED_HEARTBEAT LED3 /* heartbeat */ |
| 17 | |
| 18 | /* values for pdc_chassis_lcd_info_ret_block.model: */ |
| 19 | #define DISPLAY_MODEL_LCD 0 /* KittyHawk LED or LCD */ |
| 20 | #define DISPLAY_MODEL_NONE 1 /* no LED or LCD */ |
| 21 | #define DISPLAY_MODEL_LASI 2 /* LASI style 8 bit LED */ |
| 22 | #define DISPLAY_MODEL_OLD_ASP 0x7F /* faked: ASP style 8 x 1 bit LED (only very old ASP versions) */ |
| 23 | |
| 24 | #define LED_CMD_REG_NONE 0 /* NULL == no addr for the cmd register */ |
| 25 | |
| 26 | /* register_led_driver() */ |
| 27 | int __init register_led_driver(int model, unsigned long cmd_reg, unsigned long data_reg); |
| 28 | |
| 29 | /* registers the LED regions for procfs */ |
| 30 | void __init register_led_regions(void); |
| 31 | |
| 32 | #ifdef CONFIG_CHASSIS_LCD_LED |
| 33 | /* writes a string to the LCD display (if possible on this h/w) */ |
| 34 | int lcd_print(const char *str); |
| 35 | #else |
| 36 | #define lcd_print(str) |
| 37 | #endif |
| 38 | |
| 39 | /* main LED initialization function (uses PDC) */ |
| 40 | int __init led_init(void); |
| 41 | |
| 42 | #endif /* LED_H */ |