Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2520033imu; Thu, 29 Nov 2018 06:20:12 -0800 (PST) X-Google-Smtp-Source: AFSGD/WaeAibz7Zjd5b6GyL8tlsNqc57jaa/Te6XbptLntGPd7wmc9MplkH8rU1qijnYaFyH+xO6 X-Received: by 2002:a17:902:24e7:: with SMTP id l36-v6mr1640824plg.243.1543501212701; Thu, 29 Nov 2018 06:20:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543501212; cv=none; d=google.com; s=arc-20160816; b=GVz5GZ5jO1r9pZ0CU8JuEJ/+gWmSIfFwdLNBCt6nZI200CKai4ztuA22i0jX+6nRd2 jvDhAvo6yv6e3tJbOTyKLMcHIKwmScj4MZVKsRM1p+zrLWfibJL/ZL2M+oNbbBmbcrn8 vO5BHp/4wF3LAbIj3wFKx9AcZPxHG2DU5/ZoTVIWS41BVtdzLNjHGk7wKzad8pn5SRBF hYRlEzel46f8pzXCvYj/ZWn6URN704QFsn2ZnpfUApajjNobQLMVWEMxtDG3QpaNRKrP o5fkoaODQ+SpRmG3sBGHatWj/iiCt1noX41vhcFLYI44ZyFWMafcbCQ4NXH+ZKNe9W6S bh6A== 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=DB5wt7i01CFT3bGWkK/T/sbesY5Yb+j1r3ig4nsfLSQ=; b=SQVxYIaaq9iBaLmArCWquq0daS4mTLOH2qEQ1fVryMKqZJKu2SmxfnBI/3ToOIVtsm kFTNFgqzG2aHuQWa6DWkE0LMViVBsDwk+f9DrK5ec0u7TPLwbi81a5FBqHdKUn+DI/YV oAuRkutwEpWX3dLRqzUsFKxsApJvjTsO5aYKB9+WmQSo8aw2YyOQYbBfIPFWmr1/sfWI nzr28Es0dZsbSQu9SysXria/vgtteyEOluwBY14JBJtakO5Tqge8uqhJSYh/bbGE/GPs 3rbFGRkXgTvjVWwlAqllUCU2XDJa126ZGppSImT2AZhcQISJVzoTW+bUjGJWHcijxixB fBVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NEsFgj0P; 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 f21si2127096pgb.371.2018.11.29.06.19.57; Thu, 29 Nov 2018 06:20:12 -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=NEsFgj0P; 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 S1730831AbeK3BYN (ORCPT + 99 others); Thu, 29 Nov 2018 20:24:13 -0500 Received: from mail.kernel.org ([198.145.29.99]:46826 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728756AbeK3BYM (ORCPT ); Thu, 29 Nov 2018 20:24:12 -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 5577F208E7; Thu, 29 Nov 2018 14:18:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1543501121; bh=NyiQZbZDboC4lgZACFM2kF0pKjlzApiMM5B+FxpjObk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NEsFgj0PwsXRgi0+EYyEAry0TX+6uWSaj4zEjgfKQPEC+a+Awbdjb1uahq2U8eLJe D627OKgTc8wJrsh2ch8FcxtZvlojgkgk86Jla8kO1eJ+gTx4SAtNMRDximn9nULXxG LWMsLMsAaV4C4MBUN8gMl4z6x5BM4uWcH2LqJRds= 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.4 52/86] Input: xpad - restore LED state after device resume Date: Thu, 29 Nov 2018 15:12:17 +0100 Message-Id: <20181129140114.516070451@linuxfoundation.org> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181129140109.832117862@linuxfoundation.org> References: <20181129140109.832117862@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.4-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