=== Highlights ===
* Lots of plumbers android mini-summit planning and discussions
* Todd Poynor from Google implemented timerfd support for alarmtimers
and asked me to review the changes for AOSP. The feature has been a todo
of mine for awhile, so its very cool to see it implemented. Since they
will be using this for Android, so I queued it for upstream as well. The
hope is this would provide a proper upstream replacement for the android
alarmdev.
* Reviewed a number of community patches and queued a few of them for 3.11
* Worked with Minchan on a new iteration of the volatile range patchset.
There's a bit of contention about approaches around the interface (he
doesn't see some of the lsf-mm objections as an issue), so we're trying
to sort that out.
* Talked w/ tglx about getting DanielL to act as submaintainer for
clockevent drivers.
* Reviewed blueprints and did weekly email status
* Submitted expense report for Dublin flight
* Zoran found a timekeeping suspend bug, so worked with him to review
his patch, get it to lkml, and queued for upstream.
=== Plans ===
* Answer some community questions on volatile ranges and Android's usage
of ashmem
* Try to address kdb-fiq concerns.
* ION research/discussion
=== Issues ===
* NA
The new context tracking subsystem unconditionally includes kvm_host.h
headers for the guest enter/exit macros. This causes a compile
failure when KVM is not enabled.
Fix by adding an IS_ENABLED(CONFIG_KVM) check to kvm_host so it can
be included/compiled even when KVM is not enabled.
Cc: Frederic Weisbecker <fweisbec(a)gmail.com>
Signed-off-by: Kevin Hilman <khilman(a)linaro.org>
---
Applies on v3.9-rc2
include/linux/kvm_host.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index cad77fe..a942863 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -1,6 +1,8 @@
#ifndef __KVM_HOST_H
#define __KVM_HOST_H
+#if IS_ENABLED(CONFIG_KVM)
+
/*
* This work is licensed under the terms of the GNU GPL, version 2. See
* the COPYING file in the top-level directory.
@@ -1055,5 +1057,8 @@ static inline bool kvm_vcpu_eligible_for_directed_yield(struct kvm_vcpu *vcpu)
}
#endif /* CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT */
+#else
+static inline void __guest_enter(void) { return; }
+static inline void __guest_exit(void) { return; }
+#endif /* IS_ENABLED(CONFIG_KVM) */
#endif
-
--
1.8.1.2
== Linus Walleij linusw ==
=== Highlights ===
* Torvalds did pull the GPIO changes from Grant in the
end. I have been spending some time on QA stuff like
discussing with Fengguang @Intel on getting automated
0day builds of my kernel.org trees back on line and that
is running smoothly now. Also figured out how to run
Arnds buildall.mak script.
* Collected a set of ux500 fixes post-v3.10-rc1 and sent
a pull request to the ARM SoC maintainers.
* Continued to apply DMA40 patches from Lee on a
specific DMA40 branch targeted for ARM SoC. Got some
ACKs and awaiting some more ACKs. A first branch
will be prepared for pull request to ARM SoC soon-ish.
* Discussed future ux500 work with Lee.
* Reviewed lots of pinctrl code but have a hard time to keep
up. I have collected a set of fixes to send to Torvalds.
This is growing wildly...
* Updated my profile @HR Connection as requested.
* Reviewed TI-Nspire timer driver.
=== Plans ===
* Help Grant with stacking up some GPIO fixes.
* Finalize U300 DT+multiplatform patch set. Maybe send
a partial pull request with the stuff I have.
* Integrate Integrator PCI patch set, then start to delete
board files and convert to multiplatform.
* Convert Nomadik pinctrl driver to register GPIO ranges
from the gpiochip side.
* Test the PL08x patches on the Ericsson Research
PB11MPCore and submit platform data for using
pl08x DMA on that platform.
* Get hands dirty with regmap.
=== Issues ===
* Need a PCI branch at ARM SoC to request Integrator PCI
DT patches to be pulled into.
* Some impediments from internal turmoil @ST-Ericsson.
Thanks,
Linus Walleij
Tuesday, May 14, 2013 11:17 PM, Vikas Sajjan wrote:
>
> Hi Vikas,
>
> On Tuesday 14 of May 2013 18:25:51 Vikas Sajjan wrote:
> > Adds GPIO parsing functionality for "LCD backlight" and "LCD enable"
> > GPIO pins of exynos dp controller.
> >
> > Signed-off-by: Vikas Sajjan <vikas.sajjan(a)linaro.org>
> > ---
> > drivers/video/exynos/exynos_dp_core.c | 45
> > +++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+)
> >
>
> I don't think that Exynos DP driver is right place for such code. Backlight
> and LCD drivers are responsible for backlight and LCD power control using
> backlight and LCD subsystems.
>
> IMHO the correct solution would be to either extend existing backlight/lcd
> drivers found in drivers/video/backlight to support direct GPIO control and
> parse GPIO pins from device tree or create new gpio_bl and gpio_lcd drivers.
Hi Vikas Sajian,
I agree with Tomasz Figa's opinion.
Backlight/LCD framework should be used.
eDP panel backlight on SMDK5210 board can be controlled by PWM;
thus, pwm-backlight driver should be used.
Also, eDP panel reset pin should be controlled by using
platform-lcd driver.
>
> CCing Richard, Florian and linux-fbdev.
Also, I have been doing backlight reviews instead of Richard,
please do CC'ing me.
Best regards,
Jingoo Han
>
> Best regards,
> Tomasz
Ping.
On 17 April 2013 21:16, Linus Walleij <linus.walleij(a)linaro.org> wrote:
> On Tue, Apr 16, 2013 at 3:48 PM, Naresh Kamboju
> <naresh.kamboju(a)linaro.org> wrote:
>> On 12 April 2013 04:07, Linus Walleij <linus.walleij(a)linaro.org> wrote:
>>> Hey it works. Didn't see this before I fixed it tho :-)
>>> http://marc.info/?l=linux-kernel&m=136567139910888&w=2
>>
>> This commit not yet been merged in to linux-next "next-20130416".
>> Due to this reason still snowball build fails at above error.
>
> That is outside of my jurisdiction, only the MFD maintainer Samuel
> Ortiz can merge this patch.
>
> Yours,
> Linus Walleij
This patch-set implements early printk support for virtio console
devices by adding and using emergency write register to virtio console's
config space.
The current virtio early printk code in kernel expects that hypervisor
will provide some mechanism generally a hypercall to support early printk.
This patch-set does not break existing hypercall based early print support.
This implementation adds:
1. Emergency writeonly register named emerg_wr in
virtio console's config space.
2. Host feature flags namely VIRTIO_CONSOLE_F_EMERG_WRITE
for telling guest about early-write capability in console device.
Emergency write mechanism:
1. When a guest wants to out some character, it has to simply write
the character to emerg_wr register in config space of
virtio console device.
Pranavkumar Sawargaonkar (3):
virtio: console: Add emergency writeonly register to config space
Documentation: virtio: Add emergency write (emerg_wr) config register
in virtio console.
arm64: earlyprintk support for virtio-mmio console.
Documentation/virtual/virtio-spec.txt | 8 +++++++-
arch/arm64/kernel/early_printk.c | 35 +++++++++++++++++++++++++++++++++
include/uapi/linux/virtio_console.h | 3 +++
3 files changed, 45 insertions(+), 1 deletion(-)
--
1.7.9.5
In order to safely support the use of NEON or VFP instructions in
kernel mode, some precautions need to be taken:
- the userland context that may be present in the registers (even
if the NEON/VFP is currently disabled) must be stored under the
correct task (which may not be 'current' in the UP case),
- to avoid having to keep track of additional vfpstates for the
kernel side, disallow the use of NEON/VFP in interrupt context
and run with preemption disabled,
- after use, re-enable preemption and re-enable the lazy restore
machinery by disabling the NEON/VFP unit.
This patch adds the functions kernel_vfp_begin() and kernel_vfp_end()
which take care of the above.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel(a)linaro.org>
---
arch/arm/include/asm/vfp.h | 5 +++++
arch/arm/vfp/vfpmodule.c | 40 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 45 insertions(+)
diff --git a/arch/arm/include/asm/vfp.h b/arch/arm/include/asm/vfp.h
index f4ab34f..421506b 100644
--- a/arch/arm/include/asm/vfp.h
+++ b/arch/arm/include/asm/vfp.h
@@ -5,6 +5,11 @@
* First, the standard VFP set.
*/
+#ifndef __ASSEMBLY__
+void kernel_vfp_begin(void);
+void kernel_vfp_end(void);
+#endif
+
#define FPSID cr0
#define FPSCR cr1
#define MVFR1 cr6
diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
index 5dfbb0b..e30a6335 100644
--- a/arch/arm/vfp/vfpmodule.c
+++ b/arch/arm/vfp/vfpmodule.c
@@ -20,6 +20,7 @@
#include <linux/init.h>
#include <linux/uaccess.h>
#include <linux/user.h>
+#include <linux/export.h>
#include <asm/cp15.h>
#include <asm/cputype.h>
@@ -649,6 +650,45 @@ static int vfp_hotplug(struct notifier_block *b, unsigned long action,
}
/*
+ * Kernel-side NEON/VFP support functions
+ */
+void kernel_vfp_begin(void)
+{
+ struct thread_info *thread = current_thread_info();
+ unsigned int cpu = get_cpu();
+ u32 fpexc;
+
+ /* Avoid using the NEON/VFP in interrupt context */
+ might_sleep();
+ preempt_disable();
+
+ fpexc = fmrx(FPEXC) | FPEXC_EN;
+ fmxr(FPEXC, fpexc);
+
+ /*
+ * Save the userland NEON/VFP state. Under UP, the owner could be a task
+ * other than 'current'
+ */
+ if (vfp_state_in_hw(cpu, thread))
+ vfp_save_state(&thread->vfpstate, fpexc);
+#ifndef CONFIG_SMP
+ else if (vfp_current_hw_state[cpu] != NULL)
+ vfp_save_state(vfp_current_hw_state[cpu], fpexc);
+#endif
+ vfp_current_hw_state[cpu] = NULL;
+ put_cpu();
+}
+EXPORT_SYMBOL(kernel_vfp_begin);
+
+void kernel_vfp_end(void)
+{
+ /* Disable the NEON/VFP unit. */
+ fmxr(FPEXC, fmrx(FPEXC) & ~FPEXC_EN);
+ preempt_enable();
+}
+EXPORT_SYMBOL(kernel_vfp_end);
+
+/*
* VFP support code initialisation.
*/
static int __init vfp_init(void)
--
1.8.1.2
Hi,
I am working on kexec for ARM(armv7 architecture ) on Linux-2.6.32.59.
I am unable to boot secondary kernel zImage using kexec.
It got hanged after "Uncompressing Linux.....done, b
ooting the kernel."
I debugged through hardware debugger and found issue in
"arch/arm/kernel/head.S" at __turn_mmu_on
which is failing to initialized the mmu.
I will highly appreciate if you can suggest some pointers
to debug this issue.
kexec command use:
kexec -l /home/zImage --command-line=`cat /proc/cmdline`
kexec -e
Thanks and Regards,
Pankaj Pandey