From patchwork Wed Jan 16 22:04:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Kemnade X-Patchwork-Id: 10767023 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 651AF91E for ; Wed, 16 Jan 2019 22:05:17 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 573AC2F8A4 for ; Wed, 16 Jan 2019 22:05:17 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4B1D22FAE0; Wed, 16 Jan 2019 22:05:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EA19C2FADC for ; Wed, 16 Jan 2019 22:05:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732651AbfAPWEl (ORCPT ); Wed, 16 Jan 2019 17:04:41 -0500 Received: from mail.andi.de1.cc ([85.214.239.24]:55772 "EHLO h2641619.stratoserver.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731870AbfAPWEl (ORCPT ); Wed, 16 Jan 2019 17:04:41 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=kemnade.info; s=20180802; h=Message-Id:Date:Subject:Cc:To:From:Sender: Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=l0OqbqymuJ1ioZUjzeMqnRiXJULUOy8uam8Qddu53Jk=; b=GCfzX6GIJBy0O8ipaXk8xEPTBq jMVfErVSBVmHxRr9P+UcqsROTraWXNmQw10GLwrMn/Pae8gL0BleN/UV67rLnNWFopkEQhqJWenGC Br3236N0F9nEZt4WBlPfbbs90e/V6bB1VQO9NLA6APmx1uYh2oChgxUDm/dAjWhvXx0w=; Received: from p200300ccfbcc8e001a3da2fffebfd33a.dip0.t-ipconnect.de ([2003:cc:fbcc:8e00:1a3d:a2ff:febf:d33a] helo=aktux) by h2641619.stratoserver.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gjtIW-0006lW-07; Wed, 16 Jan 2019 23:04:32 +0100 Received: from andi by aktux with local (Exim 4.89) (envelope-from ) id 1gjtIV-0002PO-CF; Wed, 16 Jan 2019 23:04:31 +0100 From: Andreas Kemnade To: t-kristo@ti.com, mturquette@baylibre.com, sboyd@kernel.org, linux-omap@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, bcousson@baylibre.com, paul@pwsan.com, tony@atomide.com, letux-kernel@openphoenux.org Cc: Andreas Kemnade Subject: [PATCH v3 0/3] mach-omap2: handle autoidle denial Date: Wed, 16 Jan 2019 23:04:26 +0100 Message-Id: <20190116220429.9136-1-andreas@kemnade.info> X-Mailer: git-send-email 2.11.0 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On the gta04 with a dm3730 omap_hdq does not work properly when the device enters lower power states. Idling uart1 and 2 is enough to show up that problem, if there are no other things enabled. Further research reveals that hdq iclk must not be turned off during transfers, also according to the TRM. That fact is also correctly described in the flags but the code to handle that is incomplete. To handle multiple users of a single ick, autoidle is disabled when a user of that ick requires that (has the OCPIF_SWSUP_IDLE)) Changes v3: - replace CLK_IS_BASIC Changes v2: - uses spinlocks instead of mutexes - invert counter logic - check whether clock type is basic Depends on: clk: ti: get rid of CLK_IS_BASIC Andreas Kemnade (3): clk: ti: add a usecount for autoidle clk: ti: check clock type before doing autoidle ops arm: omap_hwmod disable ick autoidling when a hwmod requires that arch/arm/mach-omap2/omap_hwmod.c | 16 +++++++++---- drivers/clk/ti/autoidle.c | 52 +++++++++++++++++++++++++++++++++------- include/linux/clk/ti.h | 1 + 3 files changed, 57 insertions(+), 12 deletions(-) Acked-by: Tony Lindgren