Received: by 2002:a05:6512:3d0e:0:0:0:0 with SMTP id d14csp51196lfv; Tue, 12 Apr 2022 16:55:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwqmPbJnZC2QnWR7VS0bdmpsZrxueE/Tx9rT5j7EdC1DLhcn88rJHcRB+j1M8uCtnxRQ+TR X-Received: by 2002:a65:6a07:0:b0:39d:8c35:426b with SMTP id m7-20020a656a07000000b0039d8c35426bmr5646685pgu.171.1649807723534; Tue, 12 Apr 2022 16:55:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649807723; cv=none; d=google.com; s=arc-20160816; b=X8hptvFXNqRz+OaMM6zHjH+hlwD08OjovzjUNAE4CyRSvpv14ZpKZD2anf4Lkhin0f X9U+w9WhqqTjutF6qiwuxS3+1ySQVoGEvQd3eliDXEHmsIei/jhL4wpkudfe0Y1wkIru M6638gSvxK814/NEP23YnYny7uuK44pPixDYuzLdj61fCF1i6vwcosp8ebV5tkX7Px2M VYQ53jXdOZg6HVKWlxq9mFO84+Ozw/CoDPaSzovKmD6WVM20mhT9toMyCr2T/OVUXwEj 0Y4JVZxX32Bp+eVT3O9Iw7lgZucKLXMF6Wh57+7X5vkPDYWcM5QOATzkAsn2fSvuVFLW vocw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=s4kuvAfzKSlHMC9AlxkKdIxQd8bzKzwJSSH9L3XOgic=; b=n4mLSj9HowV38HxLHoZZ/z0hOINpzrMRdEmlCczwzWCN2SchpOvbNqS4Itvnr2xLG5 BsexGhAh1Ypo/LD0GaI1XGBw3tXp0fnchAgFoXz6m+H6AJLpULiKjmU76Nvhrd7hTX+G mq8WNS25V2cDy2GwZoGJLbbf9xaF03vq7ox78X5BbZvko+SH5v+2BUDNLdOotBLNpf8o JXLM9+V09YWGqD/U0kzfpGWV6XaFNlec8B0mDgph0tdCsA3L/GCYo+wsplvhuIHqVqPL OEgFjTpG47phfYtJJXPzEggHvbVUot/pGZeyneQd/WGV9N2xkBKH2Mz8QLsgv7UVkbTi TxwQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=ehsqCT31; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id f187-20020a636ac4000000b0038201af9a5fsi3943864pgc.53.2022.04.12.16.55.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Apr 2022 16:55:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=ehsqCT31; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 7DFDC11D7BB; Tue, 12 Apr 2022 14:50:09 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1386654AbiDLI6w (ORCPT + 99 others); Tue, 12 Apr 2022 04:58:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46356 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1357042AbiDLHjn (ORCPT ); Tue, 12 Apr 2022 03:39:43 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1D68F165A5; Tue, 12 Apr 2022 00:10:57 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id C8EC2B81895; Tue, 12 Apr 2022 07:10:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 291E9C385A1; Tue, 12 Apr 2022 07:10:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1649747454; bh=75XHWw54css5obuqON8cmpEPngRNcXM5PRhjE/n61S0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ehsqCT31AYccLV1qEKz3UcsrcmwFLWOqWvnQy+kd43AHZ9i1B5ZiWjcUFV2lBB6r2 2RXSudOH51y1HTKjDfRvwYa71QUdlwg3HwvBz1+w948C2/FQH/eiEASxI+Ik5kZdyq cma1pjZKY5ewLZTEfnzFGtAjnKqoNH/U4+S5saF0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= , Jiri Kosina , Sasha Levin Subject: [PATCH 5.17 085/343] HID: apple: Report Magic Keyboard 2021 with fingerprint reader battery over USB Date: Tue, 12 Apr 2022 08:28:23 +0200 Message-Id: <20220412062953.552831502@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220412062951.095765152@linuxfoundation.org> References: <20220412062951.095765152@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: José Expósito [ Upstream commit cbfcfbfc384890a062a5d0cc4792df094a6cc7a8 ] Like the Apple Magic Keyboard 2015, when connected over USB, the 2021 version with fingerprint reader registers 2 different interfaces. One of them is used to report the battery level. However, unlike when connected over Bluetooth, the battery level is not reported automatically and it is required to fetch it manually. Add the APPLE_RDESC_BATTERY quirk to fix the battery report descriptor and manually fetch the battery level. Tested with the ANSI variant of the keyboard with and without numpad. Signed-off-by: José Expósito Signed-off-by: Jiri Kosina Signed-off-by: Sasha Levin --- drivers/hid/hid-apple.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c index 18de4ccb0fb2..590376d776a1 100644 --- a/drivers/hid/hid-apple.c +++ b/drivers/hid/hid-apple.c @@ -752,11 +752,11 @@ static const struct hid_device_id apple_devices[] = { { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021), .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK }, { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021), - .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK }, + .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_RDESC_BATTERY }, { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_FINGERPRINT_2021), .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK }, { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2021), - .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK }, + .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK | APPLE_RDESC_BATTERY }, { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_NUMPAD_2021), .driver_data = APPLE_HAS_FN | APPLE_ISO_TILDE_QUIRK }, -- 2.35.1