Building an arm-cross-gnu-toolchain can be somewhat painful. I'm posting here how I could achieve this after reading lots of documents over the web.
This will be helping me keeping up-to-date with binutils and gcc versions when building arm kernels
Building an arm-cross-gnu-toolchain can be somewhat painful. I'm posting here how I could achieve this after reading lots of documents over the web.
This will be helping me keeping up-to-date with binutils and gcc versions when building arm kernels
Housekeeping a git repository is useful to make it smaller and faster. Git has a lot of tools to allow you optimizing your git repository. Let's take a look on a few of them and see what they do.
U-boot is an open source bootloader. This post is here because I had a problem with U-boot where I couldn't update it using ethernet.
It's not that difficult to use serial line for u-boot upgrading, as long as you have a "working" u-boot flashed in your board, you can always use loady or loadb to download binary image into your board's RAM.
ARM is an architecture 32-bit RISC based. Which means you have to always load values to its internal registers before working with those values.
Also, it expects data access to be 32-bit aligned. Unaligned access in ARM aren't denied, but causes extra overhead on code execution.
On this first part of this series, we'll see that int variables (or any variation of 32-bit variables) are the best choice when declaring local variables in functions that'll run on ARM processor cores.
We assume you're familiar with C programming language and can read ARM assembly code.