When will there be a SDK with Kernel 3.14 or 3.16 available with fixed USB DMA issues for AM335x?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
When will there be a SDK with Kernel 3.14 or 3.16 available with fixed USB DMA issues for AM335x?
http://git.ti.com/ti-linux-kernel/ti-linux-kernel/commits/ti-linux-3.14.y
This is the current working tree for the next SDK release with 3.14 kernel. Please check it if your issue still exits.
When using the suggested ti 3.14 kernel boot hung with following messages: (ti SDK 7.0 kernel 3.12.10 works proper with the same configuration !)
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.14.16 (ru@nb-ru-deb) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #21 Wed Aug 13 09:56:40 CEST 2014
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: Knobloch TXT AM3352
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] cma: CMA: reserved 24 MiB at 8d800000
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] On node 0 totalpages: 65280
[ 0.000000] free_area_init_node: node 0, pgdat c079c340, node_mem_map cfcee000
[ 0.000000] Normal zone: 512 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 65280 pages, LIFO batch:15
[ 0.000000] CPU: All CPU(s) started in SVC mode.
[ 0.000000] AM335X ES2.1 (neon )
[ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 64768
[ 0.000000] Kernel command line: console=ttyO0,115200 root=/dev/mmcblk0p2 rw rootwait debug earlyprintk
[ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Memory: 226100K/261120K available (5271K kernel code, 484K rwdata, 1724K rodata, 273K init, 219K bss, 35020K reserved, 0K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xd0800000 - 0xff000000 ( 744 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc06dd004 (6997 kB)
[ 0.000000] .init : 0xc06de000 - 0xc072272c ( 274 kB)
[ 0.000000] .data : 0xc0724000 - 0xc079d2f0 ( 485 kB)
[ 0.000000] .bss : 0xc079d2f0 - 0xc07d3f90 ( 220 kB)
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[ 0.000000] Total of 128 interrupts on 1 active controller
[ 0.000000] OMAP clockevent source: timer2 at 24000000 Hz
[ 0.000027] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
[ 0.008295] OMAP clocksource: timer1 at 24000000 Hz
[ 0.014011] Console: colour dummy device 80x30
[ 0.018722] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
[ 0.085774] pid_max: default: 32768 minimum: 301
[ 0.090799] Security Framework initialized
[ 0.095228] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.102140] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.125666] CPU: Testing write buffer coherency: ok
[ 0.131412] Setting up static identity map for 0x8052c168 - 0x8052c1d8
[ 0.140743] devtmpfs: initialized
[ 0.148756] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 0.175283] omap_hwmod: tptc0 using broken dt data from edma
[ 0.181384] omap_hwmod: tptc1 using broken dt data from edma
[ 0.187510] omap_hwmod: tptc2 using broken dt data from edma
[ 0.199539] omap_hwmod: debugss: _wait_target_disable failed
[ 0.272924] Bad mode in interrupt handler detected
Reinhard Russinger said:What's the real reason for using DMA default off.
This is the reason I guess: The mainline kernel from kernel.org does not have am335x full entitlement yet, so this kernel has CPPI DMA off by default. git.ti.com kernel 3.14.y branch is a work-in-progress repo based on the mainline 3.14 kernel, and the TI kernel development team is working on priorities, and has not got a chance to enable the DMA in omap2plus_defconfig yet.
I am using 3.14.y with DMA enabled, and have not seen any issue yet. I have not got a chance to try webcam though.
Reinhard Russinger said:When using the suggested ti 3.14 kernel boot hung with following messages: (ti SDK 7.0 kernel 3.12.10 works proper with the same configuration !)
Is this on AM335x TI reference board (EVMs) or your custom board? Have you changed any config from omap2plus_defconfig? If so, please first use omap2plus_defconfig without any modification to see if kernel boot properly.
I have not sync'd my kernel local copy with git.ti.com yet for a few days, and my repo HEAD is
2b30c8a Merge branch 'pm-ti-linux-3.14.y' of git://git.ti.com/~kristo/ti-linux-kernel/pm-linux-feature-tree into ti-linux-3.14.y
and I don't have any booting issue on AM335x GP EVM.
Hi Bin Liu,
thank you for your support,
have cloned
git clone git://git.ti.com/~kristo/ti-linux-kernel/pm-linux-feature-tree.git pm-linux-feature-tree
which of this branch could you suggest to check-out to get a sufficient result:
ru@nb-ru-deb:~/WWWW/pm-linux-feature-tree$ git branch -r
origin/HEAD -> origin/master
origin/master
origin/omap5-dvfs-pm-linux-3.8.y
origin/omap5-pm-linux-3.8.y
origin/omap5_pm-3.8-rc5
origin/platform-base-3.10-rc6-dt-clk
origin/platform-base-3.10-rc6-dt-clk-v2
origin/pm-3.8
origin/pm-3.8-rc5
origin/pm-linux-3.8.y
origin/pm-ti-linux-3.12.y
origin/pm-ti-linux-3.12.y-am43xx-ds0
origin/pm-ti-linux-3.12.y-next
origin/pm-ti-linux-3.14.y
origin/pm-ti-linux-3.14.y-next
origin/ti-linux-3.12.y-am43xx-pm-extras
origin/ti-linux-3.12.y-test
origin/ti-linux-3.8-rc3
origin/ti-linux-3.8-rc3-power
Regards Reinhard
This seems to be kristo's pm tree. I know nothing about it.
The tree you should clone is
git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
and checkout origin/ti-linux-3.14.y branch.
Many thanks,
now it's booting nearly proper !
I think the main reason was dts file for our Hardware
changing
&gpio0 {
ti,no-reset;
};
&gpio3 {
ti,no-reset;
};
to
&gpio0 {
ti,no-reset-on-init;
};
&gpio3 {
ti,no-reset-on-init;
};
did the job ! (who's changed that attributes from 3.12 to 3.14 ?)
DDR3 Ram was switched off on boot !
Another Problem is the following message:
[ 63.851763] remoteproc0: failed to load am335x-pm-firmware.elf
[ 63.867104] remoteproc0: powering up wkup_m3
[ 63.874020] remoteproc0: Direct firmware load failed with error -2
[ 63.880665] remoteproc0: Falling back to user helper
[ 63.955406] remoteproc0: request_firmware failed: -2
[ 63.960806] wkup_m3 44d00000.wkup_m3: rproc_boot failed
not beeing abel to load firmware (I only have a am335x-pm-firmware.bin from SDK 7)
ends up on OPP50 mode which I don't prefer !
Regards Reinhard