New board bring-up is rarely an easy task, even for the experienced developer. CPU and SOC manufacturers continue to churn out new variants almost weekly. Manufacturing wants to cut costs, so they will redesign existing products to take advantage of lower part counts. What this means for the software developer is a never-ending stream of low-level development tasks to bring this new hardware up to the point that the applications developers can do their work. Furthermore, the tasks of bringing up new hardware can be particularly challenging in protected mode operating systems such as Linux. This paper will attempt to outline the steps associated with board bring-up and the role of the JTAG debugger in this process.