BOARD BRINGUP

Every hardware need some software to operate. This software should be compatible with the selected hardware or configured for the selected hardware

For initial board bring up the software should be minimal configuration. It will easy for development and bug fix

These are the following main points in every Board Bringup activity,

  • Schematic analysis
  • Hardware analysis
  • Uboot configuration
  • Kernel configuration
  • File system configuration

Hardware analysis

  • This is the main feature of checking hardware configuration. For this we need hardware engineer help.
    • Measure the impedance of power rails of each peripheral and it should be matching the proper/specific power levels.
    • Connect the main power supply and measure the output power supply of the main board. It usually 5V DC to 12DC.
    • Measure all Voltage level of board
    • Measure voltage of all power and it should be match as per schematic
    • Measure all crystal frequency.
    • Power Integrity and Thermal analysis
    • Signal Integrity
    • PCB layout files

Uboot Configuration

  • Following should be part of the new uboot configuration for the custom board
    • RAM – Random Access Memory
    • PMIC – Power Management Integrated Circuit
    • EMMC – Enhanced Multimedia Card

RAM

  • For fresh custom board RAM should be calibrated
  • Calibrate the Random Access Memory (RAM)
  • Initialize the Random Access Memory (RAM) values in uboot source code
  • Reconfigure the Random Access Memory capacity and starting address in board header files

PMIC

  • The main power distributed to the board by PMIC chipset. The main power is battery or DC power
  • Basically, the PMIC connected with processor by Inter Integrated Circuit (I2C). According to the PMIC

EMMC

  • Needs to configure the Enhanced MultiMedia Card (EMMC) in board header files if it required

Final and one important thing needs to configure the processor voltage level according to the CPU frequency if it required.

Kernel

Kernel is the core of the Operating System. Followings are important factor in kernel,

  • Power Management – Suspend and Wakeup
  • Process Management – Control the multiprocessing
  • Signal Management – Used to send signal between the multi process
  • Inter Process Communication (IPC) – Shared the data between the process
  • File Management – Control the file related operation
  • Driver Management – Initialize and control the peripherals (USB, Wifi, etc)
  • Resource Management – Allocating the resources for each process (Camera, music, web browser , etc)
  • Memory Management – To Create and store the file in disk
  • These are main things in kernel. Apart from that there are so many device driver for external peripherals
  • While come into the board bring up activity, we should disable development drivers and should enable the platform driver. Here platform drivers are processor specific drivers (I2C, SPI, PCI, USB, etc) and development driver is which externally connected with hardware
  • The main thing in kernel porting is to configure the Contiguous Memory Area (CMA) and Processor (CPU’s) initialization.

File System

  • Which have all services and application. As part of board bring up needs to disable unwanted service and application from build and boot. So, this will help to load and debug the software with new hardware

Leave a Comment