Colin Pitrat
87041a58d3
gpio: sch: Fix Oops on module load on Asus Eee PC 1201
...
This fixes the issue descirbe in bug 117531
(https://bugzilla.kernel.org/show_bug.cgi?id=117531 ).
It's a regression introduced in linux 4.5 that causes a Oops at load of
gpio_sch and prevents powering off the computer.
The issue is that sch_gpio_reg_set is called in sch_gpio_probe before
gpio_chip data is initialized with the pointer to the sch_gpio struct. As
sch_gpio_reg_set calls gpiochip_get_data, it returns NULL which causes
the Oops.
The patch follows Mika's advice (https://lkml.org/lkml/2016/5/9/61 ) and
consists in modifying sch_gpio_reg_get and sch_gpio_reg_set to take a
sch_gpio struct directly instead of a gpio_chip, which avoids the call to
gpiochip_get_data.
Thanks Mika for your patience with me :-)
Cc: stable@vger.kernel.org
Signed-off-by: Colin Pitrat <colin.pitrat@gmail.com>
Acked-by: Alexandre Courbot <acourbot@nvidia.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2016-07-04 16:50:40 +02:00
..
2016-02-25 10:04:25 +01:00
2016-03-31 10:25:51 +02:00
2016-02-23 20:19:42 +05:30
2016-06-08 10:08:12 +02:00
2016-06-13 14:48:10 +02:00
2016-05-02 09:32:04 -07:00
2016-02-23 20:19:46 +05:30
2016-02-23 20:34:06 +05:30
2016-02-23 20:34:24 +05:30
2016-01-27 10:50:22 +01:00
2016-02-16 00:19:52 +01:00
2016-03-30 10:38:51 +02:00
2016-02-23 20:34:29 +05:30
2016-02-25 15:20:43 +01:00
2016-06-08 14:04:35 +02:00
2016-04-15 10:09:48 +02:00
2016-02-23 20:35:27 +05:30
2016-02-23 20:35:27 +05:30
2016-02-23 20:35:28 +05:30
2016-02-23 20:35:29 +05:30
2016-02-23 20:35:29 +05:30
2016-02-22 13:47:49 +01:00
2016-02-23 20:35:30 +05:30
2016-05-11 11:32:39 +02:00
2016-02-23 20:35:30 +05:30
2016-04-18 13:32:20 +02:00
2016-02-23 20:35:31 +05:30
2016-02-16 00:19:53 +01:00
2016-02-23 20:35:32 +05:30
2016-03-31 11:59:43 +02:00
2016-02-23 20:35:33 +05:30
2016-02-23 20:35:34 +05:30
2016-02-19 00:20:30 +01:00
2016-04-09 20:14:35 +02:00
2016-01-05 11:21:20 +01:00
2016-03-09 22:00:27 +07:00
2016-05-30 09:42:03 +02:00
2016-02-23 20:35:35 +05:30
2016-01-05 11:21:07 +01:00
2016-01-05 11:21:07 +01:00
2016-03-31 15:00:28 +02:00
2016-03-31 15:02:09 +02:00
2016-01-05 11:21:07 +01:00
2016-03-31 10:41:50 +02:00
2016-05-17 17:39:42 -07:00
2016-01-05 11:21:08 +01:00
2016-01-13 10:21:06 +01:00
2016-04-29 16:14:32 +02:00
2016-03-31 15:03:13 +02:00
2016-03-09 10:44:13 +07:00
2016-02-16 00:20:03 +01:00
2016-01-05 11:21:09 +01:00
2016-03-31 15:05:44 +02:00
2016-02-23 20:35:37 +05:30
2016-03-30 10:38:51 +02:00
2016-04-26 15:56:47 +02:00
2016-04-05 17:02:36 +02:00
2016-05-17 17:39:42 -07:00
2016-02-23 20:35:39 +05:30
2016-01-05 15:46:34 +01:00
2016-02-25 15:20:46 +01:00
2016-04-28 14:36:37 +02:00
2016-04-08 10:10:08 +02:00
2016-04-05 17:02:35 +02:00
2016-05-17 17:39:42 -07:00
2016-02-23 20:35:41 +05:30
2016-01-05 11:21:20 +01:00
2016-02-16 00:19:53 +01:00
2016-07-04 16:50:40 +02:00
2016-05-11 13:46:49 +02:00
2016-02-23 20:35:42 +05:30
2016-03-31 15:07:40 +02:00
2016-05-11 13:48:03 +02:00
2016-02-23 20:35:43 +05:30
2016-04-14 14:03:26 +02:00
2016-02-23 20:35:44 +05:30
2016-02-23 20:35:44 +05:30
2016-04-05 17:02:35 +02:00
2016-06-22 17:58:07 +02:00
2016-05-11 13:49:11 +02:00
2016-03-31 15:14:37 +02:00
2016-04-05 17:02:37 +02:00
2016-03-16 08:50:33 +00:00
2016-04-14 14:03:25 +02:00
2016-04-05 17:02:37 +02:00
2016-03-09 22:02:52 +07:00
2016-02-25 15:20:44 +01:00
2016-02-23 20:35:49 +05:30
2016-01-05 11:21:16 +01:00
2016-02-23 20:35:50 +05:30
2016-01-05 11:21:16 +01:00
2016-01-05 11:21:16 +01:00
2016-02-23 20:35:50 +05:30
2016-01-05 11:21:17 +01:00
2016-02-23 20:35:51 +05:30
2016-01-05 11:21:20 +01:00
2016-04-14 14:03:28 +02:00
2016-04-14 14:03:28 +02:00
2016-02-23 20:35:52 +05:30
2016-04-14 14:03:29 +02:00
2016-05-02 09:32:04 -07:00
2016-03-31 10:22:53 +02:00
2016-05-17 17:39:42 -07:00
2016-01-07 10:06:56 +01:00
2016-05-27 15:26:11 -07:00
2016-01-05 11:21:20 +01:00
2016-05-11 13:50:01 +02:00
2016-03-31 15:10:25 +02:00
2016-06-08 10:36:29 +02:00
2016-04-30 13:51:59 +02:00
2016-06-08 10:58:20 +02:00
2016-02-25 16:08:45 +01:00
2016-06-17 18:12:19 +02:00
2016-04-26 10:51:36 +02:00
2016-06-17 20:21:12 -07:00
2016-04-29 16:14:32 +02:00