is 1GHz broken at XM?

Hi!

I'm working with XM rev.A3 and the latest kernel built from
setup-scripts: 3.2.18.

In the u-boot environment mpurate is set to auto and the CPU core
starts at 600MHz. If I set mpurate to 1000 (setenv mpurate 1000) then
the kernel does not boot and I can see that SD-activity LED is blank
(same for mpurate=800). The only mpurate value that is possible to set
is 600.

What is wrong with my HW or SW? FYI the power source is 5VDC 2.4A.

U-Boot SPL 2011.12-dirty (Jun 04 2012 - 19:25:19)
Texas Instruments Revision detection unimplemented
OMAP SD/MMC: 0
timed out in wait_for_bb: I2C_STAT=1000
reading u-boot.img
reading u-boot.img

U-Boot 2011.12-dirty (Jun 04 2012 - 19:25:19)

OMAP3630/3730-GP ES1.0, CPU-OPP2, L3-165MHz, Max CPU Clock 1 Ghz
OMAP3 Beagle board + LPDDR/NAND
I2C: ready
DRAM: 512 MiB
NAND: 0 MiB
MMC: OMAP SD/MMC: 0
*** Warning - readenv() failed, using default environment

In: serial
Out: serial
Err: serial
Beagle xM Rev A
No EEPROM on expansion board
No EEPROM on expansion board
Die ID #6c0400001bf00000015739ea0702601f
Net: Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot: 0
OMAP3 beagleboard.org # setenv mpurate 1000
OMAP3 beagleboard.org # boot
The user button is currently NOT pressed.
SD/MMC found on device 0
reading uEnv.txt

** Unable to read "uEnv.txt" from mmc 0:1 **
Loading file "/boot/uImage" from mmc device 0:2 xxa2
4368896 bytes read
Booting from mmc ...
## Booting kernel from Legacy Image at 80200000 ...
   Image Name: Angstrom/3.2.18/beagleboard
   Image Type: ARM Linux Kernel Image (uncompressed)
   Data Size: 4368832 Bytes = 4.2 MiB
   Load Address: 80008000
   Entry Point: 80008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

--here it is stuck--

However once the kernel continued to boot with tons of kernel errors
and backtrace leading to kernel panic.

The sr1.5 patches in 3.0.x that allowed 1Ghz operation haven't been
forward ported to v3.2.x so without those patches, it'll pretty much
do what you see.. The sr1.5 stuff was brought up again on l-o, after
the smartreflex driver was renamed and moved to a new driver directory
in 3.5-rc's.. Who knows if we'll see it for 3.6 as it needs a
rewrite..

Regards,

btw, with mpurate=auto, it should scale between 300ish <-> 800 based
on what frequency governor you set..

Regards,

Robert, thank you for the clarifications!

But here what I tried and what I got:

1) using 3.0.17+ from Koen's demo filesystem:
Angstrom-console-image-eglibc-ipk-v2012.02-core-beagleboard.rootfs.tar.bz2
leads to:
[ 0.055450] ------------[ cut here ]------------
[ 0.055511] WARNING: at arch/arm/mach-omap2/clock.c:476
omap2_clk_switch_mpurate_at_boot+0x7c/0xb0()
[ 0.055511] clock: dpll1_ck: unable to set MPU rate to 1000: -22
[ 0.055541] Modules linked in:
[ 0.055572] [<c004ac3c>] (unwind_backtrace+0x0/0xe0) from
[<c006f7ac>] (warn_slowpath_common+0x4c/0x64)
[ 0.055603] [<c006f7ac>] (warn_slowpath_common+0x4c/0x64) from
[<c006f844>] (warn_slowpath_fmt+0x2c/0x3c)
[ 0.055633] [<c006f844>] (warn_slowpath_fmt+0x2c/0x3c) from
[<c0011d9c>] (omap2_clk_switch_mpurate_at_boot+0x7c/0xb0)
[ 0.055664] [<c0011d9c>]
(omap2_clk_switch_mpurate_at_boot+0x7c/0xb0) from [<c0011f08>]
(omap3xxx_clk_arch_init+0xc/0x3c)
[ 0.055694] [<c0011f08>] (omap3xxx_clk_arch_init+0xc/0x3c) from
[<c004145c>] (do_one_initcall+0x90/0x160)
[ 0.055725] [<c004145c>] (do_one_initcall+0x90/0x160) from
[<c000894c>] (kernel_init+0x88/0x130)
[ 0.055755] [<c000894c>] (kernel_init+0x88/0x130) from [<c0046cd4>]
(kernel_thread_exit+0x0/0x8)
[ 0.055786] ---[ end trace 1b75b31a2719ed1c ]---
and therefore:
root@beagleboard:~# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 597.64
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2

Hardware : OMAP3 Beagle Board
Revision : 0020
Serial : 0000000000000000

2) Tried "BeagleBoard-xM Rev C Production 4-25" from CircuitCo and
1GHz works just fine.

The only question now is where to get appropriate sources to build
manually a kernel supporting 1GHz because I really need this feature.
Any clues?