Skip to content

Commit

Permalink
3.8-rt: enable PREEMPT-RT patchset
Browse files Browse the repository at this point in the history
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
  • Loading branch information
koenkooi committed May 27, 2013
1 parent e2b23c7 commit aafe3d8
Show file tree
Hide file tree
Showing 4 changed files with 47 additions and 27 deletions.
50 changes: 39 additions & 11 deletions configs/beaglebone
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm 3.8.12 Kernel Configuration
# Linux/arm 3.8.13 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
Expand Down Expand Up @@ -58,6 +58,7 @@ CONFIG_HARDIRQS_SW_RESEND=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_IRQ_DOMAIN=y
# CONFIG_IRQ_DOMAIN_DEBUG is not set
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
CONFIG_KTIME_SCALAR=y
CONFIG_GENERIC_CLOCKEVENTS=y
Expand Down Expand Up @@ -85,13 +86,17 @@ CONFIG_TASK_IO_ACCOUNTING=y
#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_PREEMPT_RCU is not set
# CONFIG_TREE_RCU is not set
CONFIG_TREE_PREEMPT_RCU=y
CONFIG_PREEMPT_RCU=y
CONFIG_RCU_FANOUT=32
CONFIG_RCU_FANOUT_LEAF=16
# CONFIG_RCU_FANOUT_EXACT is not set
# CONFIG_RCU_FAST_NO_HZ is not set
# CONFIG_TREE_RCU_TRACE is not set
CONFIG_RCU_BOOST=y
CONFIG_RCU_BOOST_PRIO=1
CONFIG_RCU_BOOST_DELAY=500
# CONFIG_RCU_NOCB_CPU is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
Expand Down Expand Up @@ -165,6 +170,7 @@ CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
CONFIG_OPROFILE=m
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
Expand Down Expand Up @@ -458,9 +464,15 @@ CONFIG_NR_CPUS=4
CONFIG_HOTPLUG_CPU=y
CONFIG_LOCAL_TIMERS=y
CONFIG_ARCH_NR_GPIO=0
CONFIG_PREEMPT=y
CONFIG_PREEMPT_RT_BASE=y
CONFIG_HAVE_PREEMPT_LAZY=y
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT__LL is not set
CONFIG_PREEMPT_RTB=y
# CONFIG_PREEMPT_RT_FULL is not set
CONFIG_PREEMPT_COUNT=y
CONFIG_HZ=512
CONFIG_THUMB2_KERNEL=y
CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11=y
Expand Down Expand Up @@ -934,6 +946,7 @@ CONFIG_BPF_JIT=y
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NET_DROP_MONITOR=m
# CONFIG_HAMRADIO is not set
CONFIG_CAN=m
CONFIG_CAN_RAW=m
Expand Down Expand Up @@ -1290,6 +1303,7 @@ CONFIG_VIRTIO_BLK=m
# CONFIG_SENSORS_LIS3LV02D is not set
# CONFIG_AD525X_DPOT is not set
# CONFIG_ATMEL_PWM is not set
CONFIG_HWLAT_DETECTOR=m
# CONFIG_ICS932S401 is not set
# CONFIG_ENCLOSURE_SERVICES is not set
# CONFIG_APDS9802ALS is not set
Expand Down Expand Up @@ -3190,7 +3204,7 @@ CONFIG_USB_CYPRESS_CY7C63=m
CONFIG_USB_CYTHERM=m
CONFIG_USB_IDMOUSE=m
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_APPLEDISPLAY is not set
CONFIG_USB_APPLEDISPLAY=m
# CONFIG_USB_SISUSBVGA is not set
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=m
Expand Down Expand Up @@ -3429,7 +3443,7 @@ CONFIG_UIO_PDRV=y
CONFIG_UIO_PDRV_GENIRQ=y
# CONFIG_UIO_DMEM_GENIRQ is not set
CONFIG_UIO_PRUSS=m
CONFIG_VIRTIO=m
CONFIG_VIRTIO=y

#
# Virtio drivers
Expand Down Expand Up @@ -3627,8 +3641,9 @@ CONFIG_OF_IOMMU=y
#
# Remoteproc drivers (EXPERIMENTAL)
#
CONFIG_REMOTEPROC=m
CONFIG_REMOTEPROC=y
CONFIG_STE_MODEM_RPROC=m
CONFIG_PRU_RPROC=y

#
# Rpmsg drivers (EXPERIMENTAL)
Expand Down Expand Up @@ -3992,7 +4007,6 @@ CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_LOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
Expand All @@ -4009,16 +4023,19 @@ CONFIG_TIMER_STATS=y
# CONFIG_DEBUG_SLAB is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y
# CONFIG_DEBUG_KMEMLEAK is not set
CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_PROVE_LOCKING is not set
# CONFIG_PROVE_RCU_DELAY is not set
# CONFIG_SPARSE_RCU_POINTER is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
CONFIG_STACKTRACE=y
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_HIGHMEM is not set
Expand All @@ -4036,6 +4053,7 @@ CONFIG_DEBUG_INFO_REDUCED=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=60
CONFIG_RCU_CPU_STALL_VERBOSE=y
# CONFIG_RCU_CPU_STALL_INFO is not set
# CONFIG_RCU_TRACE is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
Expand All @@ -4049,27 +4067,37 @@ CONFIG_PM_NOTIFIER_ERROR_INJECT=m
# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACER_MAX_TRACE=y
CONFIG_TRACE_CLOCK=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=y
# CONFIG_EVENT_POWER_TRACING_DEPRECATED is not set
CONFIG_CONTEXT_SWITCH_TRACER=y
CONFIG_RING_BUFFER_ALLOW_SWAP=y
CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
# CONFIG_FUNCTION_TRACER is not set
# CONFIG_IRQSOFF_TRACER is not set
CONFIG_PREEMPT_TRACER=y
CONFIG_PREEMPT_OFF_HIST=y
# CONFIG_SCHED_TRACER is not set
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
CONFIG_MISSED_TIMER_OFFSETS_HIST=y
# CONFIG_FTRACE_SYSCALLS is not set
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_STACK_TRACER is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_PROBE_EVENTS is not set
# CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_RBTREE_TEST is not set
# CONFIG_INTERVAL_TREE_TEST is not set
Expand Down Expand Up @@ -4221,7 +4249,7 @@ CONFIG_ASYMMETRIC_KEY_TYPE=m
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=m
CONFIG_PUBLIC_KEY_ALGO_RSA=m
CONFIG_X509_CERTIFICATE_PARSER=m
# CONFIG_BINARY_PRINTF is not set
CONFIG_BINARY_PRINTF=y

#
# Library routines
Expand Down
14 changes: 4 additions & 10 deletions patch.sh
Expand Up @@ -12,19 +12,19 @@ DIR="$PWD"
PATCHPATH="${DIR}/patches"
EXPORTPATH="${DIR}/export"

RECIPEDIR="linux-mainline-3.8"
RECIPENAME="linux-mainline_3.8.bb"
RECIPEDIR="linux-rt-3.8"
RECIPENAME="linux-rt_3.8.bb"
RECIPEFILE="${DIR}/recipes/${RECIPENAME}"

#For TAG, use mainline Kernel tags
TAG="v3.8.13"
EXTRATAG=""
EXTRATAG="-rt"

EXTERNAL_TREE="git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
EXTERNAL_BRANCH="linux-3.8.y"
EXTERNAL_SHA="dbf932a9b316d5b29b3e220e5a30e7a165ad2992"

PATCHSET="dma rtc pinctrl cpufreq adc i2c da8xx-fb pwm mmc crypto 6lowpan capebus arm omap omap_sakoman omap_beagle_expansion omap_beagle omap_panda net drm not-capebus pru usb PG2 reboot iio w1 gpmc mxt ssd130x build hdmi resetctrl camera resources"
PATCHSET="dma rtc pinctrl cpufreq adc i2c da8xx-fb pwm mmc crypto 6lowpan capebus arm omap omap_sakoman omap_beagle_expansion omap_beagle omap_panda net drm not-capebus pru usb PG2 reboot iio w1 gpmc mxt ssd130x build hdmi resetctrl camera resources preempt-rt"

git_kernel_stable () {
git pull git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git master --tags || true
Expand Down Expand Up @@ -122,7 +122,6 @@ done

echo ' file://defconfig \' >> ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPENAME}
echo ' file://am335x-pm-firmware.bin \' >> ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPENAME}
echo ' file://db.txt \' >> ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPENAME}
echo "\"" >> ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPENAME}

mkdir -p ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPEDIR}
Expand All @@ -138,8 +137,3 @@ cp ${DIR}/configs/beagleboard ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPEDIR}
if [ -e ${DIR}/kernel/am335x-pm-firmware.bin ] ; then
cp ${DIR}/kernel/am335x-pm-firmware.bin ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPEDIR}/
fi

if [ -e ${DIR}/db.txt ] ; then
cp ${DIR}/db.txt ${DIR}/kernel/net/wireless
cp ${DIR}/db.txt ${EXPORTPATH}-oe/recipes-kernel/linux/${RECIPEDIR}/
fi
@@ -1,4 +1,4 @@
From 5a7e0bd4ba953b693da120045b77faa18fe1a4df Mon Sep 17 00:00:00 2001
From a4458d61917641820fdfd1ea2fe625c2fa4b5aa3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx@linutronix.de>
Date: Wed, 6 Feb 2013 15:30:56 -0500
Subject: [PATCH 006/291] OF: Convert devtree lock from rw_lock to raw spinlock
Expand Down Expand Up @@ -53,7 +53,7 @@ index 1303021..9f20566 100644

/* XXX Upate procfs if necessary... */
diff --git a/drivers/of/base.c b/drivers/of/base.c
index 85cd1d9..1c1708a 100644
index 85cd1d9..1e63701 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -55,7 +55,7 @@ static DEFINE_MUTEX(of_aliases_mutex);
Expand Down Expand Up @@ -399,7 +399,7 @@ index 85cd1d9..1c1708a 100644
of_allnodes = np;
of_node_clear_flag(np, OF_DETACHED);
- write_unlock_irqrestore(&devtree_lock, flags);
+ pin_unlock_irqrestore(&devtree_lock, flags);
+ raw_spin_unlock_irqrestore(&devtree_lock, flags);

of_add_proc_dt_entry(np);
return 0;
Expand Down
4 changes: 1 addition & 3 deletions recipes/linux-mainline_3.8.bb → recipes/linux-rt_3.8.bb
Expand Up @@ -8,7 +8,7 @@ COMPATIBLE_MACHINE = "(beaglebone)"
# The main PR is now using MACHINE_KERNEL_PR, for omap3 see conf/machine/include/omap3.inc
MACHINE_KERNEL_PR_append = "a"

FILESPATH =. "${FILE_DIRNAME}/linux-mainline-3.8:${FILE_DIRNAME}/linux-mainline-3.8/${MACHINE}:"
FILESPATH =. "${FILE_DIRNAME}/linux-rt-3.8:${FILE_DIRNAME}/linux-rt-3.8/${MACHINE}:"

S = "${WORKDIR}/git"

Expand All @@ -21,6 +21,4 @@ do_configure_prepend() {
if [ -e ${WORKDIR}/am335x-pm-firmware.bin ] ; then
cp ${WORKDIR}/am335x-pm-firmware.bin ${S}/firmware
fi

cp ${WORKDIR}/db.txt ${S}/net/wireless
}

0 comments on commit aafe3d8

Please sign in to comment.