summaryrefslogtreecommitdiff
path: root/recipes-bsp/multitech/mts-io
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-bsp/multitech/mts-io')
-rw-r--r--recipes-bsp/multitech/mts-io/0001-linux5.4-fix-kernel-module-build-issues.patch134
1 files changed, 134 insertions, 0 deletions
diff --git a/recipes-bsp/multitech/mts-io/0001-linux5.4-fix-kernel-module-build-issues.patch b/recipes-bsp/multitech/mts-io/0001-linux5.4-fix-kernel-module-build-issues.patch
new file mode 100644
index 0000000..c8d1cdc
--- /dev/null
+++ b/recipes-bsp/multitech/mts-io/0001-linux5.4-fix-kernel-module-build-issues.patch
@@ -0,0 +1,134 @@
+From 332b8d4fb0421d542de87b20b6ee9437c542b1b6 Mon Sep 17 00:00:00 2001
+From: Mykyta Dorokhin <mykyta.dorokhin@globallogic.com>
+Date: Fri, 15 Jan 2021 15:30:13 +0200
+Subject: [PATCH] linux5.4: fix kernel module build issues
+
+---
+ io-module/machine/mt100eocg.c | 1 -
+ io-module/machine/mtcap.c | 2 --
+ io-module/machine/mtcdt.c | 1 -
+ io-module/machine/mtcpm.c | 2 --
+ io-module/machine/mths.c | 3 ---
+ io-module/machine/mtr.c | 1 -
+ io-module/mts-io.c | 15 +++++++++++----
+ 7 files changed, 11 insertions(+), 14 deletions(-)
+
+diff --git a/io-module/machine/mt100eocg.c b/io-module/machine/mt100eocg.c
+index c9d2961..ac00143 100644
+--- a/io-module/machine/mt100eocg.c
++++ b/io-module/machine/mt100eocg.c
+@@ -1,4 +1,3 @@
+-#include "at91gpio.h"
+ /* Used for both MT100EOCG 0.0 */
+ static struct gpio_pin gpio_pins_mt100eocg_0_0[] = {
+ {
+diff --git a/io-module/machine/mtcap.c b/io-module/machine/mtcap.c
+index c2a4687..0d4af0f 100644
+--- a/io-module/machine/mtcap.c
++++ b/io-module/machine/mtcap.c
+@@ -1,5 +1,3 @@
+-#include "at91gpio.h"
+-#include "mts_supercap.h"
+ /* Used for both MTCAP 0.0 and 0.1 */
+ static struct gpio_pin gpio_pins_mtcap_0_0[] = {
+ {
+diff --git a/io-module/machine/mtcdt.c b/io-module/machine/mtcdt.c
+index 575dd1e..aabbc2d 100644
+--- a/io-module/machine/mtcdt.c
++++ b/io-module/machine/mtcdt.c
+@@ -1,4 +1,3 @@
+-#include "at91gpio.h"
+ /*
+ * Within a struct gpio_pin, there is only one
+ * occurrence of each pin, so there is only one
+diff --git a/io-module/machine/mtcpm.c b/io-module/machine/mtcpm.c
+index 4a55127..32f7d9c 100644
+--- a/io-module/machine/mtcpm.c
++++ b/io-module/machine/mtcpm.c
+@@ -1,5 +1,3 @@
+-#include "mts_io.h"
+-
+ #define OMAP_GPIO(BANK, GPIO) ((BANK*32)+GPIO)
+ /*
+ * Within a struct gpio_pin, there is only one
+diff --git a/io-module/machine/mths.c b/io-module/machine/mths.c
+index c19598d..1922d88 100644
+--- a/io-module/machine/mths.c
++++ b/io-module/machine/mths.c
+@@ -4,9 +4,6 @@
+ * Created on: Apr 26, 2018
+ * Author: leonid
+ */
+-#include "at91gpio.h"
+-#include "buttons.h"
+-
+ static struct gpio_pin gpio_pins_mths_0_0[] = {
+ {
+ .name = "RADIO_POWER_MONITOR",
+diff --git a/io-module/machine/mtr.c b/io-module/machine/mtr.c
+index 8664984..9f00be8 100644
+--- a/io-module/machine/mtr.c
++++ b/io-module/machine/mtr.c
+@@ -1,4 +1,3 @@
+-#include "at91gpio.h"
+ static struct gpio_pin gpio_pins_mtr_0_0[] = {
+ {
+ .name = "ETH_RESET",
+diff --git a/io-module/mts-io.c b/io-module/mts-io.c
+index 6c14a74..a20cd39 100644
+--- a/io-module/mts-io.c
++++ b/io-module/mts-io.c
+@@ -42,6 +42,8 @@
+ #include <linux/io.h>
+ #include <linux/module.h>
+ #include <linux/firmware.h>
++
++#include "at91gpio.h"
+ #include "mts_io_module.h"
+ #include "mts_io.h"
+ #include "buttons.h"
+@@ -114,12 +116,12 @@ DEFINE_MUTEX(mts_io_mutex);
+ static unsigned int *timings_data = NULL;
+ static unsigned int timings_data_size = 0;
+ static unsigned int timings_data_index = 0;
+-static time_t timings_data_stop_seconds = 0;
++static time64_t timings_data_stop_seconds = 0;
+ static struct timer_list radio_reset_timer;
+ static volatile int radio_reset_timer_is_start = 0;
+ static struct timer_list radio_reset_available_timer;
+ static volatile int radio_reset_available_timer_is_start = 0;
+-static time_t time_now_secs(void);
++static time64_t time_now_secs(void);
+ /* generic GPIO support */
+ #include "gpio.c"
+
+@@ -284,10 +286,14 @@ static DEVICE_ATTR_MTS(dev_attr_radio_power, "radio-power",
+ mts_attr_show_gpio_pin, mts_attr_store_gpio_pin);
+
+ /* backoff-timers */
+-static time_t time_now_secs(void)
++static time64_t time_now_secs(void)
+ {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)
++ return ktime_get_real_seconds();
++#else
+ struct timespec ts = current_kernel_time();
+ return ts.tv_sec;
++#endif
+ }
+
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)
+@@ -479,8 +485,9 @@ static ssize_t mts_attr_show_radio_reset_backoff_seconds(struct device *dev,
+ ssize_t value;
+
+ if (strcmp(attr->attr.name, "radio-reset-backoff-seconds") == 0) {
++
+ if (radio_reset_timer_is_start == 1) {
+- value = sprintf(buf, "%lu", (timings_data_stop_seconds - time_now_secs()));
++ value = sprintf(buf, "%lld", (timings_data_stop_seconds - time_now_secs()));
+ } else {
+ value = sprintf(buf, "%d", 0);
+ }
+--
+1.9.1
+