From 5df695fa14d866934c9f85c7c9921bf26b6e30ae Mon Sep 17 00:00:00 2001 From: Mykyta Dorokhin Date: Tue, 20 Sep 2016 20:37:56 +0300 Subject: mpt: Add preempt to the mLinux kernel for PPS signal --- recipes-kernel/linux/linux-3.12.27/mtp/defconfig | 29 ++++++++++++++++-------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/recipes-kernel/linux/linux-3.12.27/mtp/defconfig b/recipes-kernel/linux/linux-3.12.27/mtp/defconfig index b0818ff..3a8ef54 100644 --- a/recipes-kernel/linux/linux-3.12.27/mtp/defconfig +++ b/recipes-kernel/linux/linux-3.12.27/mtp/defconfig @@ -82,10 +82,16 @@ CONFIG_TICK_CPU_ACCOUNTING=y # # RCU Subsystem # -CONFIG_TINY_RCU=y -# CONFIG_PREEMPT_RCU is not set -# CONFIG_RCU_STALL_COMMON is not set +CONFIG_TREE_PREEMPT_RCU=y +# CONFIG_TINY_RCU is not set +CONFIG_PREEMPT_RCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_FANOUT=32 +CONFIG_RCU_FANOUT_LEAF=16 +# CONFIG_RCU_FANOUT_EXACT is not set # CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_BOOST is not set +# CONFIG_RCU_NOCB_CPU is not set # CONFIG_IKCONFIG is not set CONFIG_LOG_BUF_SHIFT=14 CONFIG_GENERIC_SCHED_CLOCK=y @@ -217,11 +223,7 @@ CONFIG_IOSCHED_CFQ=y # CONFIG_DEFAULT_CFQ is not set CONFIG_DEFAULT_NOOP=y CONFIG_DEFAULT_IOSCHED="noop" -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_UNINLINE_SPIN_UNLOCK=y CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y CONFIG_FREEZER=y @@ -369,9 +371,10 @@ CONFIG_VMSPLIT_3G=y # CONFIG_VMSPLIT_1G is not set CONFIG_PAGE_OFFSET=0xC0000000 CONFIG_ARCH_NR_GPIO=0 -CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_NONE is not set # CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y CONFIG_HZ_FIXED=100 CONFIG_HZ=100 CONFIG_SCHED_HRTICK=y @@ -2618,6 +2621,7 @@ CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_SCHED_DEBUG=y # CONFIG_SCHEDSTATS is not set # CONFIG_TIMER_STATS is not set +CONFIG_DEBUG_PREEMPT=y # # Lock Debugging (spinlocks, mutexes, etc...) @@ -2643,8 +2647,12 @@ CONFIG_DEBUG_BUGVERBOSE=y # # RCU Debugging # +# CONFIG_PROVE_RCU_DELAY is not set # CONFIG_SPARSE_RCU_POINTER is not set # CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RCU_CPU_STALL_VERBOSE=y +# CONFIG_RCU_CPU_STALL_INFO is not set # CONFIG_RCU_TRACE is not set # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set # CONFIG_NOTIFIER_ERROR_INJECTION is not set @@ -2660,6 +2668,7 @@ CONFIG_TRACING_SUPPORT=y CONFIG_FTRACE=y # CONFIG_FUNCTION_TRACER is not set # CONFIG_IRQSOFF_TRACER is not set +# CONFIG_PREEMPT_TRACER is not set # CONFIG_SCHED_TRACER is not set # CONFIG_ENABLE_DEFAULT_TRACERS is not set # CONFIG_FTRACE_SYSCALLS is not set -- cgit v1.2.3 From 9f6497b3edd39742fb85b3ad70c0f25251a18cf1 Mon Sep 17 00:00:00 2001 From: Mykyta Dorokhin Date: Wed, 21 Sep 2016 01:07:18 +0300 Subject: mtp: remove /dev/modem_at[0,1] before powering down the radio on mts-io loading Graceful cell radio power down can take 15+ seconds (to unregister from the network). While powering down the radio is still responsive to AT command. --- recipes-bsp/multitech/mts-io/mts-io.mtp.init | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/recipes-bsp/multitech/mts-io/mts-io.mtp.init b/recipes-bsp/multitech/mts-io/mts-io.mtp.init index f8df7ff..d8f8564 100644 --- a/recipes-bsp/multitech/mts-io/mts-io.mtp.init +++ b/recipes-bsp/multitech/mts-io/mts-io.mtp.init @@ -1,8 +1,13 @@ #!/bin/bash -hardware_init() { +lora_init() { # reset lora chip mts-io-sysfs store lora-reset 0 +} + +cell_init() { + # remove /dev/modem_at[0,1] symlinks + rm -f /dev/modem_at[0,1] # power down the cellular chip gracefully mts-io-sysfs store radio-power 0 @@ -15,7 +20,8 @@ case $1 in start) echo "Loading mts-io module" modprobe mts_io - hardware_init & + lora_init + cell_init & ;; stop) -- cgit v1.2.3