]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
board: samsung: covert to driver model about power_key_pressed
authorJaehoon Chung <jh80.chung@samsung.com>
Mon, 22 Feb 2021 22:28:22 +0000 (07:28 +0900)
committerMinkyu Kang <mk7.kang@samsung.com>
Tue, 23 Feb 2021 06:43:13 +0000 (15:43 +0900)
Convert to driver model about power_key_pressed.

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
board/samsung/common/misc.c

index d48ba7eaf0b0509d6fa206f9ba0b4afdc2504a8e..b3b1bbcc820ae5269c20e6f8fd246b59e9f67e56 100644 (file)
@@ -117,32 +117,33 @@ void set_board_info(void)
 #ifdef CONFIG_LCD_MENU
 static int power_key_pressed(u32 reg)
 {
-#if !CONFIG_IS_ENABLED(DM_I2C) /* TODO(maintainer): Convert to driver model */
-       struct pmic *pmic;
+       struct udevice *dev;
+       int ret;
        u32 status;
        u32 mask;
 
-       pmic = pmic_get(KEY_PWR_PMIC_NAME);
-       if (!pmic) {
-               printf("%s: Not found\n", KEY_PWR_PMIC_NAME);
+       if (IS_ENABLED(CONFIG_TARGET_TRATS))
+               ret = pmic_get("max8997-pmic", &dev);
+       else if (IS_ENABLED(CONFIG_TARGET_TRATS2))
+               ret = pmic_get("max77686-pmic", &dev);
+       else if (IS_ENABLED(CONFIG_TARGET_S5PC210_UNIVERSAL))
+               ret = pmic_get("max8998-pmic", &dev);
+       else
                return 0;
-       }
 
-       if (pmic_probe(pmic))
-               return 0;
+       if (ret)
+               return ret;
 
        if (reg == KEY_PWR_STATUS_REG)
                mask = KEY_PWR_STATUS_MASK;
        else
                mask = KEY_PWR_INTERRUPT_MASK;
 
-       if (pmic_reg_read(pmic, reg, &status))
-               return 0;
+       status = pmic_reg_read(dev, reg);
+       if (status < 0)
+               return status;
 
        return !!(status & mask);
-#else
-       return 0;
-#endif
 }
 
 static int key_pressed(int key)