The Linaro Kernel Working Group (KWG) and the Linaro Platform
Group are excited to announce the availability our February 2012
development snapshot:
linux-linaro-3.3-rc3-2012.02-1
As the word "snapshot" implies, these are meant as development kernels
and have not been fully validated. You should expect issues and to help
us deliver a better kernel in the future, please file bugs in Launchpad at
https://bugs.launchpad.net/linux-linaro.
We are excited about our first -rc based kernel as we move to a new
process that will provide early access to more bleeding edge features
on member-supported LEBs.
The source tarball is available at:
http://launchpad.net/linux-linaro/3.3/3.3-rc3-2012.02/+download/linux-linar…
The kernel sources can also be accessed using git at:
git://git.linaro.org/people/ynk/linux-linaro-tracking.git
tag: linux-linaro-3.3-rc3-2012.02-1
This kernel includes the following changes from the 2011.11 kernel:
- Update to 3.3-rc3
- Various patches from Linaro
* samsung_cpuidle_l2_retention patch set from the power management WG
* thermal_cpu_cooling patch set from the power management WG
* irq_domain patch set from Grant L. (cherry-picked from linux-next)
* Fix for https://bugs.launchpad.net/bugs/918412
* Basic device tree board support for supported ARM boards
(comes from linux-linaro-3.1)
* sched: Ensure cpu_power periodic update (Vincent G.)
* ARM: kprobes: work around build errors (Arnd B.)
* usb: ehci: make HC see up-to-date qh/qtd descriptors ASAP (Ming L.)
* Perf: Fallback to /bin/more if less is not found for perf pager (Avik S.)
A full change log against the 3.3-rc3 release is available at:
http://launchpad.net/linux-linaro/3.3/3.3-rc3-2012.02/+download/CHANGELOG-l…
High Priority Known Issues:
- None at this time
Mailing list: http://lists.linaro.org/mailman/listinfo/linaro-dev
Questions? https://ask.linaro.org/
Hi Everyone,
I wanted to remind you about two important things to consider when
writing your patch comments for Linaro. I've been seeing some
occasional upstream patches lately which have problems with a)
attributions in the comments and b) traceability.
So please...
1) Use your Linaro email address if you have it and also include your
member/partner company
e.g. Joey Stanford <joey(a)linaro.org> for the Samsung Landing Team
e.g. Joey Stanford <joey(a)linaro.org> assigned to Linaro from IBM
e.g. Joey Stanford <joey(a)personaladdress.net> for Linaro
Currently I see patches submitted as "Joey Stanford
<joey(a)canonical.com>" with no reference to Linaro at all. This is a
problem firstly because we aren't attributing the code fully and
secondly it reduces the awareness in the Open Source community of the
benefits Linaro brings to the table.
2) If your work is based upon a bug or blueprint in Launchpad, or any
other system for that matter, please:
a) Put these in the bzr/git revision log via commit comment. Most of
you are doing this and it's great. If you aren't, please do this.
b) Consider including that in the comments for traceability.
e.g. Fix for audio stack failure on IMX.53 Launchpad Bug #123
e.g. Implement Graphics acceleration on Origen, Google Code Issue #123
Today we are aware of some of our members who are grep'ing patch
comments, but not revision logs, to extract this information and are
not finding the details of what the patch fixes. I realize this
somewhat of an edge case but every bit helps for traceability.
Thanks,
Joey
--
Joey STANFORD
Engineering Program Manager
Office: +1-303-800-6609
http://www.linaro.org/
Open source software for ARM SoCs
I'm having trouble building the Thumb2 kernel on, I actually believe
this same code worked some time ago before a toolchain update. There
are actually two problems described below. I get past the first with
a config change but don't know how to fix the second one.
Start with mx51_defconfig, it builds uImage fine:
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- mx51_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage
Save the working .config to config1
$ cp .config config1
Edit .config and remove this line then run make oldconfig.
$ CONFIG_THUMB2_KERNEL is not set
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- oldconfig
Answer y to THUMB2_KERNEL and THUMB2_AVOID_R_ARM_THM_JUMP11
Save new Thumb2 enabled config to config2
Here is the diff:
$ diff -u config1 config2
--- config1 2011-08-21 14:50:23.014654705 -0600
+++ config2 2011-08-21 14:51:13.164654727 -0600
@@ -339,9 +339,10 @@
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
CONFIG_HZ=100
-# CONFIG_THUMB2_KERNEL is not set
+CONFIG_THUMB2_KERNEL=y
+CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11=y
+CONFIG_ARM_ASM_UNIFIED=y
CONFIG_AEABI=y
-# CONFIG_OABI_COMPAT is not set
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
CONFIG_HAVE_ARCH_PFN_VALID=y
@@ -1417,7 +1418,6 @@
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set
-CONFIG_FRAME_POINTER=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
@@ -1429,7 +1429,6 @@
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_C_RECORDMCOUNT=y
Attempt to build this:
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage
...
LD init/built-in.o
LD .tmp_vmlinux1
arch/arm/kernel/built-in.o: In function `get_wchan':
early_printk.c:(.text+0x1400): undefined reference to `unwind_frame'
arch/arm/kernel/built-in.o: In function `walk_stackframe':
early_printk.c:(.text+0x2832): undefined reference to `unwind_frame'
make: *** [.tmp_vmlinux1] Error 1
Poke around a bit and it looks like setting ARM_UNWIND could make
difference so try that. Edit .config the remove
# CONFIG_ARM_UNWIND is not set
then run make old config again.
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- oldconfig
Call the result config3
$ cp .config config3
So here is the cumulative diff
$ diff -u config1 config3
--- config1 2011-08-21 14:50:23.014654705 -0600
+++ config3 2011-08-21 14:54:29.584654811 -0600
@@ -339,9 +339,10 @@
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
CONFIG_HZ=100
-# CONFIG_THUMB2_KERNEL is not set
+CONFIG_THUMB2_KERNEL=y
+CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11=y
+CONFIG_ARM_ASM_UNIFIED=y
CONFIG_AEABI=y
-# CONFIG_OABI_COMPAT is not set
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
CONFIG_HAVE_ARCH_PFN_VALID=y
@@ -1417,7 +1418,6 @@
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set
-CONFIG_FRAME_POINTER=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
@@ -1429,7 +1429,6 @@
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_C_RECORDMCOUNT=y
@@ -1443,7 +1442,7 @@
# CONFIG_KGDB is not set
# CONFIG_TEST_KSTRTOX is not set
# CONFIG_STRICT_DEVMEM is not set
-# CONFIG_ARM_UNWIND is not set
+CONFIG_ARM_UNWIND=y
# CONFIG_DEBUG_USER is not set
CONFIG_DEBUG_LL=y
CONFIG_EARLY_PRINTK=y
Try building again.
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage
...
LD vmlinux
SYSMAP System.map
SYSMAP .tmp_System.map
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
arch/arm/boot/compressed/head.S: Assembler messages:
arch/arm/boot/compressed/head.S:127: Error: selected processor does
not support requested special purpose register -- `mrs r2,cpsr'
arch/arm/boot/compressed/head.S:134: Error: selected processor does
not support requested special purpose register -- `mrs r2,cpsr'
arch/arm/boot/compressed/head.S:136: Error: selected processor does
not support requested special purpose register -- `msr cpsr_c,r2'
make[2]: *** [arch/arm/boot/compressed/head.o] Error 1
make[1]: *** [arch/arm/boot/compressed/vmlinux] Error 2
make: *** [uImage] Error 2
Here is my gcc version:
$ arm-linux-gnueabi-gcc --version
arm-linux-gnueabi-gcc (Ubuntu/Linaro 4.6.1-5ubuntu2~ppa1) 4.6.1
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
And as version:
GNU assembler (GNU Binutils for Ubuntu) 2.21.52.20110707
Copyright 2011 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `arm-linux-gnueabi'.
Three configs attached:
config1 -- original config from make mx51_defconfig
config2 -- config after turning on thumb2
config3 -- config after setting ARM_UNWIND
Any help would be appreciated.
Thanks
John
Zach reminded me that this month is compressed, so a linaro+android
kernel would be needed immediately for 11.12. As Andrey is just ramping
up in taking over for the Linaro Android kernel maintenance, I wanted to
just get a kernel out, using the older kernel workflow, so that we had
something current for 11.12.
Anyway. This is straight from Andy Green's
linaro-androidization-tracking branch, with a few small build fixes
added on that I found in my testing and the base android_*_defconfig
files.
You can find the tree here:
git://android.git.linaro.org/kernel/linaro-android.git linaro-android-3.2-agreen-rebase
The current sha is tagged as: linux-linaro-3.2-2011.12-0-android-0
Known issues:
There seems to be something in the androidization branch that is causing
problems on beagle xm and origen. In my testing beagle xm kernel ends up
hanging in mid-boot(after ~4 seconds). And the orgien board doesn't
show anything past "Uncompressing Linux... done, booting the kernel". If
I drop the androidization patches and go back to the v3.2-rc4 base, both
kernels boot until the Android userland environment starts and falls
over because the android features are missing. I mucked about for awhile
on both of these tonight, but wasn't able to solve either of them, so
I'd appreciate any help trying to narrow down what is wrong on Origen
(beagle is apparently lower priority).
Andy, one issue with the re-factored android patch tree: Its not very
bisect-able. If I jump back to a topic branch, frequently there are
missing dependencies that keep it from building. Any thoughts on how we
can better chase down these sorts of issues?
thanks
-john
On Tue, 2012-02-21 at 16:48 +0530, Ashish Jangam wrote:
> On Fri, 2012-02-10 at 07:58 -0500, Ashish Jangam wrote:
> > The DA9052 PMIC provides an Analogue to Digital Converter with 10 bits
> > resolution and 10 channels.
> >
> > + * Dialog Semiconductors DA9052-BC and DA9053-AA/Bx PMICs
> > + Prefix: 'da9052'
> > + Datasheet: Kindly visit www.dialog-semiconductor.com/product_table.php
> > + and request for the official datasheet.
> > +
> Not really. From practical experience, the datasheet is not available
> except for Dialog Semiconductor customers - not even for me to review
> the driver (and that appears to be independent of my employer's
> relationship with Dialog Semiconductor). I think this should read "not
> publicly available". It is a bit misleading to suggest that it would be
> available if that is not the case.
Agreed.
>
> > +static const char * const input_names[] = {
> > + [DA9052_ADC_VDDOUT] = "VDDOUT",
> > + [DA9052_ADC_ICH] = "CHARGING CURRENT",
> > + [DA9052_ADC_TBAT] = "BATTERY TEMP",
> > + [DA9052_ADC_VBAT] = "BATTERY VOLTAGE",
> > + [DA9052_ADC_IN4] = "ADC IN4",
> > + [DA9052_ADC_IN5] = "ADC IN5",
> > + [DA9052_ADC_IN6] = "ADC IN6",
> > + [DA9052_ADC_TJUNC] = "BATTERY JUNCTION TEMP",
> > + [DA9052_ADC_VBBAT] = "BACK-UP BATTERY VOLTAGE",
> > +};
> > +
> Where are those defines, or, in other words, which repository/branch is
> your patch based on ? I don't see it in the current mainline kernel.
The incremental ADC patch to the da9052 mfd core takes care of all such
issues. However that patch is still under review...hoping to get it thru
soon.
I'm using Gumstix Overo-Fire.
I need to replicate my systems to deploy and test my setup. Right now I
have one uSD memory card which is working fine, but when I copy the whole
card using either the `tar cvpf` or dd commands, the image doesn't work on
any other memory card. Below is the console message when it hangs. I have
tried many memory cards.
Looks like Linaro images store the memory card ID and search for them
during the boot time, which will obviously fail on a different card.
Is there any way I can make my Linaro Image memory card independent.... so
that my replication becomes easy..??
These are the last lines from the console messages during the boot, with
the replicated memory card.
[ 6.605651] usbcore: registered new interface driver usbhid
[ 6.617279] usbhid: USB HID core driver
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/17fb7403-3757-4533-b783-7be5436d9882 does not
exist. !
---------------------------------
Sudhangathan BS
Ph:(+91) 9731-905-205
---------------------------------
Hi Guys,
Sorry for starting the long old thread again, but i have to start it as i
was a bit confused. :(
We know that we can't have multiple mappings with different attributes
to the same physical memory on ARMv6+ machines due to speculative
prefetch.
So, we have following kind of mappings in kernel now (please correct me
if i am wrong):
- Low Mem: Mapped at boot time to - Normal Cacheable - Bufferable
- ioremap() - blocked on Low Mem, so that we don't create Device type mapping
to same mem
- dma_alloc_coherent() and others:
- Without DMA_MEM_BUFFERABLE selected - gives strongly ordered mem
(i.e. Non cacheable - Non Bufferable)
- With DMA_MEM_BUFFERABLE selected - gives Normal - Non cacheable -
Bufferable mapping
- Maybe some other too...
I have a doubt with the last mapping mentioned above. We have two mappings
possibly to the same physical memory, with different attributes: One
is Cacheable
and other one is not.
Is this allowed by ARM? Because the patch in which Russell blocked ioremap on
Low Mem, he clearly mentioned that these attributes are also important and they
should be same.
Sorry if i am missing something :)
--
viresh