From 550bcca6021f475d4ad7dd2c73d6bc4b5a93f94a Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Fri, 21 Jun 2013 13:37:23 -0500 Subject: lynxpoint: provide gpio_is_native() There's a need to determine if a specific gpio pin is is set up to be a native function or not. Implement this. Change-Id: I91d57a549e0f4fddc0b1849e5f74320fc839642c Signed-off-by: Aaron Durbin Reviewed-on: https://gerrit.chromium.org/gerrit/59589 Reviewed-by: Duncan Laurie Reviewed-on: http://review.coreboot.org/4324 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich --- src/southbridge/intel/lynxpoint/lp_gpio.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/southbridge/intel/lynxpoint/lp_gpio.c') diff --git a/src/southbridge/intel/lynxpoint/lp_gpio.c b/src/southbridge/intel/lynxpoint/lp_gpio.c index 7d1a28d73c..cb052b22c3 100644 --- a/src/southbridge/intel/lynxpoint/lp_gpio.c +++ b/src/southbridge/intel/lynxpoint/lp_gpio.c @@ -159,3 +159,10 @@ void set_gpio(int gpio_num, int value) conf0 |= value << GPO_LEVEL_SHIFT; outl(conf0, gpio_base + GPIO_CONFIG0(gpio_num)); } + +int gpio_is_native(int gpio_num) +{ + u16 gpio_base = get_gpio_base(); + + return !(inl(gpio_base + GPIO_CONFIG0(gpio_num)) & 1); +} -- cgit v1.2.3