From 459b50ea4c2cee2e7648b8d212a0f5eab3daeef4 Mon Sep 17 00:00:00 2001 From: Tom Knot Date: Mon, 6 Aug 2018 16:55:47 +0200 Subject: [PATCH] Added always-create-tty flag --- device_tree/neuron-spi-new.dts | 3 +++ modules/unipi/src/unipi_common.h | 1 + modules/unipi/src/unipi_spi.c | 3 +++ modules/unipi/src/unipi_sysfs.c | 1 - version.txt | 2 +- 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/device_tree/neuron-spi-new.dts b/device_tree/neuron-spi-new.dts index d22574d..c229042 100644 --- a/device_tree/neuron-spi-new.dts +++ b/device_tree/neuron-spi-new.dts @@ -25,6 +25,7 @@ status = "okay"; neuron-board-index = <0>; neuron-probe-always-succeeds = <0>; + neuron-always-create-tty = <0>; }; neuronspi1: neuronspi@1 { compatible = "unipi,neuron"; @@ -39,6 +40,7 @@ status = "okay"; neuron-board-index = <1>; neuron-probe-always-succeeds = <0>; + neuron-always-create-tty = <0>; }; neuronspi2: neuronspi@2 { compatible = "unipi,neuron"; @@ -53,6 +55,7 @@ status = "okay"; neuron-board-index = <2>; neuron-probe-always-succeeds = <0>; + neuron-always-create-tty = <0>; }; }; }; diff --git a/modules/unipi/src/unipi_common.h b/modules/unipi/src/unipi_common.h index 4fed882..8ef7d5c 100644 --- a/modules/unipi/src/unipi_common.h +++ b/modules/unipi/src/unipi_common.h @@ -177,6 +177,7 @@ struct neuronspi_driver_data struct spinlock sysfs_regmap_lock; char platform_name[sizeof("io_group0")]; u32 probe_always_succeeds; + u32 always_create_uart; u8 *send_buf; u8 *recv_buf; u8 *first_probe_reply; diff --git a/modules/unipi/src/unipi_spi.c b/modules/unipi/src/unipi_spi.c index a78be07..e143896 100644 --- a/modules/unipi/src/unipi_spi.c +++ b/modules/unipi/src/unipi_spi.c @@ -948,6 +948,7 @@ s32 neuronspi_spi_probe(struct spi_device *spi) } of_property_read_u32_array(spi->dev.of_node, "neuron-board-index", &(n_spi->neuron_index), 1); of_property_read_u32_array(spi->dev.of_node, "neuron-probe-always-succeeds", &(n_spi->probe_always_succeeds), 1); + of_property_read_u32_array(spi->dev.of_node, "neuron-always-create-tty", &(n_spi->always_create_uart), 1); devtype = (struct neuronspi_devtype *)of_id->data; #if NEURONSPI_DETAILED_DEBUG > 0 printk(KERN_INFO "UNIPISPI: DEVICE TREE NODE FOUND %d\n", n_spi->neuron_index); @@ -1011,6 +1012,8 @@ s32 neuronspi_spi_probe(struct spi_device *spi) kfree(n_spi); printk(KERN_INFO "UNIPISPI: Probe did not detect a valid UniPi device on CS %d\n", spi->chip_select); return ret; + } else if (n_spi->always_create_uart) { + uart_count = 1; } if (n_spi->lower_board_id != 0xFF && n_spi->combination_id != 0xFF) { diff --git a/modules/unipi/src/unipi_sysfs.c b/modules/unipi/src/unipi_sysfs.c index bdb5ac3..10c1261 100644 --- a/modules/unipi/src/unipi_sysfs.c +++ b/modules/unipi/src/unipi_sysfs.c @@ -1176,7 +1176,6 @@ static DEVICE_ATTR(sys_gpio_ro_base, 0440, neuronspi_spi_gpio_show_ro_base, NULL static DEVICE_ATTR(mode_ai_voltage_current, 0660, neuronspi_iio_show_stm_ai_mode, neuronspi_iio_store_stm_ai_mode); static DEVICE_ATTR(mode_ao_voltage_current_resistance, 0660, neuronspi_iio_show_stm_ao_mode, neuronspi_iio_store_stm_ao_mode); static DEVICE_ATTR(mode_ai_voltage_current_resistance, 0660, neuronspi_iio_show_external_ai_mode, neuronspi_iio_store_external_ai_mode); -//static DEVICE_ATTR(mode_ao_voltage, 0660, neuronspi_iio_show_external_ao_mode, neuronspi_iio_store_external_ao_mode); static struct attribute *neuron_plc_attrs[] = { &dev_attr_model_name.attr, diff --git a/version.txt b/version.txt index 519ff13..b2d3493 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -Repository:unipi-kernel ActiveBranch:[uart_timeout] PrecedingRelease:v.0.12 PrecedingRevision:93(3db7517) LatestCommit:Thu Jul 19 16:31:58 CEST 2018 +Repository:unipi-kernel ActiveBranch:[master] PrecedingRelease:v.0.12 PrecedingRevision:100(1ab48c5) LatestCommit:Mon Aug 6 16:55:47 CEST 2018 -- 2.34.1