瀏覽代碼

ARM: SAMSUNG: fix suspend/resume on if some GPIO banks not present

When saving GPIOs during suspend/resume we need skip missing GPIO banks, not
trying get corresponding chip again and again in infinite loop.

Signed-off-by: Jiri Pinkava <jiri.pinkava@vscht.cz>
[ben-linux@fluff.org: shorten subject]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Pinkava J 15 年之前
父節點
當前提交
91dc74e479
共有 1 個文件被更改,包括 6 次插入2 次删除
  1. 6 2
      arch/arm/plat-samsung/pm-gpio.c

+ 6 - 2
arch/arm/plat-samsung/pm-gpio.c

@@ -331,8 +331,10 @@ void s3c_pm_save_gpios(void)
 
 	for (gpio_nr = 0; gpio_nr < S3C_GPIO_END;) {
 		ourchip = s3c_gpiolib_getchip(gpio_nr);
-		if (!ourchip)
+		if (!ourchip) {
+			gpio_nr++;
 			continue;
+		}
 
 		s3c_pm_save_gpio(ourchip);
 
@@ -369,8 +371,10 @@ void s3c_pm_restore_gpios(void)
 
 	for (gpio_nr = 0; gpio_nr < S3C_GPIO_END;) {
 		ourchip = s3c_gpiolib_getchip(gpio_nr);
-		if (!ourchip)
+		if (!ourchip) {
+			gpio_nr++;
 			continue;
+		}
 
 		s3c_pm_resume_gpio(ourchip);