From patchwork Wed Apr 17 09:05:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Eichenberger X-Patchwork-Id: 13633060 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 797A5C4345F for ; Wed, 17 Apr 2024 09:06:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=kvFLHid+DmYjnkpvqyc1vUkzA2fIW1vH1BZtmpn2MiA=; b=1vazPhjoCLy/DQ 7eBPmXmN+bUHbiO+e4cAYhM+TBMnObOv9+la3Rb6UFAenha+ynyY4dllq7k7LItacN6OBpbTFE4/B QBLJmAH4bxuxi1xHkgFvXFXSi4LXoo/fton9epxUecDLFWWNUjSBlUAzLl4q84WHPJoYXIcbq/Hzu jBaWLcrMC6PTVL46zYETnxy9ndGes1s2XFJYGYSdiVxuTmRZdFYdcal6vTXrEgJX1BJD0X1U5rAkY 7WRNOj+goUDRuzlFKhBUigIW9u4lWM4kzRdTyh5CTueQQ6XWMLnAR2YuWJR0viTkYiTXQtZwsedrs TlJ+kqG/zzAdcSwJaPkw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rx1Ev-0000000FKtC-3h8S; Wed, 17 Apr 2024 09:06:01 +0000 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rx1Eq-0000000FKnx-0YLu for linux-arm-kernel@lists.infradead.org; Wed, 17 Apr 2024 09:06:01 +0000 Received: by mail-ed1-x52c.google.com with SMTP id 4fb4d7f45d1cf-570441bc23bso1900255a12.0 for ; Wed, 17 Apr 2024 02:05:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713344750; x=1713949550; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nVO7Y9spxZltLz0ZKBeWkeuDpaj3ufTmIIyjVVsXg/Y=; b=GilNOSjeqM5zPpHU9eyc0a3VKykzKkJrBESCpqj9CV6BoIlyvgpfpdrrHeV7MTJgy2 D+lZ/wecf8yAnlBA/lggpRPEZRUdsjJYBleoXb0m75Z0bjX0xWlfUL0GBfuxtwp+HuhV DT8J38EMEjjB/CwC0NiKsoUX8/7Mkqouyj1u683OGskms1XBFUSUkowrLNa37B3nC7CH hSBO8epB/vr9Oze/T3AJVrSd98Iy5Nbvo9cNwSLNT1YgXK7R+hM/yTZ5PUmmx4qmTgVo 1ctJQPwq3h+geo2f1lv58ZF5NDmVVxvnqMLuq6TZf9dILwXJGirC9yTobOAJZZBEFCnF QmTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713344750; x=1713949550; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nVO7Y9spxZltLz0ZKBeWkeuDpaj3ufTmIIyjVVsXg/Y=; b=lDTdtdewrHWbcQQ6TcvyC11nD5FAd/xkY38bm3Ev1EmZu73BxwTh8TIYc8v/hAlvb8 sEHkjZzbiuW8vaD9A3fOhI4bFqANH46ZReP/lEaqagtti7glmLHqzXFGpuLWHM0cpggx 7QE/YScG3T3qFdzXEkHahcBl/quQ7NpQRLtnPOmSVh938WfrPMKTjvSTaGqn6gfRjule nBWabEl5iDERrtzOh9hFWfAepgOc0lE7py4uWEkjPhiksPEd4Pm8HlgAO8K/3V/q4UQi SjHknGuPjBxYsIgmzymOGjtOVnqLHvWuNqg8IAwDYdo+lyW9eMj4L/FRTfNTAWcFwgiu NzBA== X-Forwarded-Encrypted: i=1; AJvYcCWTLNvKvqIH9rOtv4mqC6fykHnqvLjccT52Kajg22h50IRDlq49E8mVTOFN2lIQ56DlJy9SZMANwGfj/ML4tsqRy1wNRKkPLUI6Bs7GhC8TYG6X/HU= X-Gm-Message-State: AOJu0Yxoieau+JlNDQbQzHsKdX/BUhVFsiW8d5+1EvYpyn9B4t3w1ohc 3g2mz0v/N7juOmsSU1n8l1mdtwGPDWxrybEGixyVRiupoD8VU5jm X-Google-Smtp-Source: AGHT+IFUkdwpp7ObVakVGgFeNDSzMlYh9htOtwrKqqjylFoa9WsalF+lNzqRVN5BL6pX0/M8DBZwjA== X-Received: by 2002:a17:907:6e87:b0:a52:3d07:de62 with SMTP id sh7-20020a1709076e8700b00a523d07de62mr11939733ejc.58.1713344749669; Wed, 17 Apr 2024 02:05:49 -0700 (PDT) Received: from eichest-laptop.corp.toradex.com (31-10-206-125.static.upc.ch. [31.10.206.125]) by smtp.gmail.com with ESMTPSA id x16-20020a170906135000b00a51a7832a7asm7897814ejb.199.2024.04.17.02.05.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Apr 2024 02:05:49 -0700 (PDT) From: Stefan Eichenberger To: nick@shmanahar.org, dmitry.torokhov@gmail.com, robh@kernel.org, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, nicolas.ferre@microchip.com, alexandre.belloni@bootlin.com, claudiu.beznea@tuxon.dev, linus.walleij@linaro.org Cc: linux-input@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Stefan Eichenberger Subject: [PATCH v4 2/4] Input: atmel_mxt_ts - move calls to register the input device to separate function Date: Wed, 17 Apr 2024 11:05:25 +0200 Message-Id: <20240417090527.15357-3-eichest@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20240417090527.15357-1-eichest@gmail.com> References: <20240417090527.15357-1-eichest@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240417_020556_226809_DC65ACD5 X-CRM114-Status: GOOD ( 17.07 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Stefan Eichenberger The calls to register the input device are moved to a separate function so that we can call it without having to confiugre the device. This is necessary if we want to power on the device only when it is opened. Signed-off-by: Stefan Eichenberger --- drivers/input/touchscreen/atmel_mxt_ts.c | 34 +++++++++++++++++------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c index 52867ce3b9b6..7c807d1f1f9b 100644 --- a/drivers/input/touchscreen/atmel_mxt_ts.c +++ b/drivers/input/touchscreen/atmel_mxt_ts.c @@ -2277,6 +2277,28 @@ static void mxt_config_cb(const struct firmware *cfg, void *ctx) release_firmware(cfg); } +static void mxt_debug_init(struct mxt_data *data); + +static int mxt_device_register(struct mxt_data *data) +{ + int error; + + /* If input device is not already registered */ + if (!data->input_dev) { + if (data->multitouch) { + error = mxt_initialize_input_device(data); + if (error) + return error; + } else { + dev_warn(&data->client->dev, "No touch object detected\n"); + } + + mxt_debug_init(data); + } + + return 0; +} + static int mxt_initialize(struct mxt_data *data) { struct i2c_client *client = data->client; @@ -2831,15 +2853,9 @@ static int mxt_configure_objects(struct mxt_data *data, dev_warn(dev, "Error %d updating config\n", error); } - if (data->multitouch) { - error = mxt_initialize_input_device(data); - if (error) - return error; - } else { - dev_warn(dev, "No touch object detected\n"); - } - - mxt_debug_init(data); + error = mxt_device_register(data); + if (error) + return error; return 0; }