Tuesday, November 30, 2021

LS1043A Challenges

Timer interrupt: Timer Running, But timer interrupt does not occur
The GIC-400 Interrupt controller has allocation of priority bits for secure and non-secure modes. It needs to be set in Secure monitor mode. By default, non-secure mode had zero bits. Once I allocated maximum bits for non-secure mode, interrupt started coming.

UART and Clock control registers not visible in non-secure mode
By default the clock is enabled for UART. So, clock was not an issue. But, the module needs to be enabled to read/write in secure/non-secure modes. This was default enabled in secure mode, but not for non-secure. So, once enabled the bits, it was visible to the program.

LAN driver

References:

Layerscape Software Development Kit User Guide

NXP Dual Chip Module Automotive Gateway

Patch

U-Boot drivers

An Introduction to the QorIQ Data Path Acceleration Architecture (DPAA)

Linux kernel text

FMAN microcode

Actual Driver source for Independent mode is here:

The uploading of FMAN microcode is here:

LSDK Open Source Git

Layerscape Software Development Kit User Guide

Aarch64 Online Assembler