From patchwork Thu Jul 26 22:55:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "dbasehore ." X-Patchwork-Id: 949922 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="P0cMxS1O"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41c6r36ygSz9ryt for ; Fri, 27 Jul 2018 08:55:15 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731737AbeG0AOJ (ORCPT ); Thu, 26 Jul 2018 20:14:09 -0400 Received: from mail-pl0-f68.google.com ([209.85.160.68]:46749 "EHLO mail-pl0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731662AbeG0AOI (ORCPT ); Thu, 26 Jul 2018 20:14:08 -0400 Received: by mail-pl0-f68.google.com with SMTP id t17-v6so1433004ply.13 for ; Thu, 26 Jul 2018 15:55:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=B+ViF1JjYMbTF6gXyeRxJ3LRFCPpPvWE0v13usRTUV0=; b=P0cMxS1OsT+cK7uW3MW08b5ER/NocR6nhJIR60ZIhlDAhtOvKbl/Z1nvQEQtS6HxdI bR5bTI5MWu0Pwrz44p0KxPsjL919Jfuh+BHOC6BcpLegswcN/pR/7cEcrxLeybXF+6z4 tE7TZvZJX8A17ZrRPCAdF5nYF067fCIyAG3ro= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=B+ViF1JjYMbTF6gXyeRxJ3LRFCPpPvWE0v13usRTUV0=; b=MduGui6lW4uddauwjP3FTIb4p8xZ0mNU5nAf1QDeF6NIcOVTwlUFSdWwfwoPR18R7L DtIzI4Bz46kIJbEJzLcQtgTs+Y10/+HaWSK9lACluOEAFK4vjOZ6sZFQXvugKeUR2TvN whZK1/tS8fQ3kYxmyVTKWDrDiK5lxbqJ2u/uykkvE2xdgWBjnBh0oi8Pv2lkKdyaOJuY v/6IgZbPpQRwKBJhgxLE+GVOJaA3/lqUFjF+XyIC+8jGVnqBB8SnpmfVaAlRCaEACaXs ca/r41DmgiPVYlM+0l1DTstBei2kVRe7myUlOEoadj9k5Zn7r2DtzKVVJkcFKh5WrRRH EwOw== X-Gm-Message-State: AOUpUlF3nQr+PZUcY0H6tayadPVUZ2jaXARJEgb2qLl06GosfBAO/AQ6 2CWOkDg89ZCkTJIdTiCNigSJGw== X-Google-Smtp-Source: AAOMgpd7qRZnlzzRNFENMXj2vt1KJLwjSJjWncUL8CgXpI1arIGpm1len+CoL+5CSEFBUffmJ7KlZw== X-Received: by 2002:a17:902:760b:: with SMTP id k11-v6mr3615951pll.91.1532645713196; Thu, 26 Jul 2018 15:55:13 -0700 (PDT) Received: from exogeni.mtv.corp.google.com ([2620:0:1000:1501:f407:8d12:c205:7153]) by smtp.gmail.com with ESMTPSA id 84-v6sm8015348pfj.33.2018.07.26.15.55.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 26 Jul 2018 15:55:12 -0700 (PDT) From: Derek Basehore To: linux-kernel@vger.kernel.org Cc: wsa@the-dreams.de, linux-i2c@vger.kernel.org, dianders@chromium.org, dtor@chromium.org, venkateswarlu.v.vinjamuri@intel.corp-partner.google.com, Derek Basehore Subject: [PATCH] i2c: enable async suspend/resume on i2c devices Date: Thu, 26 Jul 2018 15:55:08 -0700 Message-Id: <20180726225508.74612-1-dbasehore@chromium.org> X-Mailer: git-send-email 2.18.0.345.g5c9ce644c3-goog MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org This enables the async suspend property for i2c devices. This reduces the suspend/resume time considerably on platforms with multiple i2c devices (such as a trackpad or touchscreen). Signed-off-by: Derek Basehore --- drivers/i2c/i2c-core-base.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c index 1ba40bb2b966..3382bb7e1dcc 100644 --- a/drivers/i2c/i2c-core-base.c +++ b/drivers/i2c/i2c-core-base.c @@ -749,6 +749,7 @@ i2c_new_device(struct i2c_adapter *adap, struct i2c_board_info const *info) client->dev.of_node = info->of_node; client->dev.fwnode = info->fwnode; + device_enable_async_suspend(&client->dev); i2c_dev_set_name(adap, client, info); if (info->properties) {