Forum Discussion
Altera_Forum
Honored Contributor
13 years agoHi,
I am no expert so bear with me. Based on the things i have been reading, the "Kernel panic - not syncing ...etc..." is a very general error message that relates mostly to bootloaders or booting problems (obvious since it happens at the beginning of the boot sequence) but it usually is related to the processor not accessing the right memory locations either because your instructions are in the wrong place (you moved base address of memory containing instructions for example) or because you told the processor to look in a place different to where the instructions actually are (through the kernel configuration). In my case, with version 3.1 MMU, i had issues at the beginning of development because of the address range used by the tightly coupled memory used for the TLB. I had to move the on-chip memory to a base address (0x09000000) located way after my reset and exception vector addresses (0x04000000 , and 0x00000020) and also had to move my ram module base address to 0x00000000. Moving these modules fixed the problem but I do not know if it was just luck -- I still don't fully understand how these addresses need to be setup, i just tried to match the setup of the NEEK project. In hindsight, I think that the address that really mattered in my case was the Exception Vector that is at a base of 0x00000000 with offset of 0x20. The reason that i think this is important is that in the nios.h file i mentioned before, the base address for ram is hardcoded at base 0x0. Nobody ever mentioned this file for version 3.1 because you are now using devicetree so this was a real pain to figure out. That is what happens when you work with version of kernel that are release candidates and not stable versions... But then again, you cannot complain about the great effort put by the community, ergo, I try to contribute to the cause :) There is also a setting in the "make menuconfig" of the kernel for the base address where your instructions are located but i never had to touch that. Hope this helps or at least points you in the right direction.