mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 16:38:31 +00:00 
			
		
		
		
	 c8a06c1ef0
			
		
	
	
		c8a06c1ef0
		
	
	
	
	
		
			
			On embedded devices, sleep mode conditions can be tricky to handle, Especially when processors tend to pull-down the w1 bus during sleep. Bus slaves (such as the ds2760) may interpret this as a reason for power-down conditions and entirely switch off the device. This patch adds a callback function pointer to let users switch on and off the external pull-up resistor. This lets the outside world know whether the processor is currently actively driving the bus or not. When this callback is not provided, the code behaviour won't change. Signed-off-by: Daniel Mack <daniel@caiaq.de> Acked-by: Ville Syrjala <syrjala@sci.fi> Acked-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
		
			
				
	
	
		
			25 lines
		
	
	
		
			661 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			661 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * w1-gpio interface to platform code
 | |
|  *
 | |
|  * Copyright (C) 2007 Ville Syrjala <syrjala@sci.fi>
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or modify
 | |
|  * it under the terms of the GNU General Public License version 2
 | |
|  * as published by the Free Software Foundation.
 | |
|  */
 | |
| #ifndef _LINUX_W1_GPIO_H
 | |
| #define _LINUX_W1_GPIO_H
 | |
| 
 | |
| /**
 | |
|  * struct w1_gpio_platform_data - Platform-dependent data for w1-gpio
 | |
|  * @pin: GPIO pin to use
 | |
|  * @is_open_drain: GPIO pin is configured as open drain
 | |
|  */
 | |
| struct w1_gpio_platform_data {
 | |
| 	unsigned int pin;
 | |
| 	unsigned int is_open_drain:1;
 | |
| 	void (*enable_external_pullup)(int enable);
 | |
| };
 | |
| 
 | |
| #endif /* _LINUX_W1_GPIO_H */
 |