Open main menu

DAVE Developer's Wiki β

Changes

Reset scheme (AxelUltra)

551 bytes removed, 13:08, 20 October 2015
Handling CPU initiated reset
Three different sources can assert this active-low signal:
* PMIC
* multiple-voltage monitor: this device monitors several critical power voltages and triggers a reset pulse in case any of these exhibits a brownout condition ** MRSTn: this signal is connected to the RESET IN input of the voltage monitor. MRSTn is pulled-up to processor's I/O voltage with 2.2 kOhm resistor.
* watchdog timer: even if MX6 processor integrates a watchdog timer (WDT), an external WDT (Maxim MAX6373KA+) is avalible to maximize reliability
Since SPI NOR flash can be used as boot device, CPU_PORn is connected to this device too. This guarantees it is in a known state after reset occurrence.
=== Handling CPU initiated reset ===
'''By default, MX6 processor does not assert any external signal when it initiates a reset sequence'''. This behaviour can be changed by acting on WDOG_RESET_B_DEB signal configuration. This signal is driven by MX6's watchdog timer (WDT).
The two typical scenarios are:=== Handling CPU-initiated software reset ===# WDOG_RESET_B_DEB is '''By default, MX6 processor does not used (default): in this case assert any external signal when it initiates a CPU initiated software reset sequence . Also default software reset implementation does not guarantee that all processor registers are reset external devices such as SPI NOR flash memory. '''This may be criticalproperly'''. For example if boot memory these reasons, it is not reset properly, processor might be unable strongly recommended to boot correctly.# WDOG_RESET_B_DEB is used: in this case use a CPU initiated reset asserts WDOG_RESET_B_DEB signal different approach that, in turn, can be used to reset external devices. To implement this solution:#* software reset routines must configure WDT in order to assert WDOG_RESET_B_DEB signal#* WDOG_RESET_B_DEB must be configured properly at IOMUX controller level#* when asserted, WDOG_RESET_B_DEB must assert in turn either AxelUltra's PMIC_PWRON or AxelUltracombination with the use of a processor's CPU_PORn signal at carrier board level watchdog timer (see [[AxelEVB-Lite]] schematics as an exampleWDT). In case PMIC_PWRON is asserted, provides a complete power on cycle is perfomed and PMIC is full hardware reset too. In in case CPU_PORn is asserted instead, PMIC is not a software reset because its RESETBMCU pad is output onlyissued.
WDOG_RESET_B_DEB can be routed to SD1_DATA2 or SD1_DATA3 padsThis technique is implemented in [[Axel_Embedded_Linux_Kit_(XELK)|XELK]]. For more details please see descriptions ofIOMUXC_SW_MUX_CTL_PAD_SD1_DATA2 At software level, U-Boot and IOMUXC_SW_MUX_CTL_PAD_SD1_DATA3 registers in chapter ''IOMUX controller'' Linux kernel software reset routines make use of processor Reference Manual's WDT #2 to assert the WDOG2_B reset signal. About WDTThis signal in turn is routed to GPIO_1 pad (MUX mode = 1). At hardware level, this signal is AC-coupled to a 3-state output buffer (please refer to ''Watchdog Timer'' chapter insteadU22 chip of [[AxelEVB-Lite]] carrier board), driving PMIC_PWRON.
4,650
edits