diff --git a/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c b/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
index 9cbee21e0a5e70f62ee6b29f6099ead63cd7a5ca..74c2ecaa2edba76a49cce168a2233ecef42d708b 100644
--- a/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
+++ b/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
@@ -509,7 +509,7 @@ static int gpio_keys_polled_probe(struct platform_device *pdev)
 		}
 
 		bdata->can_sleep = gpio_cansleep(gpio);
-		bdata->last_state = 0;
+		bdata->last_state = gpio_button_get_value(button, bdata);
 		bdata->threshold = DIV_ROUND_UP(button->debounce_interval,
 						pdata->poll_interval);
 	}