linux-dev
linux-dev copied to clipboard
am33x-v3.8 Issues
Hi, This is using the following built image 3.8.0-rc5-bone1 using the build_kernel.sh script
pwm interface doesn't show up in /dev/ or /sys/class/pwm
dmesg shows
[ 0.461436] platform 48300200.ehrpwm: alias tbclk already exists [ 0.461640] ehrpwm 48300200.ehrpwm: unable to select pin group [ 0.462654] platform 48302200.ehrpwm: alias tbclk already exists [ 0.462843] ehrpwm 48302200.ehrpwm: unable to select pin group [ 0.463655] platform 48304200.ehrpwm: alias tbclk already exists [ 0.463841] ehrpwm 48304200.ehrpwm: unable to select pin group
Full dmesg is here http://pastebin.com/r84aJmLs
A quick grep of the .config shows that the pwm code should be building into the kernel
CONFIG_PWM_TIEHRPWM=y CONFIG_PWM_TIPWMSS=y
Edit: Also the ain interfaces aren't showing up in /sys/devices/platform
Thanks, Greg
Hi Robert, Does bone5 provide the pwm interface yet?
Thanks, Greg
I've build a 3.8.4-bone9 kernel and found that most of the issues that I've detected in the am33x-v3.7 branch are now solved!
The only issues still remaining (that I've detected so far) are;
- From all the bone UART ports, only UART0 (console) is working.
- The PWM interface is not available.
Best regards, José Gonçalves
Robert, I am running a bone A3 and tried the 3.8.6-bone12 kernel which fails with "unrecognized/unsupported machine ID (r1 = 0x00000e05)" -- here are the highlights if the install & boot.
http://rcn-ee.net/deb/quantal-armhf/v3.8.6-bone12/install-me.sh
Installing [3.8.6-bone12-dtbs.tar.gz]
/tmp/deb/dtb/am335x-boneblack.dtb' ->
/boot/uboot/dtbs/am335x-boneblack.dtb'
/tmp/deb/dtb/am335x-bone.dtb' ->
/boot/uboot/dtbs/am335x-bone.dtb'
/tmp/deb/dtb/am335x-evm.dtb' ->
/boot/uboot/dtbs/am335x-evm.dtb'
/tmp/deb/dtb/am335x-evmsk.dtb' ->
/boot/uboot/dtbs/am335x-evmsk.dtb'
/tmp/deb/dtb/am335x-tester.dtb' ->
/boot/uboot/dtbs/am335x-tester.dtb'
/tmp/deb/dtb/omap2420-h4.dtb' ->
/boot/uboot/dtbs/omap2420-h4.dtb'
/tmp/deb/dtb/omap3-beagle.dtb' ->
/boot/uboot/dtbs/omap3-beagle.dtb'
/tmp/deb/dtb/omap3-beagle-xm.dtb' ->
/boot/uboot/dtbs/omap3-beagle-xm.dtb'
/tmp/deb/dtb/omap3-evm.dtb' ->
/boot/uboot/dtbs/omap3-evm.dtb'
/tmp/deb/dtb/omap3-tobi.dtb' ->
/boot/uboot/dtbs/omap3-tobi.dtb'
/tmp/deb/dtb/omap4-panda-a4.dtb' ->
/boot/uboot/dtbs/omap4-panda-a4.dtb'
/tmp/deb/dtb/omap4-panda.dtb' ->
/boot/uboot/dtbs/omap4-panda.dtb'
/tmp/deb/dtb/omap4-panda-es.dtb' ->
/boot/uboot/dtbs/omap4-panda-es.dtb'
/tmp/deb/dtb/omap4-sdp.dtb' ->
/boot/uboot/dtbs/omap4-sdp.dtb'
/tmp/deb/dtb/omap4-var-som.dtb' ->
/boot/uboot/dtbs/omap4-var-som.dtb'
/tmp/deb/dtb/omap5-evm.dtb' ->
/boot/uboot/dtbs/omap5-evm.dtb'
Image Name: 3.8.6-bone12
Created: Sun Apr 7 12:04:25 2013
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3098840 Bytes = 3026.21 kB = 2.96 MB
Load Address: 80008000
Entry Point: 80008000
Image Name: initramfs
Created: Sun Apr 7 12:04:27 2013
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 2598475 Bytes = 2537.57 kB = 2.48 MB
Load Address: 00000000
Entry Point: 00000000
<boot>
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Error: unrecognized/unsupported machine ID (r1 = 0x00000e05).
Available machine support:
ID (hex) NAME
ffffffff Generic OMAP4 (Flattened Device Tree)
ffffffff Generic AM33XX (Flattened Device Tree)
ffffffff Generic OMAP3-GP (Flattened Device Tree)
ffffffff Generic OMAP3 (Flattened Device Tree)
0000060a OMAP3 Beagle Board
00000a9d IGEP OMAP3 module
00000928 IGEP v2 board
00000ae7 OMAP4 Panda board
Please check your kernel config and/or bootloader.
I just tried the 3.8.4-bone9 kernel José reported working with am33x above. Could the A3 am33x bone be reporting 0x00000e05 while A4, A5, and A6 be reporting 0xffffffff?
Hi John, this happens when you switch from a v3.2.x based "board" file kernel to the v3.8.x "device tree" kernel.. You need to make a few changes to the uEnv.txt boot script:
Edit uEnv.txt in the boot partition...
Add: initrd_high=0xffffffff fdt_high=0xffffffff
Change... From: xyz_mmcboot=run xyz_load_image; run xyz_load_initrd; echo Booting from mmc ... To: xyz_mmcboot=run xyz_load_image; run xyz_load_initrd; run xyz_load_dtb; echo Booting from mmc ...
Change... From: loaduimage=run xyz_mmcboot; run device_args; bootz 0x80300000 0x81600000:${initrd_size} To: loaduimage=run xyz_mmcboot; run device_args; bootz 0x80300000 0x81600000:${initrd_size} 0x815f0000
Going forward, the "uEnv.txt" will show hints on what needs to be changed: https://github.com/RobertCNelson/omap-image-builder/commit/975f6cecbe21c826ceb7dc5edf277c48828fe68a
Hi Robert. When I was building a 3.7 and 3.8 kernel I've discovered the need for the two last changes on uEnv.txt in order to boot a kernel with a device tree. Nevertheless I did not add the 'initrd_high' and 'fdt_high' variables. Missing setting these variables could be the cause for the issues that I reported earlier (I have no BeagleBone near to test it now)?
Hi Jose,
While re-browsing the setup_sdcard.sh source, i noticed i was setting those two variables by default in the dtbs case.. They might be already set in the bootloader, thus adding them to uEnv.txt does nothing.. So to be safe i added them here..
Regards,
Thanks Robert -- I guess it would have been better to post over on www.eewiki.net where others would have been more likely to see it. I also see you detail these instructions over there as well... I can't tell you how nice it is to run 3.8 on the beaglebone!
root@bone:/# uname -a Linux bone 3.8.6-bone12 #1 SMP Sat Apr 6 06:36:28 UTC 2013 armv7l armv7l armv7l GNU/Linux
John Clark
Hi Robert, I have just upgraded to 3.8.13-bone24 on both my beaglebone and beaglebone black and I see the pwm interface is still not showing up. If you can give me some pointers of where to look I can try to take a stab at this to get it working again.
Thanks, Greg