Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2526348imu; Thu, 29 Nov 2018 06:25:28 -0800 (PST) X-Google-Smtp-Source: AFSGD/VFlRyJlpExmCjxd2gfmTfqgC1l6LACCOpMaRUqc930iILgPOE641d5jhfjZxHcGEhIktTG X-Received: by 2002:a63:f241:: with SMTP id d1mr1433776pgk.2.1543501528336; Thu, 29 Nov 2018 06:25:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543501528; cv=none; d=google.com; s=arc-20160816; b=tONPkL0sQr/Xym247xWdUjZjaZON6EtR6Qtep+OwhZOyRmF3r+TXsQ5YFs0j6mnCDH z0pMyCasw99pMadzBn2HguQbjG/AqEJKsCvvnu0Oqg54n+SPwVOKbSxm38n5GYsHWBzN /4acatKuIfxL3D84XqEB+J2XSFxwM6/COtNzuzuvPgSELJD5PcrA7IP5+K1K5VTeNTe/ lrYOCVvjRGpUeZw2BH94lh9yL5XZueLVH78+y6iNPnhH7aOZbWGA2HcvVgVh7mDbVY3g dWsfWQLykuraKmAmXpzWSEmse3ErVnfijROAYXQRRmsNtp6xHDbnQOJfYqGwhrCi/I40 O2cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=hVrLApFcQvYyOsLEicncKekbcm2IyuLjcbXPrhOjFS4=; b=GcoCr76do765NPz1iBHZkjV1QFPBRnAVTdPdjS4C2mV/IQbqHLnkELh44vbcxJaUzN dGcQnvScjDJEar9H09kP8+NtIL5eqWSBj4oapqi0wKvK0t2foDUe0mlKXs9PexLXnXhz YRTG+ogeuKWOzo4frkIe81pXn+nrVKIcFF7reamChEKQMnVL7PwodcwGFgk3Xz4n1TvF ZculXNnSnMHLkLs70ldbzfa8wlzr4fq7+/ofjWsRZa3yve0Ejqa3NSPt66RWheQYjQg2 KSjCfngKIUTrKVFJNSeyQSKF2cpD98ebqLwRztVsqtbG6DbaSFDkd4e6ZnTEAICwZuFp e2ng== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=c3larPKE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d1si677087pla.412.2018.11.29.06.25.13; Thu, 29 Nov 2018 06:25:28 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=c3larPKE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731994AbeK3B2D (ORCPT + 99 others); Thu, 29 Nov 2018 20:28:03 -0500 Received: from mail.kernel.org ([198.145.29.99]:53414 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731041AbeK3B2C (ORCPT ); Thu, 29 Nov 2018 20:28:02 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9CD00205C9; Thu, 29 Nov 2018 14:22:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543501351; bh=ZgebZmjm/IFMSoKbqJ5wYfs7fyTMfoEf8DNJ6ZazgNk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=c3larPKEHYZIW7cFiEHVMd3evQ3b9BxeH+jjYjLTi5fer5S/kCWIpPBc9nVaxbpml 1dQyweqeSdkyhlVWpYC4lOj4zd+ZNIkIUosQ8+tZq1NP74PtO8ha3iZaD1dqHS4ra6 8uM6EvptgF+mt+vP6v9zREl/OnAncybrCuizRLjQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Cameron Gutman , Dmitry Torokhov , Sasha Levin Subject: [PATCH 4.9 53/92] Input: xpad - restore LED state after device resume Date: Thu, 29 Nov 2018 15:12:22 +0100 Message-Id: <20181129140110.707916836@linuxfoundation.org> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181129140106.520639693@linuxfoundation.org> References: <20181129140106.520639693@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.9-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit a1fbf5bbef025b4844162b3b8868888003a7ee9c ] Set the LED_CORE_SUSPENDRESUME flag on our LED device so the LED state will be automatically restored by LED core on resume. Since Xbox One pads stop flashing only when reinitialized, we'll send them the initialization packet so they calm down too. Signed-off-by: Cameron Gutman Signed-off-by: Dmitry Torokhov Signed-off-by: Sasha Levin --- drivers/input/joystick/xpad.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c index 14da79ead653..153b1ee13e03 100644 --- a/drivers/input/joystick/xpad.c +++ b/drivers/input/joystick/xpad.c @@ -1213,6 +1213,7 @@ static int xpad_led_probe(struct usb_xpad *xpad) led_cdev = &led->led_cdev; led_cdev->name = led->name; led_cdev->brightness_set = xpad_led_set; + led_cdev->flags = LED_CORE_SUSPENDRESUME; error = led_classdev_register(&xpad->udev->dev, led_cdev); if (error) @@ -1689,8 +1690,16 @@ static int xpad_resume(struct usb_interface *intf) retval = xpad360w_start_input(xpad); } else { mutex_lock(&input->mutex); - if (input->users) + if (input->users) { retval = xpad_start_input(xpad); + } else if (xpad->xtype == XTYPE_XBOXONE) { + /* + * Even if there are no users, we'll send Xbox One pads + * the startup sequence so they don't sit there and + * blink until somebody opens the input device again. + */ + retval = xpad_start_xbox_one(xpad); + } mutex_unlock(&input->mutex); } -- 2.17.1