thinkpad_acpi: add the ability setting TPACPI_LED_NONE by quirk
Some new Lenovo or ThinkPad laptops don't have EC controllable LEDs, their LED quirks are 0. This patch set led_supported=TPACPI_LED_NONE when quirk equals 0. Signed-off-by: Adam Lee <adam.lee@canonical.com> Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
This commit is contained in:
		
					parent
					
						
							
								edf2d7780d
							
						
					
				
			
			
				commit
				
					
						fcb44e12d3
					
				
			
		
					 1 changed files with 10 additions and 3 deletions
				
			
		| 
						 | 
					@ -5296,6 +5296,16 @@ static int __init led_init(struct ibm_init_struct *iibm)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	led_supported = led_init_detect_mode();
 | 
						led_supported = led_init_detect_mode();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (led_supported != TPACPI_LED_NONE) {
 | 
				
			||||||
 | 
							useful_leds = tpacpi_check_quirks(led_useful_qtable,
 | 
				
			||||||
 | 
									ARRAY_SIZE(led_useful_qtable));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (!useful_leds) {
 | 
				
			||||||
 | 
								led_handle = NULL;
 | 
				
			||||||
 | 
								led_supported = TPACPI_LED_NONE;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	vdbg_printk(TPACPI_DBG_INIT, "LED commands are %s, mode %d\n",
 | 
						vdbg_printk(TPACPI_DBG_INIT, "LED commands are %s, mode %d\n",
 | 
				
			||||||
		str_supported(led_supported), led_supported);
 | 
							str_supported(led_supported), led_supported);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5309,9 +5319,6 @@ static int __init led_init(struct ibm_init_struct *iibm)
 | 
				
			||||||
		return -ENOMEM;
 | 
							return -ENOMEM;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	useful_leds = tpacpi_check_quirks(led_useful_qtable,
 | 
					 | 
				
			||||||
					  ARRAY_SIZE(led_useful_qtable));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	for (i = 0; i < TPACPI_LED_NUMLEDS; i++) {
 | 
						for (i = 0; i < TPACPI_LED_NUMLEDS; i++) {
 | 
				
			||||||
		tpacpi_leds[i].led = -1;
 | 
							tpacpi_leds[i].led = -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue