From nobody Wed Oct 8 10:05:20 2025 Received: from mx.treblig.org (mx.treblig.org [46.235.229.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 66DD220E71D; Sun, 29 Jun 2025 21:28:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=46.235.229.95 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751232509; cv=none; b=eVVi6rn1bC5LgZHbp1Wg1HGNxvc2n4P5QdmvFJykYNo896qkto5LpscY7/0Op5+Kk+SkBeo+KzeP5kA6joU6Vjyq+k8+qocEfO4ugNvfeQJlUpjnfEoxy9A5N3i5h96jVGUthio6Lvt8lNreSJKGZVaylAghi5klfs2IBOScKjA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751232509; c=relaxed/simple; bh=0GDCXP9hPDzJpOpQl6VuCswD1cK7eL0zqx6KEcbSgis=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=di8gzEFHCys3B2eRrvscNWnR62KPGLpmNt+cY/x34W+0JvfjrQtD/OqdFBknjlAM4jpXev6PcuxexvyBW+/Q8GcV618j5QgJAdtYVgZO4Noq5z+SwloL+PMReaWz/S/7NIKZl/BB1wYzWmcf1I5IKqPL6MvJ3ODUHnapTvsx5Ls= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=treblig.org; spf=pass smtp.mailfrom=treblig.org; dkim=pass (2048-bit key) header.d=treblig.org header.i=@treblig.org header.b=RDgh0QVc; arc=none smtp.client-ip=46.235.229.95 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=treblig.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=treblig.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=treblig.org header.i=@treblig.org header.b="RDgh0QVc" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=treblig.org ; s=bytemarkmx; h=MIME-Version:Message-ID:Date:Subject:From:Content-Type:From :Subject; bh=VZn7DM19jfl0bs+hbAfDvHbiQxOWB5pW/wl5OJBKaag=; b=RDgh0QVcW0j/vLD3 80fkBJ6NkbwG/IMPhCxiOBRS1fPgeFvxxey7YdPpSbdS5ecBFJDE28dpP2Su+MNAT8CI2Uxwf1pgS ptKhb3Q8NMma5lKf6ciZfSoKXIUZneXZlvQc0cNk9Tzc2OySQX0UlCMVUSV0iOZe3aTw8l15hLFvq AIt+mjwFSFgFAz6HHrKH+jAq2laQt+TzAqHdZf3IwTk8aV6EMU+6ruSOZDj8Kz1fKpUaz2sPPqOQ8 G/ClwTvNwfeQCjSG2EpwvvtzTi4TWGBkeXNAPeuZ7jCHYdtUHdeL5h272IzccilexpAA85KwFyEhM +qSyKcKwxaR6vy0Maw==; Received: from localhost ([127.0.0.1] helo=dalek.home.treblig.org) by mx.treblig.org with esmtp (Exim 4.96) (envelope-from ) id 1uVzZV-00Cqe6-0j; Sun, 29 Jun 2025 21:28:21 +0000 From: linux@treblig.org To: dmitry.torokhov@gmail.com, lee@kernel.org, linux-input@vger.kernel.org, arnd@arndb.de Cc: linux-kernel@vger.kernel.org, "Dr. David Alan Gilbert" Subject: [PATCH] Input: pcf50633-input - Remove Date: Sun, 29 Jun 2025 22:28:20 +0100 Message-ID: <20250629212820.319584-1-linux@treblig.org> X-Mailer: git-send-email 2.50.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Dr. David Alan Gilbert" The pcf50633 was used as part of the OpenMoko devices but the support for its main chip was recently removed in: commit 61b7f8920b17 ("ARM: s3c: remove all s3c24xx support") Remove the input code. This was originally posted as a set of pcf50633 removals in March, and is the only major component that hasn't been picked up. https://lore.kernel.org/all/20250311014959.743322-1-linux@treblig.org/ Signed-off-by: Dr. David Alan Gilbert --- drivers/input/misc/Kconfig | 7 -- drivers/input/misc/Makefile | 1 - drivers/input/misc/pcf50633-input.c | 113 ---------------------------- 3 files changed, 121 deletions(-) delete mode 100644 drivers/input/misc/pcf50633-input.c diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig index f5496ca0c0d2..0fb21c99a5e3 100644 --- a/drivers/input/misc/Kconfig +++ b/drivers/input/misc/Kconfig @@ -584,13 +584,6 @@ config INPUT_PALMAS_PWRBUTTON To compile this driver as a module, choose M here. The module will be called palmas_pwrbutton. =20 -config INPUT_PCF50633_PMU - tristate "PCF50633 PMU events" - depends on MFD_PCF50633 - help - Say Y to include support for delivering PMU events via input - layer on NXP PCF50633. - config INPUT_PCF8574 tristate "PCF8574 Keypad input device" depends on I2C diff --git a/drivers/input/misc/Makefile b/drivers/input/misc/Makefile index 6d91804d0a6f..d468c8140b93 100644 --- a/drivers/input/misc/Makefile +++ b/drivers/input/misc/Makefile @@ -59,7 +59,6 @@ obj-$(CONFIG_INPUT_MC13783_PWRBUTTON) +=3D mc13783-pwrbut= ton.o obj-$(CONFIG_INPUT_MMA8450) +=3D mma8450.o obj-$(CONFIG_INPUT_PALMAS_PWRBUTTON) +=3D palmas-pwrbutton.o obj-$(CONFIG_INPUT_PCAP) +=3D pcap_keys.o -obj-$(CONFIG_INPUT_PCF50633_PMU) +=3D pcf50633-input.o obj-$(CONFIG_INPUT_PCF8574) +=3D pcf8574_keypad.o obj-$(CONFIG_INPUT_PCSPKR) +=3D pcspkr.o obj-$(CONFIG_INPUT_PM8941_PWRKEY) +=3D pm8941-pwrkey.o diff --git a/drivers/input/misc/pcf50633-input.c b/drivers/input/misc/pcf50= 633-input.c deleted file mode 100644 index 6d046e236ba6..000000000000 --- a/drivers/input/misc/pcf50633-input.c +++ /dev/null @@ -1,113 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* NXP PCF50633 Input Driver - * - * (C) 2006-2008 by Openmoko, Inc. - * Author: Balaji Rao - * All rights reserved. - * - * Broken down from monstrous PCF50633 driver mainly by - * Harald Welte, Andy Green and Werner Almesberger - */ - -#include -#include -#include -#include -#include -#include - -#include - -#define PCF50633_OOCSTAT_ONKEY 0x01 -#define PCF50633_REG_OOCSTAT 0x12 -#define PCF50633_REG_OOCMODE 0x10 - -struct pcf50633_input { - struct pcf50633 *pcf; - struct input_dev *input_dev; -}; - -static void -pcf50633_input_irq(int irq, void *data) -{ - struct pcf50633_input *input; - int onkey_released; - - input =3D data; - - /* We report only one event depending on the key press status */ - onkey_released =3D pcf50633_reg_read(input->pcf, PCF50633_REG_OOCSTAT) - & PCF50633_OOCSTAT_ONKEY; - - if (irq =3D=3D PCF50633_IRQ_ONKEYF && !onkey_released) - input_report_key(input->input_dev, KEY_POWER, 1); - else if (irq =3D=3D PCF50633_IRQ_ONKEYR && onkey_released) - input_report_key(input->input_dev, KEY_POWER, 0); - - input_sync(input->input_dev); -} - -static int pcf50633_input_probe(struct platform_device *pdev) -{ - struct pcf50633_input *input; - struct input_dev *input_dev; - int ret; - - - input =3D kzalloc(sizeof(*input), GFP_KERNEL); - if (!input) - return -ENOMEM; - - input_dev =3D input_allocate_device(); - if (!input_dev) { - kfree(input); - return -ENOMEM; - } - - platform_set_drvdata(pdev, input); - input->pcf =3D dev_to_pcf50633(pdev->dev.parent); - input->input_dev =3D input_dev; - - input_dev->name =3D "PCF50633 PMU events"; - input_dev->id.bustype =3D BUS_I2C; - input_dev->evbit[0] =3D BIT(EV_KEY) | BIT(EV_PWR); - set_bit(KEY_POWER, input_dev->keybit); - - ret =3D input_register_device(input_dev); - if (ret) { - input_free_device(input_dev); - kfree(input); - return ret; - } - pcf50633_register_irq(input->pcf, PCF50633_IRQ_ONKEYR, - pcf50633_input_irq, input); - pcf50633_register_irq(input->pcf, PCF50633_IRQ_ONKEYF, - pcf50633_input_irq, input); - - return 0; -} - -static void pcf50633_input_remove(struct platform_device *pdev) -{ - struct pcf50633_input *input =3D platform_get_drvdata(pdev); - - pcf50633_free_irq(input->pcf, PCF50633_IRQ_ONKEYR); - pcf50633_free_irq(input->pcf, PCF50633_IRQ_ONKEYF); - - input_unregister_device(input->input_dev); - kfree(input); -} - -static struct platform_driver pcf50633_input_driver =3D { - .driver =3D { - .name =3D "pcf50633-input", - }, - .probe =3D pcf50633_input_probe, - .remove =3D pcf50633_input_remove, -}; -module_platform_driver(pcf50633_input_driver); - -MODULE_AUTHOR("Balaji Rao "); -MODULE_DESCRIPTION("PCF50633 input driver"); -MODULE_LICENSE("GPL"); -MODULE_ALIAS("platform:pcf50633-input"); --=20 2.50.0