Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f6f02b7 authored by Pavel Rojtberg's avatar Pavel Rojtberg Committed by Dmitry Torokhov
Browse files

Input: xpad - clarify LED enumeration



Rename led_no -> pad_nr: the number stored there is not the LED number - it
gets translated later on to a LED number in xpad_identify_controller;

Signed-off-by: default avatarPavel Rojtberg <rojtberg@gmail.com>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 470446ec
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -345,7 +345,7 @@ struct usb_xpad {

	int mapping;			/* map d-pad to buttons or to axes */
	int xtype;			/* type of xbox device */
	unsigned long led_no;		/* led to lit on xbox360 controllers */
	unsigned long pad_nr;		/* the order x360 pads were attached */
};

/*
@@ -357,7 +357,6 @@ struct usb_xpad {
 *	The used report descriptor was taken from ITO Takayukis website:
 *	 http://euc.jp/periphs/xbox-controller.ja.html
 */

static void xpad_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *data)
{
	struct input_dev *dev = xpad->dev;
@@ -506,7 +505,6 @@ static void xpad_identify_controller(struct usb_xpad *xpad);
 * 01.1 - Pad state (Bytes 4+) valid
 *
 */

static void xpad360w_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *data)
{
	/* Presence change */
@@ -891,6 +889,7 @@ struct xpad_led {
};

/**
 * set the LEDs on Xbox360 / Wireless Controllers
 * @param command
 *  0: off
 *  1: all blink, then previous setting
@@ -943,10 +942,13 @@ static void xpad_send_led_command(struct usb_xpad *xpad, int command)
	mutex_unlock(&xpad->odata_mutex);
}

/*
 * Light up the segment corresponding to the pad number on
 * Xbox 360 Controllers.
 */
static void xpad_identify_controller(struct usb_xpad *xpad)
{
	/* Light up the segment corresponding to controller number */
	xpad_send_led_command(xpad, (xpad->led_no % 4) + 2);
	xpad_send_led_command(xpad, (xpad->pad_nr % 4) + 2);
}

static void xpad_led_set(struct led_classdev *led_cdev,
@@ -972,9 +974,9 @@ static int xpad_led_probe(struct usb_xpad *xpad)
	if (!led)
		return -ENOMEM;

	xpad->led_no = atomic_inc_return(&led_seq);
	xpad->pad_nr = atomic_inc_return(&led_seq);

	snprintf(led->name, sizeof(led->name), "xpad%lu", xpad->led_no);
	snprintf(led->name, sizeof(led->name), "xpad%lu", xpad->pad_nr);
	led->xpad = xpad;

	led_cdev = &led->led_cdev;