Linux v4.14-rc1
This commit is contained in:
parent
77c153240f
commit
ab0c52a53b
@ -1,53 +0,0 @@
|
|||||||
From 2a99775c336303d2efc43eab4f24b34722a28faa Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Sergei A. Trusov" <sergei.a.trusov@ya.ru>
|
|
||||||
Date: Tue, 20 Jun 2017 18:08:35 +0200
|
|
||||||
Subject: [PATCH 11/16] Input: goodix: Add support for capacitive home button
|
|
||||||
|
|
||||||
On some x86 tablets with a Goodix touchscreen, the Windows logo on the
|
|
||||||
front is a capacitive home button. Touching this button results in a touch
|
|
||||||
with bit 4 of the first byte set, while only the lower 4 bits (0-3) are
|
|
||||||
used to indicate the number of touches.
|
|
||||||
|
|
||||||
Report a KEY_LEFTMETA press when this happens.
|
|
||||||
|
|
||||||
Note that the hardware might support more than one button, in which
|
|
||||||
case the "id" byte of coor_data would identify the button in question.
|
|
||||||
This is not implemented as we don't have access to hardware with
|
|
||||||
multiple buttons.
|
|
||||||
|
|
||||||
Signed-off-by: Sergei A. Trusov <sergei.a.trusov@ya.ru>
|
|
||||||
Acked-by: Bastien Nocera <hadess@hadess.net>
|
|
||||||
---
|
|
||||||
drivers/input/touchscreen/goodix.c | 9 +++++++++
|
|
||||||
1 file changed, 9 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c
|
|
||||||
index 240b16f3ee97..903137d9cf7d 100644
|
|
||||||
--- a/drivers/input/touchscreen/goodix.c
|
|
||||||
+++ b/drivers/input/touchscreen/goodix.c
|
|
||||||
@@ -267,6 +267,12 @@ static void goodix_process_events(struct goodix_ts_data *ts)
|
|
||||||
if (touch_num < 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
+ /*
|
|
||||||
+ * Bit 4 of the first byte reports the status of the capacitive
|
|
||||||
+ * Windows/Home button.
|
|
||||||
+ */
|
|
||||||
+ input_report_key(ts->input_dev, KEY_LEFTMETA, !!(point_data[0] & BIT(4)));
|
|
||||||
+
|
|
||||||
for (i = 0; i < touch_num; i++)
|
|
||||||
goodix_ts_report_touch(ts,
|
|
||||||
&point_data[1 + GOODIX_CONTACT_SIZE * i]);
|
|
||||||
@@ -612,6 +618,9 @@ static int goodix_request_input_dev(struct goodix_ts_data *ts)
|
|
||||||
ts->input_dev->id.product = ts->id;
|
|
||||||
ts->input_dev->id.version = ts->version;
|
|
||||||
|
|
||||||
+ /* Capacitive Windows/Home button on some devices */
|
|
||||||
+ input_set_capability(ts->input_dev, EV_KEY, KEY_LEFTMETA);
|
|
||||||
+
|
|
||||||
error = input_register_device(ts->input_dev);
|
|
||||||
if (error) {
|
|
||||||
dev_err(&ts->client->dev,
|
|
||||||
--
|
|
||||||
2.13.0
|
|
||||||
|
|
74
HID-rmi-Make-sure-the-HID-device-is-opened-on-resume.patch
Normal file
74
HID-rmi-Make-sure-the-HID-device-is-opened-on-resume.patch
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
From patchwork Sun Jul 23 01:15:09 2017
|
||||||
|
Content-Type: text/plain; charset="utf-8"
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Transfer-Encoding: 7bit
|
||||||
|
Subject: HID: rmi: Make sure the HID device is opened on resume
|
||||||
|
From: Lyude <lyude@redhat.com>
|
||||||
|
X-Patchwork-Id: 9858267
|
||||||
|
Message-Id: <20170723011509.23651-1-lyude@redhat.com>
|
||||||
|
To: linux-input@vger.kernel.org
|
||||||
|
Cc: Lyude <lyude@redhat.com>, Andrew Duggan <aduggan@synaptics.com>,
|
||||||
|
stable@vger.kernel.org, Jiri Kosina <jikos@kernel.org>,
|
||||||
|
Benjamin Tissoires <benjamin.tissoires@redhat.com>,
|
||||||
|
linux-kernel@vger.kernel.org
|
||||||
|
Date: Sat, 22 Jul 2017 21:15:09 -0400
|
||||||
|
|
||||||
|
So it looks like that suspend/resume has actually always been broken on
|
||||||
|
hid-rmi. The fact it worked was a rather silly coincidence that was
|
||||||
|
relying on the HID device to already be opened upon resume. This means
|
||||||
|
that so long as anything was reading the /dev/input/eventX node for for
|
||||||
|
an RMI device, it would suspend and resume correctly. As well, if
|
||||||
|
nothing happened to be keeping the HID device away it would shut off,
|
||||||
|
then the RMI driver would get confused on resume when it stopped
|
||||||
|
responding and explode.
|
||||||
|
|
||||||
|
So, call hid_hw_open() in rmi_post_resume() so we make sure that the
|
||||||
|
device is alive before we try talking to it.
|
||||||
|
|
||||||
|
This fixes RMI device suspend/resume over HID.
|
||||||
|
|
||||||
|
Signed-off-by: Lyude <lyude@redhat.com>
|
||||||
|
Cc: Andrew Duggan <aduggan@synaptics.com>
|
||||||
|
Cc: stable@vger.kernel.org
|
||||||
|
---
|
||||||
|
drivers/hid/hid-rmi.c | 15 +++++++++++----
|
||||||
|
1 file changed, 11 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
|
||||||
|
index 5b40c2614599..e7d124f9a27f 100644
|
||||||
|
--- a/drivers/hid/hid-rmi.c
|
||||||
|
+++ b/drivers/hid/hid-rmi.c
|
||||||
|
@@ -431,22 +431,29 @@ static int rmi_post_resume(struct hid_device *hdev)
|
||||||
|
{
|
||||||
|
struct rmi_data *data = hid_get_drvdata(hdev);
|
||||||
|
struct rmi_device *rmi_dev = data->xport.rmi_dev;
|
||||||
|
- int ret;
|
||||||
|
+ int ret = 0;
|
||||||
|
|
||||||
|
if (!(data->device_flags & RMI_DEVICE))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
- ret = rmi_reset_attn_mode(hdev);
|
||||||
|
+ /* Make sure the HID device is ready to receive events */
|
||||||
|
+ ret = hid_hw_open(hdev);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
+ ret = rmi_reset_attn_mode(hdev);
|
||||||
|
+ if (ret)
|
||||||
|
+ goto out;
|
||||||
|
+
|
||||||
|
ret = rmi_driver_resume(rmi_dev, false);
|
||||||
|
if (ret) {
|
||||||
|
hid_warn(hdev, "Failed to resume device: %d\n", ret);
|
||||||
|
- return ret;
|
||||||
|
+ goto out;
|
||||||
|
}
|
||||||
|
|
||||||
|
- return 0;
|
||||||
|
+out:
|
||||||
|
+ hid_hw_close(hdev);
|
||||||
|
+ return ret;
|
||||||
|
}
|
||||||
|
#endif /* CONFIG_PM */
|
||||||
|
|
1
baseconfig/CONFIG_INPUT_PWM_VIBRA
Normal file
1
baseconfig/CONFIG_INPUT_PWM_VIBRA
Normal file
@ -0,0 +1 @@
|
|||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
1
baseconfig/CONFIG_SQUASHFS_ZSTD
Normal file
1
baseconfig/CONFIG_SQUASHFS_ZSTD
Normal file
@ -0,0 +1 @@
|
|||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
1
baseconfig/arm/arm64/CONFIG_ARM_TEGRA186_CPUFREQ
Normal file
1
baseconfig/arm/arm64/CONFIG_ARM_TEGRA186_CPUFREQ
Normal file
@ -0,0 +1 @@
|
|||||||
|
CONFIG_ARM_TEGRA186_CPUFREQ=m
|
1
baseconfig/s390x/CONFIG_MFD_BD9571MWV
Normal file
1
baseconfig/s390x/CONFIG_MFD_BD9571MWV
Normal file
@ -0,0 +1 @@
|
|||||||
|
# CONFIG_MFD_BD9571MWV is not set
|
1
baseconfig/s390x/CONFIG_MFD_RTSX_USB
Normal file
1
baseconfig/s390x/CONFIG_MFD_RTSX_USB
Normal file
@ -0,0 +1 @@
|
|||||||
|
# CONFIG_MFD_RTSX_USB is not set
|
1
baseconfig/s390x/CONFIG_MFD_TPS68470
Normal file
1
baseconfig/s390x/CONFIG_MFD_TPS68470
Normal file
@ -0,0 +1 @@
|
|||||||
|
# CONFIG_MFD_TPS68470 is not set
|
1
baseconfig/s390x/CONFIG_MFD_VIPERBOARD
Normal file
1
baseconfig/s390x/CONFIG_MFD_VIPERBOARD
Normal file
@ -0,0 +1 @@
|
|||||||
|
# CONFIG_MFD_VIPERBOARD is not set
|
331
input-rmi4-remove-the-need-for-artifical-IRQ.patch
Normal file
331
input-rmi4-remove-the-need-for-artifical-IRQ.patch
Normal file
@ -0,0 +1,331 @@
|
|||||||
|
From 47c84357d95eccd77c1320b4bca74bbec649ef3c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||||
|
Date: Mon, 3 Apr 2017 18:18:21 +0200
|
||||||
|
Subject: [PATCH] Input: rmi4 - remove the need for artificial IRQ in case of
|
||||||
|
HID
|
||||||
|
|
||||||
|
The IRQ from rmi4 may interfere with the one we currently use on i2c-hid.
|
||||||
|
Given that there is already a need for an external API from rmi4 to
|
||||||
|
forward the attention data, we can, in this particular case rely on a
|
||||||
|
separate workqueue to prevent cursor jumps.
|
||||||
|
|
||||||
|
Reported-by: Cameron Gutman <aicommander@gmail.com>
|
||||||
|
Reported-by: Thorsten Leemhuis <linux@leemhuis.info>
|
||||||
|
Reported-by: Jason Ekstrand <jason@jlekstrand.net>
|
||||||
|
Tested-by: Andrew Duggan <aduggan@synaptics.com>
|
||||||
|
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
|
||||||
|
Signed-off-by: Lyude <lyude@redhat.com>
|
||||||
|
---
|
||||||
|
drivers/hid/hid-rmi.c | 64 ---------------------
|
||||||
|
drivers/input/rmi4/rmi_driver.c | 122 ++++++++++++++++++++++++----------------
|
||||||
|
include/linux/rmi.h | 1 +
|
||||||
|
3 files changed, 75 insertions(+), 112 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
|
||||||
|
index 5b40c26..4aa882c 100644
|
||||||
|
--- a/drivers/hid/hid-rmi.c
|
||||||
|
+++ b/drivers/hid/hid-rmi.c
|
||||||
|
@@ -316,19 +316,12 @@ static int rmi_input_event(struct hid_device *hdev, u8 *data, int size)
|
||||||
|
{
|
||||||
|
struct rmi_data *hdata = hid_get_drvdata(hdev);
|
||||||
|
struct rmi_device *rmi_dev = hdata->xport.rmi_dev;
|
||||||
|
- unsigned long flags;
|
||||||
|
|
||||||
|
if (!(test_bit(RMI_STARTED, &hdata->flags)))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
- local_irq_save(flags);
|
||||||
|
-
|
||||||
|
rmi_set_attn_data(rmi_dev, data[1], &data[2], size - 2);
|
||||||
|
|
||||||
|
- generic_handle_irq(hdata->rmi_irq);
|
||||||
|
-
|
||||||
|
- local_irq_restore(flags);
|
||||||
|
-
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -556,56 +549,6 @@ static const struct rmi_transport_ops hid_rmi_ops = {
|
||||||
|
.reset = rmi_hid_reset,
|
||||||
|
};
|
||||||
|
|
||||||
|
-static void rmi_irq_teardown(void *data)
|
||||||
|
-{
|
||||||
|
- struct rmi_data *hdata = data;
|
||||||
|
- struct irq_domain *domain = hdata->domain;
|
||||||
|
-
|
||||||
|
- if (!domain)
|
||||||
|
- return;
|
||||||
|
-
|
||||||
|
- irq_dispose_mapping(irq_find_mapping(domain, 0));
|
||||||
|
-
|
||||||
|
- irq_domain_remove(domain);
|
||||||
|
- hdata->domain = NULL;
|
||||||
|
- hdata->rmi_irq = 0;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-static int rmi_irq_map(struct irq_domain *h, unsigned int virq,
|
||||||
|
- irq_hw_number_t hw_irq_num)
|
||||||
|
-{
|
||||||
|
- irq_set_chip_and_handler(virq, &dummy_irq_chip, handle_simple_irq);
|
||||||
|
-
|
||||||
|
- return 0;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-static const struct irq_domain_ops rmi_irq_ops = {
|
||||||
|
- .map = rmi_irq_map,
|
||||||
|
-};
|
||||||
|
-
|
||||||
|
-static int rmi_setup_irq_domain(struct hid_device *hdev)
|
||||||
|
-{
|
||||||
|
- struct rmi_data *hdata = hid_get_drvdata(hdev);
|
||||||
|
- int ret;
|
||||||
|
-
|
||||||
|
- hdata->domain = irq_domain_create_linear(hdev->dev.fwnode, 1,
|
||||||
|
- &rmi_irq_ops, hdata);
|
||||||
|
- if (!hdata->domain)
|
||||||
|
- return -ENOMEM;
|
||||||
|
-
|
||||||
|
- ret = devm_add_action_or_reset(&hdev->dev, &rmi_irq_teardown, hdata);
|
||||||
|
- if (ret)
|
||||||
|
- return ret;
|
||||||
|
-
|
||||||
|
- hdata->rmi_irq = irq_create_mapping(hdata->domain, 0);
|
||||||
|
- if (hdata->rmi_irq <= 0) {
|
||||||
|
- hid_err(hdev, "Can't allocate an IRQ\n");
|
||||||
|
- return hdata->rmi_irq < 0 ? hdata->rmi_irq : -ENXIO;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return 0;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
|
||||||
|
{
|
||||||
|
struct rmi_data *data = NULL;
|
||||||
|
@@ -677,18 +620,11 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
|
||||||
|
|
||||||
|
mutex_init(&data->page_mutex);
|
||||||
|
|
||||||
|
- ret = rmi_setup_irq_domain(hdev);
|
||||||
|
- if (ret) {
|
||||||
|
- hid_err(hdev, "failed to allocate IRQ domain\n");
|
||||||
|
- return ret;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
if (data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)
|
||||||
|
rmi_hid_pdata.f30_data.disable = true;
|
||||||
|
|
||||||
|
data->xport.dev = hdev->dev.parent;
|
||||||
|
data->xport.pdata = rmi_hid_pdata;
|
||||||
|
- data->xport.pdata.irq = data->rmi_irq;
|
||||||
|
data->xport.proto_name = "hid";
|
||||||
|
data->xport.ops = &hid_rmi_ops;
|
||||||
|
|
||||||
|
diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
|
||||||
|
index 4f2bb59..6d7da84 100644
|
||||||
|
--- a/drivers/input/rmi4/rmi_driver.c
|
||||||
|
+++ b/drivers/input/rmi4/rmi_driver.c
|
||||||
|
@@ -209,32 +209,46 @@ void rmi_set_attn_data(struct rmi_device *rmi_dev, unsigned long irq_status,
|
||||||
|
attn_data.data = fifo_data;
|
||||||
|
|
||||||
|
kfifo_put(&drvdata->attn_fifo, attn_data);
|
||||||
|
+
|
||||||
|
+ schedule_work(&drvdata->attn_work);
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(rmi_set_attn_data);
|
||||||
|
|
||||||
|
-static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
|
||||||
|
+static void attn_callback(struct work_struct *work)
|
||||||
|
{
|
||||||
|
- struct rmi_device *rmi_dev = dev_id;
|
||||||
|
- struct rmi_driver_data *drvdata = dev_get_drvdata(&rmi_dev->dev);
|
||||||
|
+ struct rmi_driver_data *drvdata = container_of(work,
|
||||||
|
+ struct rmi_driver_data,
|
||||||
|
+ attn_work);
|
||||||
|
struct rmi4_attn_data attn_data = {0};
|
||||||
|
int ret, count;
|
||||||
|
|
||||||
|
count = kfifo_get(&drvdata->attn_fifo, &attn_data);
|
||||||
|
- if (count) {
|
||||||
|
- *(drvdata->irq_status) = attn_data.irq_status;
|
||||||
|
- drvdata->attn_data = attn_data;
|
||||||
|
- }
|
||||||
|
+ if (!count)
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
- ret = rmi_process_interrupt_requests(rmi_dev);
|
||||||
|
+ *(drvdata->irq_status) = attn_data.irq_status;
|
||||||
|
+ drvdata->attn_data = attn_data;
|
||||||
|
+
|
||||||
|
+ ret = rmi_process_interrupt_requests(drvdata->rmi_dev);
|
||||||
|
if (ret)
|
||||||
|
- rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
|
||||||
|
+ rmi_dbg(RMI_DEBUG_CORE, &drvdata->rmi_dev->dev,
|
||||||
|
"Failed to process interrupt request: %d\n", ret);
|
||||||
|
|
||||||
|
- if (count)
|
||||||
|
- kfree(attn_data.data);
|
||||||
|
+ kfree(attn_data.data);
|
||||||
|
|
||||||
|
if (!kfifo_is_empty(&drvdata->attn_fifo))
|
||||||
|
- return rmi_irq_fn(irq, dev_id);
|
||||||
|
+ schedule_work(&drvdata->attn_work);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
|
||||||
|
+{
|
||||||
|
+ struct rmi_device *rmi_dev = dev_id;
|
||||||
|
+ int ret;
|
||||||
|
+
|
||||||
|
+ ret = rmi_process_interrupt_requests(rmi_dev);
|
||||||
|
+ if (ret)
|
||||||
|
+ rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
|
||||||
|
+ "Failed to process interrupt request: %d\n", ret);
|
||||||
|
|
||||||
|
return IRQ_HANDLED;
|
||||||
|
}
|
||||||
|
@@ -242,7 +256,6 @@ static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
|
||||||
|
static int rmi_irq_init(struct rmi_device *rmi_dev)
|
||||||
|
{
|
||||||
|
struct rmi_device_platform_data *pdata = rmi_get_platform_data(rmi_dev);
|
||||||
|
- struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
|
||||||
|
int irq_flags = irq_get_trigger_type(pdata->irq);
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
@@ -260,8 +273,6 @@ static int rmi_irq_init(struct rmi_device *rmi_dev)
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
- data->enabled = true;
|
||||||
|
-
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -910,23 +921,27 @@ void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
|
||||||
|
if (data->enabled)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
- enable_irq(irq);
|
||||||
|
- data->enabled = true;
|
||||||
|
- if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
|
||||||
|
- retval = disable_irq_wake(irq);
|
||||||
|
- if (retval)
|
||||||
|
- dev_warn(&rmi_dev->dev,
|
||||||
|
- "Failed to disable irq for wake: %d\n",
|
||||||
|
- retval);
|
||||||
|
- }
|
||||||
|
+ if (irq) {
|
||||||
|
+ enable_irq(irq);
|
||||||
|
+ data->enabled = true;
|
||||||
|
+ if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
|
||||||
|
+ retval = disable_irq_wake(irq);
|
||||||
|
+ if (retval)
|
||||||
|
+ dev_warn(&rmi_dev->dev,
|
||||||
|
+ "Failed to disable irq for wake: %d\n",
|
||||||
|
+ retval);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- /*
|
||||||
|
- * Call rmi_process_interrupt_requests() after enabling irq,
|
||||||
|
- * otherwise we may lose interrupt on edge-triggered systems.
|
||||||
|
- */
|
||||||
|
- irq_flags = irq_get_trigger_type(pdata->irq);
|
||||||
|
- if (irq_flags & IRQ_TYPE_EDGE_BOTH)
|
||||||
|
- rmi_process_interrupt_requests(rmi_dev);
|
||||||
|
+ /*
|
||||||
|
+ * Call rmi_process_interrupt_requests() after enabling irq,
|
||||||
|
+ * otherwise we may lose interrupt on edge-triggered systems.
|
||||||
|
+ */
|
||||||
|
+ irq_flags = irq_get_trigger_type(pdata->irq);
|
||||||
|
+ if (irq_flags & IRQ_TYPE_EDGE_BOTH)
|
||||||
|
+ rmi_process_interrupt_requests(rmi_dev);
|
||||||
|
+ } else {
|
||||||
|
+ data->enabled = true;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
out:
|
||||||
|
mutex_unlock(&data->enabled_mutex);
|
||||||
|
@@ -946,20 +961,22 @@ void rmi_disable_irq(struct rmi_device *rmi_dev, bool enable_wake)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
data->enabled = false;
|
||||||
|
- disable_irq(irq);
|
||||||
|
- if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
|
||||||
|
- retval = enable_irq_wake(irq);
|
||||||
|
- if (retval)
|
||||||
|
- dev_warn(&rmi_dev->dev,
|
||||||
|
- "Failed to enable irq for wake: %d\n",
|
||||||
|
- retval);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* make sure the fifo is clean */
|
||||||
|
- while (!kfifo_is_empty(&data->attn_fifo)) {
|
||||||
|
- count = kfifo_get(&data->attn_fifo, &attn_data);
|
||||||
|
- if (count)
|
||||||
|
- kfree(attn_data.data);
|
||||||
|
+ if (irq) {
|
||||||
|
+ disable_irq(irq);
|
||||||
|
+ if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
|
||||||
|
+ retval = enable_irq_wake(irq);
|
||||||
|
+ if (retval)
|
||||||
|
+ dev_warn(&rmi_dev->dev,
|
||||||
|
+ "Failed to enable irq for wake: %d\n",
|
||||||
|
+ retval);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ /* make sure the fifo is clean */
|
||||||
|
+ while (!kfifo_is_empty(&data->attn_fifo)) {
|
||||||
|
+ count = kfifo_get(&data->attn_fifo, &attn_data);
|
||||||
|
+ if (count)
|
||||||
|
+ kfree(attn_data.data);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
out:
|
||||||
|
@@ -998,9 +1015,12 @@ EXPORT_SYMBOL_GPL(rmi_driver_resume);
|
||||||
|
static int rmi_driver_remove(struct device *dev)
|
||||||
|
{
|
||||||
|
struct rmi_device *rmi_dev = to_rmi_device(dev);
|
||||||
|
+ struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
|
||||||
|
|
||||||
|
rmi_disable_irq(rmi_dev, false);
|
||||||
|
|
||||||
|
+ cancel_work_sync(&data->attn_work);
|
||||||
|
+
|
||||||
|
rmi_f34_remove_sysfs(rmi_dev);
|
||||||
|
rmi_free_function_list(rmi_dev);
|
||||||
|
|
||||||
|
@@ -1230,9 +1250,15 @@ static int rmi_driver_probe(struct device *dev)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- retval = rmi_irq_init(rmi_dev);
|
||||||
|
- if (retval < 0)
|
||||||
|
- goto err_destroy_functions;
|
||||||
|
+ if (pdata->irq) {
|
||||||
|
+ retval = rmi_irq_init(rmi_dev);
|
||||||
|
+ if (retval < 0)
|
||||||
|
+ goto err_destroy_functions;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ data->enabled = true;
|
||||||
|
+
|
||||||
|
+ INIT_WORK(&data->attn_work, attn_callback);
|
||||||
|
|
||||||
|
if (data->f01_container->dev.driver) {
|
||||||
|
/* Driver already bound, so enable ATTN now. */
|
||||||
|
diff --git a/include/linux/rmi.h b/include/linux/rmi.h
|
||||||
|
index 64125443..dc90178 100644
|
||||||
|
--- a/include/linux/rmi.h
|
||||||
|
+++ b/include/linux/rmi.h
|
||||||
|
@@ -364,6 +364,7 @@ struct rmi_driver_data {
|
||||||
|
|
||||||
|
struct rmi4_attn_data attn_data;
|
||||||
|
DECLARE_KFIFO(attn_fifo, struct rmi4_attn_data, 16);
|
||||||
|
+ struct work_struct attn_work;
|
||||||
|
};
|
||||||
|
|
||||||
|
int rmi_register_transport_device(struct rmi_transport_dev *xport);
|
||||||
|
--
|
||||||
|
2.9.4
|
||||||
|
|
@ -2261,6 +2261,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5463,6 +5464,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2244,6 +2244,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5440,6 +5441,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2412,6 +2412,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5934,6 +5935,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2285,6 +2285,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5544,6 +5545,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2268,6 +2268,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5521,6 +5522,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2395,6 +2395,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
@ -5911,6 +5912,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
CONFIG_SRAM=y
|
CONFIG_SRAM=y
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2125,6 +2125,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5151,6 +5152,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2143,6 +2143,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5173,6 +5174,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2143,6 +2143,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5173,6 +5174,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2125,6 +2125,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5151,6 +5152,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2038,6 +2038,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4960,6 +4961,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2020,6 +2020,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4936,6 +4937,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1983,6 +1983,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4888,6 +4889,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1965,6 +1965,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4864,6 +4865,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1982,6 +1982,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4887,6 +4888,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1964,6 +1964,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
CONFIG_INPUT_PWM_BEEPER=m
|
CONFIG_INPUT_PWM_BEEPER=m
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SPARSEKMAP=m
|
CONFIG_INPUT_SPARSEKMAP=m
|
||||||
@ -4863,6 +4864,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1935,6 +1935,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
# CONFIG_INPUT_POLLDEV is not set
|
# CONFIG_INPUT_POLLDEV is not set
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
# CONFIG_INPUT_PWM_BEEPER is not set
|
# CONFIG_INPUT_PWM_BEEPER is not set
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
# CONFIG_INPUT_SPARSEKMAP is not set
|
# CONFIG_INPUT_SPARSEKMAP is not set
|
||||||
@ -2625,7 +2626,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
|
|||||||
# CONFIG_MFD_AXP20X_I2C is not set
|
# CONFIG_MFD_AXP20X_I2C is not set
|
||||||
# CONFIG_MFD_AXP20X is not set
|
# CONFIG_MFD_AXP20X is not set
|
||||||
# CONFIG_MFD_BCM590XX is not set
|
# CONFIG_MFD_BCM590XX is not set
|
||||||
CONFIG_MFD_BD9571MWV=m
|
# CONFIG_MFD_BD9571MWV is not set
|
||||||
# CONFIG_MFD_CORE is not set
|
# CONFIG_MFD_CORE is not set
|
||||||
# CONFIG_MFD_CPCAP is not set
|
# CONFIG_MFD_CPCAP is not set
|
||||||
# CONFIG_MFD_CROS_EC is not set
|
# CONFIG_MFD_CROS_EC is not set
|
||||||
@ -2665,7 +2666,7 @@ CONFIG_MFD_BD9571MWV=m
|
|||||||
# CONFIG_MFD_RN5T618 is not set
|
# CONFIG_MFD_RN5T618 is not set
|
||||||
# CONFIG_MFD_RT5033 is not set
|
# CONFIG_MFD_RT5033 is not set
|
||||||
# CONFIG_MFD_RTSX_PCI is not set
|
# CONFIG_MFD_RTSX_PCI is not set
|
||||||
CONFIG_MFD_RTSX_USB=m
|
# CONFIG_MFD_RTSX_USB is not set
|
||||||
# CONFIG_MFD_SEC_CORE is not set
|
# CONFIG_MFD_SEC_CORE is not set
|
||||||
# CONFIG_MFD_SI476X_CORE is not set
|
# CONFIG_MFD_SI476X_CORE is not set
|
||||||
# CONFIG_MFD_SKY81452 is not set
|
# CONFIG_MFD_SKY81452 is not set
|
||||||
@ -2690,9 +2691,9 @@ CONFIG_MFD_SM501_GPIO=y
|
|||||||
# CONFIG_MFD_TPS65912_I2C is not set
|
# CONFIG_MFD_TPS65912_I2C is not set
|
||||||
# CONFIG_MFD_TPS65912 is not set
|
# CONFIG_MFD_TPS65912 is not set
|
||||||
# CONFIG_MFD_TPS65912_SPI is not set
|
# CONFIG_MFD_TPS65912_SPI is not set
|
||||||
CONFIG_MFD_TPS68470=y
|
# CONFIG_MFD_TPS68470 is not set
|
||||||
# CONFIG_MFD_TPS80031 is not set
|
# CONFIG_MFD_TPS80031 is not set
|
||||||
CONFIG_MFD_VIPERBOARD=m
|
# CONFIG_MFD_VIPERBOARD is not set
|
||||||
# CONFIG_MFD_VX855 is not set
|
# CONFIG_MFD_VX855 is not set
|
||||||
# CONFIG_MFD_WL1273_CORE is not set
|
# CONFIG_MFD_WL1273_CORE is not set
|
||||||
# CONFIG_MFD_WM831X_I2C is not set
|
# CONFIG_MFD_WM831X_I2C is not set
|
||||||
@ -4784,6 +4785,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -1917,6 +1917,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
# CONFIG_INPUT_POLLDEV is not set
|
# CONFIG_INPUT_POLLDEV is not set
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
# CONFIG_INPUT_PWM_BEEPER is not set
|
# CONFIG_INPUT_PWM_BEEPER is not set
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
# CONFIG_INPUT_SPARSEKMAP is not set
|
# CONFIG_INPUT_SPARSEKMAP is not set
|
||||||
@ -2604,7 +2605,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
|
|||||||
# CONFIG_MFD_AXP20X_I2C is not set
|
# CONFIG_MFD_AXP20X_I2C is not set
|
||||||
# CONFIG_MFD_AXP20X is not set
|
# CONFIG_MFD_AXP20X is not set
|
||||||
# CONFIG_MFD_BCM590XX is not set
|
# CONFIG_MFD_BCM590XX is not set
|
||||||
CONFIG_MFD_BD9571MWV=m
|
# CONFIG_MFD_BD9571MWV is not set
|
||||||
# CONFIG_MFD_CORE is not set
|
# CONFIG_MFD_CORE is not set
|
||||||
# CONFIG_MFD_CPCAP is not set
|
# CONFIG_MFD_CPCAP is not set
|
||||||
# CONFIG_MFD_CROS_EC is not set
|
# CONFIG_MFD_CROS_EC is not set
|
||||||
@ -2644,7 +2645,7 @@ CONFIG_MFD_BD9571MWV=m
|
|||||||
# CONFIG_MFD_RN5T618 is not set
|
# CONFIG_MFD_RN5T618 is not set
|
||||||
# CONFIG_MFD_RT5033 is not set
|
# CONFIG_MFD_RT5033 is not set
|
||||||
# CONFIG_MFD_RTSX_PCI is not set
|
# CONFIG_MFD_RTSX_PCI is not set
|
||||||
CONFIG_MFD_RTSX_USB=m
|
# CONFIG_MFD_RTSX_USB is not set
|
||||||
# CONFIG_MFD_SEC_CORE is not set
|
# CONFIG_MFD_SEC_CORE is not set
|
||||||
# CONFIG_MFD_SI476X_CORE is not set
|
# CONFIG_MFD_SI476X_CORE is not set
|
||||||
# CONFIG_MFD_SKY81452 is not set
|
# CONFIG_MFD_SKY81452 is not set
|
||||||
@ -2669,9 +2670,9 @@ CONFIG_MFD_SM501_GPIO=y
|
|||||||
# CONFIG_MFD_TPS65912_I2C is not set
|
# CONFIG_MFD_TPS65912_I2C is not set
|
||||||
# CONFIG_MFD_TPS65912 is not set
|
# CONFIG_MFD_TPS65912 is not set
|
||||||
# CONFIG_MFD_TPS65912_SPI is not set
|
# CONFIG_MFD_TPS65912_SPI is not set
|
||||||
CONFIG_MFD_TPS68470=y
|
# CONFIG_MFD_TPS68470 is not set
|
||||||
# CONFIG_MFD_TPS80031 is not set
|
# CONFIG_MFD_TPS80031 is not set
|
||||||
CONFIG_MFD_VIPERBOARD=m
|
# CONFIG_MFD_VIPERBOARD is not set
|
||||||
# CONFIG_MFD_VX855 is not set
|
# CONFIG_MFD_VX855 is not set
|
||||||
# CONFIG_MFD_WL1273_CORE is not set
|
# CONFIG_MFD_WL1273_CORE is not set
|
||||||
# CONFIG_MFD_WM831X_I2C is not set
|
# CONFIG_MFD_WM831X_I2C is not set
|
||||||
@ -4760,6 +4761,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2191,6 +2191,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
# CONFIG_INPUT_PWM_BEEPER is not set
|
# CONFIG_INPUT_PWM_BEEPER is not set
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5225,6 +5226,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
@ -2173,6 +2173,7 @@ CONFIG_INPUT_PMIC8XXX_PWRKEY=m
|
|||||||
CONFIG_INPUT_POLLDEV=m
|
CONFIG_INPUT_POLLDEV=m
|
||||||
CONFIG_INPUT_POWERMATE=m
|
CONFIG_INPUT_POWERMATE=m
|
||||||
# CONFIG_INPUT_PWM_BEEPER is not set
|
# CONFIG_INPUT_PWM_BEEPER is not set
|
||||||
|
# CONFIG_INPUT_PWM_VIBRA is not set
|
||||||
CONFIG_INPUT_RETU_PWRBUTTON=m
|
CONFIG_INPUT_RETU_PWRBUTTON=m
|
||||||
CONFIG_INPUT_RK805_PWRKEY=m
|
CONFIG_INPUT_RK805_PWRKEY=m
|
||||||
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
|
||||||
@ -5203,6 +5204,7 @@ CONFIG_SQUASHFS=m
|
|||||||
CONFIG_SQUASHFS_XATTR=y
|
CONFIG_SQUASHFS_XATTR=y
|
||||||
CONFIG_SQUASHFS_XZ=y
|
CONFIG_SQUASHFS_XZ=y
|
||||||
CONFIG_SQUASHFS_ZLIB=y
|
CONFIG_SQUASHFS_ZLIB=y
|
||||||
|
CONFIG_SQUASHFS_ZSTD=y
|
||||||
# CONFIG_SRAM is not set
|
# CONFIG_SRAM is not set
|
||||||
# CONFIG_SRF04 is not set
|
# CONFIG_SRF04 is not set
|
||||||
# CONFIG_SRF08 is not set
|
# CONFIG_SRF08 is not set
|
||||||
|
14
kernel.spec
14
kernel.spec
@ -67,9 +67,9 @@ Summary: The Linux kernel
|
|||||||
# The next upstream release sublevel (base_sublevel+1)
|
# The next upstream release sublevel (base_sublevel+1)
|
||||||
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
||||||
# The rc snapshot level
|
# The rc snapshot level
|
||||||
%global rcrev 0
|
%global rcrev 1
|
||||||
# The git snapshot level
|
# The git snapshot level
|
||||||
%define gitrev 6
|
%define gitrev 0
|
||||||
# Set rpm version accordingly
|
# Set rpm version accordingly
|
||||||
%define rpmversion 4.%{upstream_sublevel}.0
|
%define rpmversion 4.%{upstream_sublevel}.0
|
||||||
%endif
|
%endif
|
||||||
@ -322,7 +322,7 @@ Summary: The Linux kernel
|
|||||||
%else
|
%else
|
||||||
%define listnewconfig_fail 1
|
%define listnewconfig_fail 1
|
||||||
#FIXME
|
#FIXME
|
||||||
%define configmismatch_fail 0
|
%define configmismatch_fail 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# To temporarily exclude an architecture from being built, add it to
|
# To temporarily exclude an architecture from being built, add it to
|
||||||
@ -632,11 +632,14 @@ Patch502: CVE-2017-7477.patch
|
|||||||
Patch601: 0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch
|
Patch601: 0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch
|
||||||
Patch602: 0002-Input-soc_button_array-Suppress-power-button-presses.patch
|
Patch602: 0002-Input-soc_button_array-Suppress-power-button-presses.patch
|
||||||
Patch610: 0010-Input-silead-Add-support-for-capactive-home-button-f.patch
|
Patch610: 0010-Input-silead-Add-support-for-capactive-home-button-f.patch
|
||||||
Patch611: 0011-Input-goodix-Add-support-for-capacitive-home-button.patch
|
|
||||||
|
|
||||||
# rhbz 1476467
|
# rhbz 1476467
|
||||||
Patch617: Fix-for-module-sig-verification.patch
|
Patch617: Fix-for-module-sig-verification.patch
|
||||||
|
|
||||||
|
# rhbz 1431375
|
||||||
|
Patch618: HID-rmi-Make-sure-the-HID-device-is-opened-on-resume.patch
|
||||||
|
Patch619: input-rmi4-remove-the-need-for-artifical-IRQ.patch
|
||||||
|
|
||||||
# END OF PATCH DEFINITIONS
|
# END OF PATCH DEFINITIONS
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
@ -2191,6 +2194,9 @@ fi
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Sep 18 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.0-0.rc1.git0.1
|
||||||
|
- Linux v4.14-rc1
|
||||||
|
|
||||||
* Mon Sep 18 2017 Justin M. Forbes <jforbes@fedoraproject.org>
|
* Mon Sep 18 2017 Justin M. Forbes <jforbes@fedoraproject.org>
|
||||||
- Disable debugging options.
|
- Disable debugging options.
|
||||||
|
|
||||||
|
@ -6,13 +6,13 @@ Subject: [PATCH] silence fbcon logo
|
|||||||
Bugzilla: N/A
|
Bugzilla: N/A
|
||||||
Upstream-status: Fedora mustard
|
Upstream-status: Fedora mustard
|
||||||
---
|
---
|
||||||
drivers/video/console/fbcon.c | 26 +++++++++++++++++++-------
|
drivers/video/fbdev/core/fbcon.c | 26 +++++++++++++++++++-------
|
||||||
1 file changed, 19 insertions(+), 7 deletions(-)
|
1 file changed, 19 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
|
diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c
|
||||||
index afd3301ac40c..2e08ba0ade3e 100644
|
index afd3301ac40c..2e08ba0ade3e 100644
|
||||||
--- a/drivers/video/console/fbcon.c
|
--- a/drivers/video/fbdev/core/fbcon.c
|
||||||
+++ b/drivers/video/console/fbcon.c
|
+++ b/drivers/video/fbdev/core/fbcon.c
|
||||||
@@ -634,13 +634,15 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
|
@@ -634,13 +634,15 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
|
||||||
kfree(save);
|
kfree(save);
|
||||||
}
|
}
|
||||||
@ -36,10 +36,11 @@ index afd3301ac40c..2e08ba0ade3e 100644
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* MODULE */
|
#endif /* MODULE */
|
||||||
@@ -3654,6 +3656,16 @@ static void __exit fb_console_exit(void)
|
@@ -3671,4 +3671,15 @@ void __exit fb_console_exit(void)
|
||||||
|
do_unregister_con_driver(&fb_con);
|
||||||
module_exit(fb_console_exit);
|
console_unlock();
|
||||||
|
}
|
||||||
|
+
|
||||||
+#else
|
+#else
|
||||||
+
|
+
|
||||||
+static int __init quiet_logo(char *str)
|
+static int __init quiet_logo(char *str)
|
||||||
@ -51,8 +52,6 @@ index afd3301ac40c..2e08ba0ade3e 100644
|
|||||||
+early_param("quiet", quiet_logo);
|
+early_param("quiet", quiet_logo);
|
||||||
+
|
+
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
MODULE_LICENSE("GPL");
|
|
||||||
--
|
--
|
||||||
2.7.4
|
2.7.4
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1,3 +1,3 @@
|
|||||||
SHA512 (linux-4.13.tar.xz) = a557c2f0303ae618910b7106ff63d9978afddf470f03cb72aa748213e099a0ecd5f3119aea6cbd7b61df30ca6ef3ec57044d524b7babbaabddf8b08b8bafa7d2
|
SHA512 (linux-4.13.tar.xz) = a557c2f0303ae618910b7106ff63d9978afddf470f03cb72aa748213e099a0ecd5f3119aea6cbd7b61df30ca6ef3ec57044d524b7babbaabddf8b08b8bafa7d2
|
||||||
SHA512 (perf-man-4.13.tar.gz) = 9bcc2cd8e56ec583ed2d8e0b0c88e7a94035a1915e40b3177bb02d6c0f10ddd4df9b097b1f5af59efc624226b613e240ddba8ddc2156f3682f992d5455fc5c03
|
SHA512 (perf-man-4.13.tar.gz) = 9bcc2cd8e56ec583ed2d8e0b0c88e7a94035a1915e40b3177bb02d6c0f10ddd4df9b097b1f5af59efc624226b613e240ddba8ddc2156f3682f992d5455fc5c03
|
||||||
SHA512 (patch-4.13-git6.xz) = 58de784cb0c2d14acfd1f1711bb960cc0d1dd2607931bf7ed4561661f0f69e9fde29644a78944d215fc70a5c6471a56435f57c055d1f0686a992be18580cea59
|
SHA512 (patch-4.14-rc1.xz) = b74b27279197aa81bd5d906a7da83ecfecf23231b7889bd280b071920bb0094b4aef37ff86a9bbe47c13bd23ee80db81acfb2e49ce25d77b8b3ae3c8c203ae22
|
||||||
|
Loading…
Reference in New Issue
Block a user