From patchwork Mon Aug 2 14:03:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Basavaraj Natikar X-Patchwork-Id: 491194 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5AE3DC4338F for ; Mon, 2 Aug 2021 14:05:19 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 425B560F51 for ; Mon, 2 Aug 2021 14:05:19 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235560AbhHBOF1 (ORCPT ); Mon, 2 Aug 2021 10:05:27 -0400 Received: from mail-dm6nam11on2068.outbound.protection.outlook.com ([40.107.223.68]:3520 "EHLO NAM11-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S236722AbhHBOET (ORCPT ); Mon, 2 Aug 2021 10:04:19 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SzLnwg7gZK9AxuLVFO45FdFmc12BEMmrfkUqLozlxiJy7ZQf0uFBiTYQoAbj+tgMi/ABnBpv3BiPReNUBMxatX0uyR04AY+D/qdfHUNRlA4C96pkNB6ZZ/55mE38GTN2pP2xr7rbcjyijKg9NyedbDdCd2gC2K9n+Ri/qNWao7+1/PMrcGn4ZLyWDptEJ9g7vc7of/hc1+O4OhO1GSQwJONOQkxys25wakHLkW6+0zlwTK9XMvkXlBn/uvs0MUi96DoewZZIQ7blhrfRaWi2qCG0X81a6bykyiXFRDRpRLwER7nPJgbtH2L0Vw38FJMGP/cXNs82nrAxCb3hGZQc9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/KHwWLqx+hJJXsEdCA04KYdSCDv4kyRH21BeXiIX19E=; b=cCAyvdqRNwxnaahB9C5+kjbVnzrfkFORJMOQK6z5TWUBDqorL4uRojdg9G1zU5z3xuWK+SnFjhXz2F6LsaGT7S3UxuYNr2DLiZNXaTGy9fxn7GnKuJWvx5cRtqNYKHwDjN7Kb3wHHfvCenvSo2iwi3eqxt81DV0I6fLnbZV4DCDLgzMTW2LSi30uR/zm3Z69O2db8VelSjeE7xOd5NUtE6egiN8OAFGP33n0+s3VcclmxAIMEz2QUn9aeMBAIDP2NPB/rnxlcJvgQgjBn6DSf8W6dPwfh/BNRNedIjkC2vDTGsBowk+iCUdzaUKhOzTVUUix8twlxUvmiiVULvxgFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/KHwWLqx+hJJXsEdCA04KYdSCDv4kyRH21BeXiIX19E=; b=GrID8bZ3i0uHFwvJE1ih0Kb+GLJn2/Rd3EHX0tWYXWZiAvPFxJOaCTUs0jqQk/FVw3vsXWEwzEqlCff6c41Cqj9JZEfaDNu1FRCs2ZOPYPQloI5daCZ4+7F1xPMLEHnwwpr71YIo4jgxsUf4kIggew804rK8/JH37OG1ziLJbmU= Received: from DM6PR02CA0128.namprd02.prod.outlook.com (2603:10b6:5:1b4::30) by CY4PR12MB1479.namprd12.prod.outlook.com (2603:10b6:910:d::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.22; Mon, 2 Aug 2021 14:04:07 +0000 Received: from DM6NAM11FT059.eop-nam11.prod.protection.outlook.com (2603:10b6:5:1b4:cafe::28) by DM6PR02CA0128.outlook.office365.com (2603:10b6:5:1b4::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:07 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT059.mail.protection.outlook.com (10.13.172.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:07 +0000 Received: from amd-DAYTONA-X.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 2 Aug 2021 09:04:04 -0500 From: Basavaraj Natikar To: , , CC: , , "Basavaraj Natikar" , Shyam Sundar S K Subject: [PATCH 1/5] amd_sfh:Fix period data field to enable sensor Date: Mon, 2 Aug 2021 19:33:37 +0530 Message-ID: <20210802140341.901840-2-Basavaraj.Natikar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> References: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 12f98b8b-a082-4cdc-4197-08d955be650d X-MS-TrafficTypeDiagnostic: CY4PR12MB1479: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5516; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a+bkVyjMDWS9oyqsHFq7r5+C68THWMywPd5yEBWS7bqpALNvQOSI/7QekfTK13QfbRfJrjF4lKepNyYzv0+BJFwPyVpwMu9MH38aZJAVjJwMm6R+3N+gI9B9KZ2uk0ZNw7IqAkGd0VVUpCgeYrkoFlWTLIt5dmvvTXEHXBCP8h6Vf6TtqqojmhUJN6r6rpTOgtn36J36vhI6/ffN1sSK+yYbSSwk7FxKlNfrxsSpljFaASzFbou7KYp4rScfcGeGViP5pwAPJfW14LODXYc/8NafTNKhVhTwHlok9V+sGM7afdNo9E8VKbIqJn1Xy6cT7sGmYXG3pW0nbEgY2xIfxDY73HidsDiISyUAywDPUOZ7GQClVPC2vWcnBi4+MhBSlsfRvuTax0+QtAYja8X5jiSoFto1PADAK2hSTh9RgzIMpSMEoEoNQSUjk0i13STro7LBrOoYQTo+e5JhkQ6Zg+3o60PfUK0Dnc6OLsStjtKOgKIGcn/1Me6mI5j6A7nLPi2MvGfl9t2g4ShxXZTULQliINvfDIBmeDXzfUl0p+NGAlmi4j8t3IoiWlzzM4AGh4Fu1CFRrYIL5mSNMdoChCCnaXAT3S8t0RV16TxfZ8jEtmTTKo+dK3u+W2X62CBMpoGPo4UEmqSi6841aobstWbTyofOF3gWreJXLIptBGl2BHUqFio/DWED0M0XuSDC6Ll8r7OchHExGaRl2/xeAwdCUyi7UrTBr1sdsnr9IHc= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(4636009)(396003)(39860400002)(376002)(346002)(136003)(46966006)(36840700001)(70206006)(81166007)(426003)(26005)(356005)(4326008)(5660300002)(2906002)(36756003)(82740400003)(70586007)(7696005)(6666004)(2616005)(86362001)(316002)(16526019)(8936002)(82310400003)(186003)(336012)(36860700001)(4744005)(110136005)(1076003)(83380400001)(478600001)(8676002)(54906003)(47076005)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:04:07.6111 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 12f98b8b-a082-4cdc-4197-08d955be650d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT059.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1479 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Existing amd-sfh driver is programming the MP2 firmware period field in units of jiffies, but the MP2 firmware expects in milliseconds unit. Changing it to milliseconds. Fixes: 4b2c53d93a4b ("SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH)") Reviewed-by: Shyam Sundar S K Signed-off-by: Basavaraj Natikar --- drivers/hid/amd-sfh-hid/amd_sfh_client.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_client.c b/drivers/hid/amd-sfh-hid/amd_sfh_client.c index efb849411d25..4710b9aa24a5 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_client.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_client.c @@ -184,7 +184,7 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) rc = -ENOMEM; goto cleanup; } - info.period = msecs_to_jiffies(AMD_SFH_IDLE_LOOP); + info.period = AMD_SFH_IDLE_LOOP; info.sensor_idx = cl_idx; info.dma_address = cl_data->sensor_dma_addr[i]; From patchwork Mon Aug 2 14:03:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Basavaraj Natikar X-Patchwork-Id: 490514 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0765EC432BE for ; Mon, 2 Aug 2021 14:05:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E2C2B610FE for ; Mon, 2 Aug 2021 14:05:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235745AbhHBOFq (ORCPT ); Mon, 2 Aug 2021 10:05:46 -0400 Received: from mail-bn8nam12on2065.outbound.protection.outlook.com ([40.107.237.65]:26401 "EHLO NAM12-BN8-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S236791AbhHBOEW (ORCPT ); Mon, 2 Aug 2021 10:04:22 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TAxZsIUKt23B5fmCV+58uvS2urpFjkfgsKmdocFHMcasTWdvJRaTEadA4QkJeM2r1pp/288/PaXAas2nOR9dXH7SRfgrJYRjmRQsGF1Yjg5jaOfKjVacZG+/BDy8ff3Vh6Zq/XDy8Gan1Rj0pQcQMOkF9piFvSVCYAVUvdHub7P6NF3tYMI1Q/8O4aO39MJjaBDfvRdDaeSiAdUGJCFZfqLLlLBPJ3lbPVkUeTrBvU7GBKUbowXJeNizA+gGH5weUfHSXmYv2M45AC/YtCjEtuhBU4hBOI2y+vy3jJFGoEWFMCCPLoogCMtBfw76kpR5hiu3zvCi0ujDtUIOsQwprQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3JA8mogdrwIZjN5zSJstgspiL0JKY4aaNYl2mVJz9yE=; b=DkxSRmLqeMjRq3S3ASv0yBVfa/LZpBVL21kDY6oCxW3Pf0ZPAlXnh1eUYoyG5CCzg3C9cI7TYjN8Mlcio1FyFWcKpnjjZr1iu8mFLTx6ACFp2Vk86NoDZstT8DyxyuMc6XxR9GYQqVCn/4LNYb5wa1luhdtjZXOmo2DNM06AOpKwjgVh22sBP+A7Cr48WRc85W5RBdC3xrZKUqyq2SEeO8bVksIbRok90ksLiEXuT6okHen3zlB1B0xyLF0KcGeAg+N1yH4WMnKRyhoHgm8vMT3rqJkB5EXq8QJYDVjCPOo5IEsVjDS6P9PoYCEJV1eG0EGDRltWzz3hETf0Hio9Gw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3JA8mogdrwIZjN5zSJstgspiL0JKY4aaNYl2mVJz9yE=; b=OR3K5v/4dv7u9lo3W5s6HCM7gXJ7MVWWsIjdCKbmXV6rdtj+RgZBzS4IR+aQV+Dk8q2cEt/EMHg9i5OzuaTOR3CXpS1vKr4pN/k48gkKQfb+Dm+05nQq4DkNH2FkeBKEsDRKJ6HwsjJRM1pIKoDisHb4AZaAuJEPYjeE5wCJX6M= Received: from DM5PR06CA0067.namprd06.prod.outlook.com (2603:10b6:3:37::29) by MN2PR12MB3935.namprd12.prod.outlook.com (2603:10b6:208:168::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18; Mon, 2 Aug 2021 14:04:11 +0000 Received: from DM6NAM11FT044.eop-nam11.prod.protection.outlook.com (2603:10b6:3:37:cafe::a4) by DM5PR06CA0067.outlook.office365.com (2603:10b6:3:37::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:10 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT044.mail.protection.outlook.com (10.13.173.185) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:10 +0000 Received: from amd-DAYTONA-X.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 2 Aug 2021 09:04:07 -0500 From: Basavaraj Natikar To: , , CC: , , "Basavaraj Natikar" , Shyam Sundar S K Subject: [PATCH 2/5] amd_sfh:Add command response to check command status Date: Mon, 2 Aug 2021 19:33:38 +0530 Message-ID: <20210802140341.901840-3-Basavaraj.Natikar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> References: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: bd8f1b0c-2d94-4462-ef27-08d955be66e8 X-MS-TrafficTypeDiagnostic: MN2PR12MB3935: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1468; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: X9+pMJBmzRV+Hyo2bvI+SskrNvoi+x7ZAsIv3MHif91a4XYKYDo4ykFm7uq0ZpbGGO04na5PG5DYq/Z9OVItjbrYg3tbOuox5WzkrSrIvjoGOllAyHjMLdVUN6vB2x1agArjdL0d/6NIo/peb3ECekLLFM1NPwS6Jy+ZqFA6mIGHKCsg/AvwuoQhVHzBuEwTXSJqOfnbN/WHai8AHYKzv0sgwwaUZ2Cn+7UwCYxp6CQeSR432r3t9avwMnjd8VMam1CN/Erqx746C/7S11ZP+setqrP89BCosS0E9hGxBAmNm97CNet3GxGWLacHk7qdGD+uX5OPiE9+c4DjjKX1Eato+WCVXMX+nnjZwt/hmwJ+SBzmE/QvoApPfnS1NMGksuW797MevCr3jclK/KzbJ1piitdFXhIPYZg+nVBkYqoM9RJletKrhMczqyjUBfPacQnZukoBHeK8xg/lYkTCyhxbqm5Km+300WBhzET9I0mGHdhaGPRLFTIr06v4GbrTtuvcYRyyzC7+rExQ8Jo0IpMW/MdWyxLE84vURzZe8ylGlR3RM7emgQrup1PfbtwgjJ5k+n5pUqzXq68H7dhiJ9jdEu9RmARfuylNZD0DgFCta0zgHcqF663QJw6KKC9EBqnigOgS1+imPI1VScAOuuICh6GH7phzsDvutac+soiDVd69mqxYFs4iWHFVQU8eXworvi4eSRDVNiCgyWoqMJrhP8eD5DuMymgzD5n4srA= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(4636009)(396003)(136003)(346002)(39860400002)(376002)(36840700001)(46966006)(70206006)(81166007)(6666004)(4326008)(36756003)(356005)(86362001)(82740400003)(316002)(83380400001)(82310400003)(26005)(8936002)(336012)(16526019)(186003)(8676002)(5660300002)(70586007)(478600001)(1076003)(7696005)(36860700001)(2906002)(47076005)(2616005)(110136005)(54906003)(426003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:04:10.7325 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bd8f1b0c-2d94-4462-ef27-08d955be66e8 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT044.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB3935 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Sometimes sensor enable/disable may take time, without checking the actual status bits from MP2 FW can lead the amd-sfh to misbehave. Hence add a status check of enable/disable command by waiting on the command response before sending the next command to FW. Reviewed-by: Shyam Sundar S K Signed-off-by: Basavaraj Natikar --- drivers/hid/amd-sfh-hid/amd_sfh_client.c | 40 ++++++++++++++++++------ drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 16 ++++++++++ drivers/hid/amd-sfh-hid/amd_sfh_pcie.h | 18 +++++++++++ 3 files changed, 64 insertions(+), 10 deletions(-) diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_client.c b/drivers/hid/amd-sfh-hid/amd_sfh_client.c index 4710b9aa24a5..b7b66a1eb971 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_client.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_client.c @@ -123,14 +123,24 @@ static void amd_sfh_work_buffer(struct work_struct *work) int i; for (i = 0; i < cli_data->num_hid_devices; i++) { - report_size = get_input_report(i, cli_data->sensor_idx[i], cli_data->report_id[i], - in_data); - hid_input_report(cli_data->hid_sensor_hubs[i], HID_INPUT_REPORT, - in_data->input_report[i], report_size, 0); + if (cli_data->sensor_sts[i] == SENSOR_ENABLED) { + report_size = get_input_report + (i, cli_data->sensor_idx[i], cli_data->report_id[i], in_data); + hid_input_report(cli_data->hid_sensor_hubs[i], HID_INPUT_REPORT, + in_data->input_report[i], report_size, 0); + } } schedule_delayed_work(&cli_data->work_buffer, msecs_to_jiffies(AMD_SFH_IDLE_LOOP)); } +u32 amd_sfh_wait_for_response(struct amd_mp2_dev *mp2, u8 sid, u32 sensor_sts) +{ + if (mp2->mp2_ops->response) + sensor_sts = mp2->mp2_ops->response(mp2, sid, sensor_sts); + + return sensor_sts; +} + int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) { struct amd_input_data *in_data = &privdata->in_data; @@ -139,8 +149,8 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) struct device *dev; u32 feature_report_size; u32 input_report_size; + int rc, i, status; u8 cl_idx; - int rc, i; dev = &privdata->pdev->dev; @@ -155,7 +165,7 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) in_data->sensor_virt_addr[i] = dma_alloc_coherent(dev, sizeof(int) * 8, &cl_data->sensor_dma_addr[i], GFP_KERNEL); - cl_data->sensor_sts[i] = 0; + cl_data->sensor_sts[i] = SENSOR_DISABLED; cl_data->sensor_requested_cnt[i] = 0; cl_data->cur_hid_dev = i; cl_idx = cl_data->sensor_idx[i]; @@ -201,7 +211,10 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) if (rc) return rc; privdata->mp2_ops->start(privdata, info); - cl_data->sensor_sts[i] = 1; + status = amd_sfh_wait_for_response + (privdata, cl_data->sensor_idx[i], SENSOR_ENABLED); + if (status == SENSOR_ENABLED) + cl_data->sensor_sts[i] = SENSOR_ENABLED; } schedule_delayed_work(&cl_data->work_buffer, msecs_to_jiffies(AMD_SFH_IDLE_LOOP)); return 0; @@ -224,10 +237,17 @@ int amd_sfh_hid_client_deinit(struct amd_mp2_dev *privdata) { struct amdtp_cl_data *cl_data = privdata->cl_data; struct amd_input_data *in_data = cl_data->in_data; - int i; + int i, status; - for (i = 0; i < cl_data->num_hid_devices; i++) - privdata->mp2_ops->stop(privdata, i); + for (i = 0; i < cl_data->num_hid_devices; i++) { + if (cl_data->sensor_sts[i] == SENSOR_ENABLED) { + privdata->mp2_ops->stop(privdata, cl_data->sensor_idx[i]); + status = amd_sfh_wait_for_response + (privdata, cl_data->sensor_idx[i], SENSOR_DISABLED); + if (status != SENSOR_ENABLED) + cl_data->sensor_sts[i] = SENSOR_DISABLED; + } + } cancel_delayed_work_sync(&cl_data->work); cancel_delayed_work_sync(&cl_data->work_buffer); diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c index 8d68796aa905..fd2e3011086d 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -31,6 +32,20 @@ static int sensor_mask_override = -1; module_param_named(sensor_mask, sensor_mask_override, int, 0444); MODULE_PARM_DESC(sensor_mask, "override the detected sensors mask"); +static int amd_sfh_wait_response_v2(struct amd_mp2_dev *mp2, u8 sid, u32 sensor_sts) +{ + union cmd_response cmd_resp; + + /* Get response with status within a max of 800 ms timeout */ + if (!readl_poll_timeout(mp2->mmio + AMD_P2C_MSG(0), cmd_resp.resp, + (cmd_resp.response_v2.response == sensor_sts && + cmd_resp.response_v2.status == 0 && (sid == 0xff || + cmd_resp.response_v2.sensor_id == sid)), 500, 800000)) + return cmd_resp.response_v2.response; + + return SENSOR_DISABLED; +} + static void amd_start_sensor_v2(struct amd_mp2_dev *privdata, struct amd_mp2_sensor_info info) { union sfh_cmd_base cmd_base; @@ -183,6 +198,7 @@ static const struct amd_mp2_ops amd_sfh_ops_v2 = { .start = amd_start_sensor_v2, .stop = amd_stop_sensor_v2, .stop_all = amd_stop_all_sensor_v2, + .response = amd_sfh_wait_response_v2, }; static const struct amd_mp2_ops amd_sfh_ops = { diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h index 2d5c57e3782d..21ef55da712a 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h +++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h @@ -24,12 +24,16 @@ #define AMD_C2P_MSG2 0x10508 #define AMD_C2P_MSG(regno) (0x10500 + ((regno) * 4)) +#define AMD_P2C_MSG(regno) (0x10680 + ((regno) * 4)) /* MP2 P2C Message Registers */ #define AMD_P2C_MSG3 0x1068C /* Supported Sensors info */ #define V2_STATUS 0x2 +#define SENSOR_ENABLED 4 +#define SENSOR_DISABLED 5 + #define HPD_IDX 16 /* SFH Command register */ @@ -51,6 +55,19 @@ union sfh_cmd_base { } cmd_v2; }; +union cmd_response { + u32 resp; + struct { + u32 status : 2; + u32 out_in_c2p : 1; + u32 rsvd1 : 1; + u32 response : 4; + u32 sub_cmd : 8; + u32 sensor_id : 6; + u32 rsvd2 : 10; + } response_v2; +}; + union sfh_cmd_param { u32 ul; struct { @@ -117,5 +134,6 @@ struct amd_mp2_ops { void (*start)(struct amd_mp2_dev *privdata, struct amd_mp2_sensor_info info); void (*stop)(struct amd_mp2_dev *privdata, u16 sensor_idx); void (*stop_all)(struct amd_mp2_dev *privdata); + int (*response)(struct amd_mp2_dev *mp2, u8 sid, u32 sensor_sts); }; #endif From patchwork Mon Aug 2 14:03:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Basavaraj Natikar X-Patchwork-Id: 490513 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DE8C5C4320A for ; Mon, 2 Aug 2021 14:06:00 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C26EE6023F for ; Mon, 2 Aug 2021 14:06:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236435AbhHBOGI (ORCPT ); Mon, 2 Aug 2021 10:06:08 -0400 Received: from mail-mw2nam10on2087.outbound.protection.outlook.com ([40.107.94.87]:56241 "EHLO NAM10-MW2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S237048AbhHBOEb (ORCPT ); Mon, 2 Aug 2021 10:04:31 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PO9QY+zq+IwhoIavhyvicvvtOcrgy9tjMmkzcCQgIlyTqtAObWI+ucZQb/sxuhwx68d7098TXl+ffpb9AMx38aPNju635iD1mg/4Q5TYu8+qbTlO492f2OkP4XlFr6D7g9yVkzT20mLWidNCQIJNEnn9F/fGDPbsfFYW6W7yRptzQdfQz8tujuUZGhoLYozZndYYSR/Fs2uNJOtlXGBgdIf3KK8WjQxenaqlcYnw7vu8L83WFY2Xa5srADPf0Fx4paq7H1apzJbEQWKLj+77VPZ/IO+QF5EEUm3jbhxI/DVZ5qf8vlkzq1B5hy6eH1KsbmXWJTDjIVAXQRxn6ekkvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rhKYGMnrxt86OSThJmI2bNbISvN2gDAqonU680lEemA=; b=F56hU3XQOhe/AtmAkVpk//rFWt3tD7xcIc4iK+yIbJfxv3U9OeQxMkrsC99OgVfwqMJxu/ZbuK1btHVBfnjL/XkF/cwY0/+JplwEPosAhL87H8/wh+rHwiFbzjXq5lt5IxlfvQY6Ekr8aVqMrZys03DXH40/8+f7WZnzUv42Jb2K66D/ved+HEt+nk25g5QorqyAkY4Dt754MwrhIEVZQ41uEf6RE3Qb2WTuQTztInCKCHca8r5qWwcPBClsXjg1HgaIsD5pYsTZum6LrFAgK5BidnaC8rlNfTLRlVQofp0R5d8oEYfcby3zgDQEAbrW4k9r2JeZOJYWud6/Gk/K+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rhKYGMnrxt86OSThJmI2bNbISvN2gDAqonU680lEemA=; b=2jtvpEvbe4mFL/R7sV4+eouNjbF4/UyqvOK/0BJrM7GdZb9+G30o2HSun7UKobsO/2a9w7N2j5To0PJAebU3RVcL265tqmsqNfgpeCh7G5TqqCPAUhDsAKOPU2cjti/W87nQT1VQJILiT43A1E2kzyRC1NldMo7z+0IRyivjCSk= Received: from DM5PR16CA0013.namprd16.prod.outlook.com (2603:10b6:3:c0::23) by CH2PR12MB3879.namprd12.prod.outlook.com (2603:10b6:610:23::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.21; Mon, 2 Aug 2021 14:04:14 +0000 Received: from DM6NAM11FT016.eop-nam11.prod.protection.outlook.com (2603:10b6:3:c0:cafe::58) by DM5PR16CA0013.outlook.office365.com (2603:10b6:3:c0::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.19 via Frontend Transport; Mon, 2 Aug 2021 14:04:14 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT016.mail.protection.outlook.com (10.13.173.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:13 +0000 Received: from amd-DAYTONA-X.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 2 Aug 2021 09:04:10 -0500 From: Basavaraj Natikar To: , , CC: , , "Basavaraj Natikar" , Shyam Sundar S K Subject: [PATCH 3/5] amd_sfh:Move hid probe after sensor is enabled Date: Mon, 2 Aug 2021 19:33:39 +0530 Message-ID: <20210802140341.901840-4-Basavaraj.Natikar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> References: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c3528ccc-3758-436c-6f50-08d955be68b5 X-MS-TrafficTypeDiagnostic: CH2PR12MB3879: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1122; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: as+98JB3LzQi/nmx3o09gHjHnTck35I3au1XWadHlbvSbK0aQ6LhD8QjW1dNnbLMAWMByL42aF1ic5qAZ8N90rbTL9pGKyXy8q662QTkpdY28UgjVo8nFT7mHJQdhq69Jfl9w7dG6Ix5a6utrnj/BtUX0GXzaU1DKwV+I/hnQ6xskBobfIJTy4I/Mhhv11DUIyfaIFMstCcq+NC/XbFN0baXnWZ049lq2CoEXbLhImT7L6+/BEF53uXEhPvdSuiaySscpOen8DT0B0ziHCBk4MfD0rHTNWX1G6mz7SGyi0vWXGggzDhbJlDWMcCQU6R+LS85/htwVlxUe3I2WTuYMnf6ZC/1Reu74RPh4Xhz5t+3VSInz4DnIlB0HXScYj3+CnAb3ssSNKH6nVFdOhFwIy42A9rC70ZUkCOx+bvUhlLNVF4El3WOr8hUqHNOE6ZuMSun+ygiTG+VAnXUStwdG/J/HXTdBPW/iP4BUoKgiLchq1w6anI8GRr82lwLn6Ua6f0RMJ0CJDLruLSDMW8pXrQ3T4Wotwn01offC0ZvH8ew6xJfzq5DxRp794quODAo3+6+GqE7iPPdgWnWh7oml2UAv3zEpDQvk1cH/vFtE+iVhtFV59uSUB/7NQNJqhb5rYxxSNiU/2Iyyow+5P8pKib2fD2CwtptDG3Zir82Qzw0B8OZVM23kRLQmAmSv0FM3Ac3LBW4DmhXNHxq4RqpZzKg4UnQYf1vJ2DLrPj7F5M= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(4636009)(396003)(376002)(346002)(39860400002)(136003)(46966006)(36840700001)(70586007)(2906002)(6666004)(478600001)(36756003)(70206006)(82740400003)(336012)(36860700001)(5660300002)(83380400001)(86362001)(82310400003)(47076005)(2616005)(316002)(110136005)(54906003)(7696005)(4326008)(8676002)(426003)(8936002)(186003)(16526019)(26005)(356005)(1076003)(81166007)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:04:13.7584 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c3528ccc-3758-436c-6f50-08d955be68b5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT016.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB3879 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Earlier platforms don’t have sensor status checking mechanism. Sensors are always enabled without checking sensor status. Hence invoke hid probe only after the sensor is enabled by checking sensor status. Reviewed-by: Shyam Sundar S K Signed-off-by: Basavaraj Natikar --- drivers/hid/amd-sfh-hid/amd_sfh_client.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_client.c b/drivers/hid/amd-sfh-hid/amd_sfh_client.c index b7b66a1eb971..4982ccf9dc25 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_client.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_client.c @@ -205,16 +205,23 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) goto cleanup; } rc = get_report_descriptor(cl_idx, cl_data->report_descr[i]); - if (rc) - return rc; - rc = amdtp_hid_probe(cl_data->cur_hid_dev, cl_data); if (rc) return rc; privdata->mp2_ops->start(privdata, info); status = amd_sfh_wait_for_response (privdata, cl_data->sensor_idx[i], SENSOR_ENABLED); - if (status == SENSOR_ENABLED) + if (status == SENSOR_ENABLED) { cl_data->sensor_sts[i] = SENSOR_ENABLED; + rc = amdtp_hid_probe(cl_data->cur_hid_dev, cl_data); + if (rc) { + privdata->mp2_ops->stop(privdata, cl_data->sensor_idx[i]); + status = amd_sfh_wait_for_response + (privdata, cl_data->sensor_idx[i], SENSOR_DISABLED); + if (status != SENSOR_ENABLED) + cl_data->sensor_sts[i] = SENSOR_DISABLED; + goto cleanup; + } + } } schedule_delayed_work(&cl_data->work_buffer, msecs_to_jiffies(AMD_SFH_IDLE_LOOP)); return 0; From patchwork Mon Aug 2 14:03:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Basavaraj Natikar X-Patchwork-Id: 491193 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6F45CC432BE for ; Mon, 2 Aug 2021 14:06:00 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4CFCF6023F for ; Mon, 2 Aug 2021 14:06:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236404AbhHBOGH (ORCPT ); Mon, 2 Aug 2021 10:06:07 -0400 Received: from mail-co1nam11on2066.outbound.protection.outlook.com ([40.107.220.66]:63905 "EHLO NAM11-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S237021AbhHBOE2 (ORCPT ); Mon, 2 Aug 2021 10:04:28 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mMZ4t7CLOyM2l4mnpvK/J+hiHQVE7ljciLfHsRoCX9+5KxSn0Pz5aKcSOHi3BBi32XQbCbyieNnN8BEUIAP+Ro77J7va/lkfCzgPh8oyakTyU+F7gL0GeQTVURyVFPHZW1j4zz5A2dcOccIRtsWK8q884H3cI3PDPzSDpzwhYNBOomSwGJqz5rabiBss8FzCI3EtkHlmCMCaoY1Cqp4uFEkvjGmYEyVq8yu7BLdx1zVNdCQho6kEPLObf17PfG9BlVjmXC5DnJ3jFBt3INHPAojOC4r3PwGx+YB1WRTArWDUk06xQu7aGOblPXonzN3t+AqRgT4wFFe4uyOIF0TmIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JgQzmEcqhf7R/AeOoA09HIYAgr6FFRfXA6adhtumJMA=; b=ctgd2eqHtzroi0uX31UBFbTkFKW0pcVBw8UHHVdE4oS+tlU7iar06mpPb2hII98fNdm6ox4opjMyHb21O+ycaFuqRFPnSdF0HSZYrB6WUtAVset3KX2q4ZUtbeUsyYMwlb/OPFLUx5bCIfnemm5plESDcyyoNrr+J12E3NCmTBxzuEeAdwIhsph8TJXbO/jb/JjqBWD8ZxpNvy7lS6Zdk/OGV4bOUcb4k1+k/gUvy3hEBcaghEphYkd1Plp+73LCRPJhzmJUSHiSkE36v09MxIldeJUla6hASuLJRWBaeg90FVBNWDMWHG3H4O0Rt0WfJwWNWQcFPD2BxHr9Xp+z5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JgQzmEcqhf7R/AeOoA09HIYAgr6FFRfXA6adhtumJMA=; b=0sFeTK5ycdaY/vhzvP3eeINIfSTgE82EDfbqurOMY4hVTVZbLCUXlKd5r6jVgBp5cpdSDqQm5VGfeWO3ZJV2G41Bx6Nf6bDRfvbkRetdJWRtkKMC9fO73VltIV4TunP2SW29lt60j9xg+bUSu7yszWRNjdAaQybCpHl/qiZWxP4= Received: from DM5PR1401CA0020.namprd14.prod.outlook.com (2603:10b6:4:4a::30) by BL0PR12MB2371.namprd12.prod.outlook.com (2603:10b6:207:3e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18; Mon, 2 Aug 2021 14:04:17 +0000 Received: from DM6NAM11FT034.eop-nam11.prod.protection.outlook.com (2603:10b6:4:4a:cafe::de) by DM5PR1401CA0020.outlook.office365.com (2603:10b6:4:4a::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.20 via Frontend Transport; Mon, 2 Aug 2021 14:04:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT034.mail.protection.outlook.com (10.13.173.47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:16 +0000 Received: from amd-DAYTONA-X.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 2 Aug 2021 09:04:14 -0500 From: Basavaraj Natikar To: , , CC: , , "Basavaraj Natikar" , Shyam Sundar S K Subject: [PATCH 4/5] amd_sfh:Add support for PM suspend and resume Date: Mon, 2 Aug 2021 19:33:40 +0530 Message-ID: <20210802140341.901840-5-Basavaraj.Natikar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> References: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9d6208d4-ec8a-4703-160a-08d955be6a9c X-MS-TrafficTypeDiagnostic: BL0PR12MB2371: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:972; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8cyXmY9CTK6pCPgwJU/DcIkxwLhRiEH3xO/wx2E42q6Dv8WOe/pyyAWfD20/xruwhXRvPGijwtNmorlVbPrUZcsth1Yzte2QjHp2tdmmE8LX0dzv+CUcY+uzy6whrXiIHkbMpVIQYltRaGkRcdPMp/A7ye1VMF1N9CBtsuD5EOqDhd2IWHmb5L7ckTxblVOs6tjPNgBx2pJKls9/EK/my2d1MR/XY1NhjzMqxxt9FGcLoO3gf//LNHtJw2ikzWI3y5QJWCvJDf1sr3qgSxu83+9auoIYs3jq3whV/6i5Qk6saSCBAyh3tsQWnRyfCryr9VTtiKAFk4h48lzybxoQ3UHkZfYBfTJIeGhdr/LCLPoVseVOcNu1evS6U/7UpWwuXtYBBg5KqlTv3FyI24Qqyt35Fc+uiifpb2WvTnHbRBZQOmF9kKKpTVbRNY8yrFYj3cqpAfFaZCXt5BwVs02uN/hKDk0bSVVjYRDOB5unbutlbeDJIaLGRKBOCjQKhq7YUR7I82UcsJLecnLCvOfBxGFejDlAmRTczRfbXsz1h0tCKndUQrr7Wf/WU4xqaIjp29zS8H7K0whP7ZT8Ai69HQzVoLR00HF9QtPCqL0oGVlZ6ev3MTPa6INiSSk7XWXJdBSdHXQF0d/ZJ8ajmPancTNIpBP0DYPoIa6WPUqWefVjFFpr8XLjmtO8SPWw6lWw4YBVf5fz6Me6I/M1kzYe0+tjYs0mKT6rfypxTvfdrP8= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(4636009)(376002)(396003)(39860400002)(346002)(136003)(46966006)(36840700001)(2616005)(54906003)(82310400003)(7696005)(26005)(110136005)(81166007)(82740400003)(5660300002)(36860700001)(4326008)(70586007)(8936002)(8676002)(83380400001)(316002)(70206006)(86362001)(336012)(1076003)(16526019)(426003)(47076005)(356005)(2906002)(36756003)(478600001)(6666004)(186003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:04:16.9377 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9d6208d4-ec8a-4703-160a-08d955be6a9c X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT034.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB2371 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Add support for power management routines. Reviewed-by: Shyam Sundar S K Signed-off-by: Basavaraj Natikar --- drivers/hid/amd-sfh-hid/amd_sfh_client.c | 1 - drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 49 ++++++++++++++++++++++++ drivers/hid/amd-sfh-hid/amd_sfh_pcie.h | 5 +++ 3 files changed, 54 insertions(+), 1 deletion(-) diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_client.c b/drivers/hid/amd-sfh-hid/amd_sfh_client.c index 4982ccf9dc25..050df796aa2e 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_client.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_client.c @@ -17,7 +17,6 @@ #include "amd_sfh_pcie.h" #include "amd_sfh_hid.h" -#define AMD_SFH_IDLE_LOOP 200 struct request_list { struct hid_device *hid; diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c index fd2e3011086d..bdef47118c3d 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c @@ -264,6 +264,54 @@ static int amd_mp2_pci_probe(struct pci_dev *pdev, const struct pci_device_id *i return amd_sfh_hid_client_init(privdata); } +static int __maybe_unused amd_mp2_pci_resume(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct amd_mp2_dev *mp2 = pci_get_drvdata(pdev); + struct amdtp_cl_data *cl_data = mp2->cl_data; + struct amd_mp2_sensor_info info; + int i, status; + + for (i = 0; i < cl_data->num_hid_devices; i++) { + if (cl_data->sensor_sts[i] == SENSOR_DISABLED) { + info.period = AMD_SFH_IDLE_LOOP; + info.sensor_idx = cl_data->sensor_idx[i]; + info.dma_address = cl_data->sensor_dma_addr[i]; + mp2->mp2_ops->start(mp2, info); + status = amd_sfh_wait_for_response + (mp2, cl_data->sensor_idx[i], SENSOR_ENABLED); + if (status == SENSOR_ENABLED) + cl_data->sensor_sts[i] = SENSOR_ENABLED; + } + } + + return 0; +} + +static int __maybe_unused amd_mp2_pci_suspend(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct amd_mp2_dev *mp2 = pci_get_drvdata(pdev); + struct amdtp_cl_data *cl_data = mp2->cl_data; + int i, status; + + for (i = 0; i < cl_data->num_hid_devices; i++) { + if (cl_data->sensor_idx[i] != HPD_IDX && + cl_data->sensor_sts[i] == SENSOR_ENABLED) { + mp2->mp2_ops->stop(mp2, cl_data->sensor_idx[i]); + status = amd_sfh_wait_for_response + (mp2, cl_data->sensor_idx[i], SENSOR_DISABLED); + if (status != SENSOR_ENABLED) + cl_data->sensor_sts[i] = SENSOR_DISABLED; + } + } + + return 0; +} + +static SIMPLE_DEV_PM_OPS(amd_mp2_pm_ops, amd_mp2_pci_suspend, + amd_mp2_pci_resume); + static const struct pci_device_id amd_mp2_pci_tbl[] = { { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_MP2) }, { } @@ -274,6 +322,7 @@ static struct pci_driver amd_mp2_pci_driver = { .name = DRIVER_NAME, .id_table = amd_mp2_pci_tbl, .probe = amd_mp2_pci_probe, + .driver.pm = &amd_mp2_pm_ops, }; module_pci_driver(amd_mp2_pci_driver); diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h index 21ef55da712a..1ff6f83cb6fd 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h +++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h @@ -36,6 +36,8 @@ #define HPD_IDX 16 +#define AMD_SFH_IDLE_LOOP 200 + /* SFH Command register */ union sfh_cmd_base { u32 ul; @@ -129,6 +131,9 @@ void amd_stop_all_sensors(struct amd_mp2_dev *privdata); int amd_mp2_get_sensor_num(struct amd_mp2_dev *privdata, u8 *sensor_id); int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata); int amd_sfh_hid_client_deinit(struct amd_mp2_dev *privdata); +u32 amd_sfh_wait_for_response(struct amd_mp2_dev *mp2, u8 sid, u32 sensor_sts); +void amd_mp2_suspend(struct amd_mp2_dev *mp2); +void amd_mp2_resume(struct amd_mp2_dev *mp2); struct amd_mp2_ops { void (*start)(struct amd_mp2_dev *privdata, struct amd_mp2_sensor_info info); From patchwork Mon Aug 2 14:03:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Basavaraj Natikar X-Patchwork-Id: 491192 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2A76FC19F3A for ; Mon, 2 Aug 2021 14:06:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 10A5D61100 for ; Mon, 2 Aug 2021 14:06:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236459AbhHBOGK (ORCPT ); Mon, 2 Aug 2021 10:06:10 -0400 Received: from mail-dm6nam11on2040.outbound.protection.outlook.com ([40.107.223.40]:12768 "EHLO NAM11-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S237051AbhHBOEc (ORCPT ); Mon, 2 Aug 2021 10:04:32 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jcYMu6Kr5E1zqmAaJQp+KhO889PrAj++6kPvV/M3IKi+3Sm4MDcW9QDzaFMGwNu5NEQGWImqsrW0kD43zCFF1UccUuBrZO1GlyejNVUTzkZyiJZe8UaL+PaDgqMXG3uA+yKJHH4p9mxgFkNz9160RMnHyQhibv6bA/pZXExuRV1kXMq1bLyFArlossRbFRJ38BieW9EssZ6tMK1UHydL925hRpgkXcukAkgBnF6iauvosHuJQeYX9lDIqxXo+fAxzpBk70Wc5VfWkPbpLZhxhjx5p1b/uTDaFpoze+/0Tnszy/+Dpxo2Ae9KzCFotdfEsJxkkQ7k7v+VUeSqlHSvow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sW7z/t/VyzGdnGF3Letdgeol3ZkPolcfK+rSZpH1iAc=; b=AQJROAl0N40U3uOgnrgt55Q9FLY10cuFVa34qEXLLDJXfiK4WI0Z0FyzHpLFRSuYq5XnkswU8DfFSnyuyEY2XjqS0lXoSI2rholaq3HDzgnz7q+Kzmf2jCH2TGmJ5nzOabN/1mOjrBYxxYKiOYSmnyp+NzspZdHKerHJ4Akj6kfrzTc+NQtIsZO6k7c0lN/Mb6HrCSe+JNYM/53616SdobZw33bvZ/jtcfgvo9TKmcYcPHCUTUuhY5r8rDJB+qTlxdul836Me3IhW06WhECx/3ETxjtQf6RYYEhPLTqSdbggi/3AxjI76yeYpMBPI4in6vcN0QZ8KcV9+eLGi7WwiA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sW7z/t/VyzGdnGF3Letdgeol3ZkPolcfK+rSZpH1iAc=; b=iUO4jvIsOJN/Ce7+N66MzLaLPRmIkIKj8b4PKqXKvds3d+3pTIZZEw1TXV3nPfEPhjQ1RlNqhHgG46DrG6k0S62gvAihfHfPpKjPvnDqJ1X1ScC0H0QWMASb2mrJwK4JY5hcflsrAUkk4Nz8Cm2l7c6potgkbFxCvivyYyeD+mg= Received: from DM5PR19CA0043.namprd19.prod.outlook.com (2603:10b6:3:9a::29) by MN2PR12MB4848.namprd12.prod.outlook.com (2603:10b6:208:1be::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18; Mon, 2 Aug 2021 14:04:20 +0000 Received: from DM6NAM11FT021.eop-nam11.prod.protection.outlook.com (2603:10b6:3:9a:cafe::91) by DM5PR19CA0043.outlook.office365.com (2603:10b6:3:9a::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT021.mail.protection.outlook.com (10.13.173.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:04:19 +0000 Received: from amd-DAYTONA-X.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 2 Aug 2021 09:04:17 -0500 From: Basavaraj Natikar To: , , CC: , , "Basavaraj Natikar" , Shyam Sundar S K Subject: [PATCH 5/5] amd_sfh:Add dyndbg prints for debugging Date: Mon, 2 Aug 2021 19:33:41 +0530 Message-ID: <20210802140341.901840-6-Basavaraj.Natikar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> References: <20210802140341.901840-1-Basavaraj.Natikar@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b6d74118-d45f-40bf-be26-08d955be6c6d X-MS-TrafficTypeDiagnostic: MN2PR12MB4848: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:820; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: B+sunlSttCD+rzlnB0phnKHKIKE9uWXYWBjgjsjqDBkkHx2xNT30PqYr6XRwFAA9lvLExSoYXBvsyvHERbLZ53szcGVEpVtMHYOavLaC8FlNVE6IUH6TCqQvH1D7qaBmgBVhqi5NihQCGC3+CSUfoR2EB9KFPjHX7NOv5POAZV1DjpfSusQloSMxfVtm+Wsgf3YsjL+UXISNH5WZ4HcAjSW45501Q8epe+ulDUoxPSLKSQT0ZYeox8bpnEkxufbKNlSlXhwIJ7Sm8tB8oRf9x5477iIoNuEz8exQMcvf/TaD3DITJAKYnuM1iiHOIvsDDqk8PBKrmDowMULBsr67kzB/HpD+pJ+Q0skBxmv+PXaLni0BZjhuey1fm4lZZqmJ541mivyUSTlujCX75dP5rqiuI7WHtDVp3SEbIW+Vr/4Wjc9pg9gDuFdd7j4XMjTJkXFrx2k0a2Dkl7xTtz5cLZq5cS2RXYsZp8+TSJ+Pg6Z4NdxdEz1LsEK/rtowdPvFeUm9iaym/Yje/CBjtQiHDfwGSHeGroHsLeIWcJ5wUjiFeB5jTwTuQzQpIXFYeAUW3z8e9BNcD6OGjAiy34aGsMny7NyeWep7teBn3o+JAh2yl+xflG6bOqF7rLHLjPyk3e4sNkP2fiT7kmtNu5aKHc4M9LRxrVgPmhJTBV6/akmmjFJPynqY3d/7bUrD1a1j2KBPBSCxwbqLN8phfiGxAos5FHVVHiRa7/g2BhMWerQ= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(4636009)(346002)(376002)(39860400002)(136003)(396003)(46966006)(36840700001)(82740400003)(36860700001)(110136005)(70206006)(54906003)(2906002)(83380400001)(81166007)(356005)(2616005)(336012)(316002)(86362001)(478600001)(6666004)(36756003)(4326008)(70586007)(5660300002)(8676002)(8936002)(1076003)(47076005)(186003)(426003)(82310400003)(7696005)(26005)(16526019)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:04:19.9875 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b6d74118-d45f-40bf-be26-08d955be6c6d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT021.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4848 Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org Add dynamic debug for debugging sensors states during initialization, stop, suspend and resume. Reviewed-by: Shyam Sundar S K Signed-off-by: Basavaraj Natikar --- drivers/hid/amd-sfh-hid/amd_sfh_client.c | 6 ++++++ drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_client.c b/drivers/hid/amd-sfh-hid/amd_sfh_client.c index 050df796aa2e..840fd075c56f 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_client.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_client.c @@ -218,9 +218,13 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata) (privdata, cl_data->sensor_idx[i], SENSOR_DISABLED); if (status != SENSOR_ENABLED) cl_data->sensor_sts[i] = SENSOR_DISABLED; + dev_dbg(dev, "sid 0x%x status 0x%x\n", + cl_data->sensor_idx[i], cl_data->sensor_sts[i]); goto cleanup; } } + dev_dbg(dev, "sid 0x%x status 0x%x\n", + cl_data->sensor_idx[i], cl_data->sensor_sts[i]); } schedule_delayed_work(&cl_data->work_buffer, msecs_to_jiffies(AMD_SFH_IDLE_LOOP)); return 0; @@ -252,6 +256,8 @@ int amd_sfh_hid_client_deinit(struct amd_mp2_dev *privdata) (privdata, cl_data->sensor_idx[i], SENSOR_DISABLED); if (status != SENSOR_ENABLED) cl_data->sensor_sts[i] = SENSOR_DISABLED; + dev_dbg(&privdata->pdev->dev, "stopping sid 0x%x status 0x%x\n", + cl_data->sensor_idx[i], cl_data->sensor_sts[i]); } } diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c index bdef47118c3d..79b138fd4261 100644 --- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c +++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c @@ -282,6 +282,8 @@ static int __maybe_unused amd_mp2_pci_resume(struct device *dev) (mp2, cl_data->sensor_idx[i], SENSOR_ENABLED); if (status == SENSOR_ENABLED) cl_data->sensor_sts[i] = SENSOR_ENABLED; + dev_dbg(dev, "resume sid 0x%x status 0x%x\n", + cl_data->sensor_idx[i], cl_data->sensor_sts[i]); } } @@ -303,6 +305,8 @@ static int __maybe_unused amd_mp2_pci_suspend(struct device *dev) (mp2, cl_data->sensor_idx[i], SENSOR_DISABLED); if (status != SENSOR_ENABLED) cl_data->sensor_sts[i] = SENSOR_DISABLED; + dev_dbg(dev, "suspend sid 0x%x status 0x%x\n", + cl_data->sensor_idx[i], cl_data->sensor_sts[i]); } }