|
@@ -69,6 +69,7 @@
|
|
|
#endif
|
|
|
#define CNSS_BDF_TYPE_DEFAULT CNSS_BDF_ELF
|
|
|
#define CNSS_TIME_SYNC_PERIOD_DEFAULT 900000
|
|
|
+#define CNSS_MIN_TIME_SYNC_PERIOD 2000
|
|
|
#define CNSS_DMS_QMI_CONNECTION_WAIT_MS 50
|
|
|
#define CNSS_DMS_QMI_CONNECTION_WAIT_RETRY 200
|
|
|
#define CNSS_DAEMON_CONNECT_TIMEOUT_MS 30000
|
|
@@ -3374,6 +3375,37 @@ static ssize_t recovery_show(struct device *dev,
|
|
|
return curr_len;
|
|
|
}
|
|
|
|
|
|
+static ssize_t time_sync_period_show(struct device *dev,
|
|
|
+ struct device_attribute *attr,
|
|
|
+ char *buf)
|
|
|
+{
|
|
|
+ struct cnss_plat_data *plat_priv = dev_get_drvdata(dev);
|
|
|
+
|
|
|
+ return scnprintf(buf, PAGE_SIZE, "%u ms\n",
|
|
|
+ plat_priv->ctrl_params.time_sync_period);
|
|
|
+}
|
|
|
+
|
|
|
+static ssize_t time_sync_period_store(struct device *dev,
|
|
|
+ struct device_attribute *attr,
|
|
|
+ const char *buf, size_t count)
|
|
|
+{
|
|
|
+ struct cnss_plat_data *plat_priv = dev_get_drvdata(dev);
|
|
|
+ unsigned int time_sync_period = 0;
|
|
|
+
|
|
|
+ if (!plat_priv)
|
|
|
+ return -ENODEV;
|
|
|
+
|
|
|
+ if (sscanf(buf, "%du", &time_sync_period) != 1) {
|
|
|
+ cnss_pr_err("Invalid time sync sysfs command\n");
|
|
|
+ return -EINVAL;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (time_sync_period >= CNSS_MIN_TIME_SYNC_PERIOD)
|
|
|
+ cnss_bus_update_time_sync_period(plat_priv, time_sync_period);
|
|
|
+
|
|
|
+ return count;
|
|
|
+}
|
|
|
+
|
|
|
static ssize_t recovery_store(struct device *dev,
|
|
|
struct device_attribute *attr,
|
|
|
const char *buf, size_t count)
|
|
@@ -3548,6 +3580,7 @@ static DEVICE_ATTR_WO(qdss_trace_stop);
|
|
|
static DEVICE_ATTR_WO(qdss_conf_download);
|
|
|
static DEVICE_ATTR_WO(hw_trace_override);
|
|
|
static DEVICE_ATTR_WO(charger_mode);
|
|
|
+static DEVICE_ATTR_RW(time_sync_period);
|
|
|
|
|
|
static struct attribute *cnss_attrs[] = {
|
|
|
&dev_attr_fs_ready.attr,
|
|
@@ -3559,6 +3592,7 @@ static struct attribute *cnss_attrs[] = {
|
|
|
&dev_attr_qdss_conf_download.attr,
|
|
|
&dev_attr_hw_trace_override.attr,
|
|
|
&dev_attr_charger_mode.attr,
|
|
|
+ &dev_attr_time_sync_period.attr,
|
|
|
NULL,
|
|
|
};
|
|
|
|