Thread (11 messages) flat view 11 messages, 6 authors, 2007-01-22

Re: Who's the maintainer for the freescale MPC8349ITX board?

From: Kumar Gala <hidden>
Date: 2007-01-18 04:23:50

On Jan 17, 2007, at 9:55 PM, Bruce_Leonard@selinc.com wrote:
linuxppc-embedded-bounces+brucle=selinc.com@ozlabs.org wrote on  
01/17/2007
07:42:09 AM:
quoted
On Jan 17, 2007, at 12:27 AM, Bruce_Leonard@selinc.com wrote:
quoted
anything in the source.  I don't want to clutter up the mailing
list with
newbie questions so I'd like to get in touch with the person who
Ask the questions on the list, thus they are around for others to
learn from if need by.

- kumar
Well, okay.  I hate taking up bandwidth for something that's no doubt
trivial to most of you, but here goes.  I'm trying to bring up the
2.6.19.1 kernel using u-boot 1.1.6 on the MPC8349ITX board and I'm  
having
problems with the open firmware part of it (which I am TOTALLY new  
to).
Short version, I don't think the *.dts file for this board is  
correct and
I'm wondering if anyone might have a newer version or good  
documentation
as to the formatting of the *.dts files?
There should be an update dts in the kernel source under arch/powerpc/ 
boot/dts
Long version: While booting the kernel it seems to hang in the  
do_div()
call on line 933 of .../arch/powerpc/kernel/time.c (yes I know it's  
not
really a call but inline assembly) because ppc_tb_freq is zero.  The
get_freq() calls in generic_calibrate_decr() find the 'timebase- 
frequency'
and 'clock-frequency' entries in the device tree, but the value is  
zero
and thus ppc_tb_freq is zero.
Sounds like your u-boot isn't properly filling out parts of the  
devtree while booting.
Digging through the u-boot code, I found ft_setup() which is  
supposed to
add some stuff to the device tree passed in on the bootm command  
line. One
of the things it's supposed to do is fill in the 'timebase-frequency'
portion of the device tree.  When it calls ft_get_prop() to find the
'timebase-frequency' node it passes in the path
'/cpus/PowerPC,8349@0/timebase-frequency' as what it's searching  
for, but
what ft_get_prop() finds is
'///cpus//cpus/PowerPC,8349@0/timebase-frequency', which of course  
doesn't
match, so it returns NULL to ft_setup() and the 'timebase- 
frequency' never
gets updated before being passed to the kernel.
Hmm, that's odd.  I'm pretty sure the '/' are added while we parse  
the tree seems like some prefix is getting added on you '///cpus/' if  
I was to guess.  I'd double check your .dts against the one in the  
kernel tree.
So I'm guessing the my problem is either the *.dts file or dtc, but  
I'm
not sure which since I'm so new to this and I'm not sure if the  
*.dts file
I've got is properly formatted.  I suppose it's possible that
ft_get_prop() in u-boot is wrong, but for now I'm betting it's  
right and
my *.dts file is formatted wrong.  (FYI, I'm using
.../arch/powerpc/boot/dts/mpc8349emitx.dts from the 2.6.19.1 kernel  
tree.)
Well that's really odd than.  I'd try grabbing u-boot 1.2.0 and see  
if you still have the same issue.

Also, how are you invoking dtc to get the dtb?
Thanks for listening and for your feedback.
- k
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help