On 07/24/2012 08:05 AM, Thierry Reding wrote: > On Tue, Jul 24, 2012 at 01:32:59PM +0000, Nuno Santos wrote: >> Hi >> >> As I explained in a previous post, I have a Tegra2 based board >> (Harmony) and (thanks to your help) I successfully managed to >> flash and boot U-Boot. >> >> However, I’ve been trying to boot Linux from U-Boot but to no >> avail. Once the device runs U-boot, I load a Linux image into >> memory over TFTP, run the command “bootm”, and then Linux >> immediately hangs after printing message “Starting kernel ...". >> >> I’ve tried multiple suggestions I’ve seen online: defining linux >> console boot in the “bootargs” parameter in case it is a console >> misconfiguration, recompile the kernel with CONFIG_DEBUG_LL to >> diagnose the problem, and check the machine id (by providing >> machine id 0xAAB in the environment var “machid”). In all these >> attempts there is no change whatsoever in the output. > > You need to pass earlyprintk in bootargs to see early debug output > (CONFIG_DEBUG_LL). Also make sure that you've flashed with the > correct ODMDATA set so the output goes to the correct UART. Also, you need an appropriate Kconfig option to select which debug UART to use. CONFIG_TEGRA_DEBUG_UART_AUTO_ODMDATA should hopefully work fine, assuming your ODMDATA contains the correct UART setting (e.g. 0x300d8011 should work). >> I’d be really grateful if someone could give me a hand on this. >> So, here’s the details. >> >> 1. I’m using the kernel from >> git://nv-tegra.nvidia.com/linux-2.6.git, pulled today and >> configured as indicated in the doc (make tegra_defconfig); the >> compilation also creates a uImage for U-Boot. I’m using the >> latest version of U-Boot, compiled locally using the standard >> procedure. > > It might help to try and run the upstream kernel just to check > that everything works. I believe the NVIDIA downstream kernels > currently don't boot properly when run from the upstream U-Boot. > But I may be mistaken. Upstream U-Boot has primarily (perhaps even only) been tested with an upstream Linux kernel. Equally, our downstream kernels have mostly only been tested with downstream fastboot, and partially with downstream U-Boot. The upshot of this is that downstream kernels incorrectly assume that the bootloader initializes a lot more stuff (e.g. clocks). You will likely have much more luck booting an upstream kernel, at least initially in order to get the process working. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html