From 0f9d23ea98fe66deb716c07ffb9005e8261048a2 Mon Sep 17 00:00:00 2001 From: Joseph Chen Date: Sat, 27 Jul 2019 17:10:27 +0800 Subject: [PATCH] dm: key: allow power key to skip irq handler init At sometime, its parent driver would setup the main interrupt(e.g. PMIC). Change-Id: I8d24266c48f515fc92c3529a5b6aa7a18d181af1 Signed-off-by: Joseph Chen --- drivers/input/key-uclass.c | 3 +++ include/key.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/drivers/input/key-uclass.c b/drivers/input/key-uclass.c index 5c74ca1c6a..46bcb30a34 100644 --- a/drivers/input/key-uclass.c +++ b/drivers/input/key-uclass.c @@ -274,6 +274,9 @@ static int key_post_probe(struct udevice *dev) #ifdef CONFIG_IRQ int irq; + if (uc_key->skip_irq_init) + return 0; + irq = phandle_gpio_to_irq(uc_key->gpios[0], uc_key->gpios[1]); if (irq < 0) { diff --git a/include/key.h b/include/key.h index ad7bc1ad49..4692c4ca11 100644 --- a/include/key.h +++ b/include/key.h @@ -47,6 +47,8 @@ struct dm_key_uclass_platdata { u32 trig_cnt; + int skip_irq_init; + /* Only for pwrkey gpio irq */ void (*irq_thread)(int irq, struct udevice *dev); };