cdocutils.nodes document q)q}q(U nametypesq}q(X usb host testqNXemac test setupqXclock tree toolqXpre-requisites to buildingq NXrotary switch testq NXplatform specific configurationq X%creating the spi flash loadable filesq NXboard flash apisq NXcompliance testsqNXusb host test setupqX uart testqNXcommand optionsqNXboard detectionqNX#creating the sd card loadable filesqNXmcspiqNX icss led testqNXcurrent monitor stress testqNXcurrent monitorqNXicssg emac stress testqNXboard diagnosticsqXindustrial led testqNXsoc clock settingsqNXloading through spi flashqNXlld dependenciesqNXpcie (2-lane) testqNXmemory (ddr) testqNX haptics testq NXfunctional testsq!NXexternal rtc testq"NXemmc stress testq#NX emmc testq$NXospi flash testq%NX timer testq&NXmcan stress testq'NXmanual jtag loadq(NXtemperature sensor stress testq)NXoled display testq*NX board apisq+NXuniflash execution stepsq,NX&additional jumper or hardware settingsq-NXadc testq.NXflashing-post-imageq/Xsupported platformsq0NX stress testsq1NX!considerations for dra7xx devicesq2NXdiagnostic applicationsq3X mcan testq4NXnor flash testq5NXicssg emac test setupq6X icss emacq7NXcreating board configurationsq8NX qspi testq9NXrunning or debugging on ccsq:NX board utilsq;NXpower-on self testqNXtest executionq?NXethernet configurationq@NXospi flash stress testqANX uniflash faqqBNXmmcsd stress testqCNX compilationqDXrtc testqENXplatform specific informationqFNX eeprom testqGNXddr configurationqHNXgmacqINXled testqJNX emac testqKNXrebuilding board-utilsqLNXuartqMNXpower on self test (post)qNNXbuilding the examplesqONXuniflashqPNXrunning the diagnostic examplesqQNXtest logqRNXtemperature sensor testqSNXicss emac testqTNXrunning on a different arm coreqUNXpll configurationqVNX3creating custom board library for am335x and am437xqWNXoverviewqXNX jtag loadqYNX%compiling the diagnostic applicationsqZNX c66x-led-codeq[Xgetting started with uniflashq\NXprogramming the flash deviceq]NXboot eeprom stress testq^NXcustom board additionq_NX'application integration for am5x/dra7xxq`NXserdes configurationqaNX introductionqbNX platform specific configurationsqcNXdownloading flash programmerqdNX make targetsqeNX pinmux toolqfXboard configurationsqgNXlcd touchscreenqhNX mcspi testqiNXcurrent monitor testqjNX sciclientqkNX pmic testqlNXdevice driversqmX board supportqnNX uart2usb testqoNXuniflash cli jtag loadqpNXuart apploaderqqNXpwmqrNX0modifying an existing ti board for am335x/am437xqsNXmcasp audiodc testqtNX1instructions to add custom board to the pdk buildquNXcustom board validationqvNXuart stress testqwNX(loading through sd card (default method)qxNXupdating board configurationsqyNXled stress testqzNX test setupq{NXam57xxq|NXemif tools appnoteq}Xam65xxq~NXusb host stress testqNXam335xqNXrs485 uart stress testqNX nand testqNXclock generator testqNXmemory (ddr) stress testqNXindustrial led stress testqNXpinmuxqNX am65xx/j721eqNXlcd touchscreen testqNX buzzer testqNXemac stress testqNXmcasp audio testqNXdiagnostics executionqNXmcan test setupqX overview-1qXexternal rtc stress testqNX dcan testqNXicss led stress testqNX gmac testqNXnor flash stress testqNX application report on emif toolsqX am335x/am437xqNXboot switch testqNXtest accessoriesqNXboot eeprom testqNXk2gqNXj721eqNX hdmi testqNX+adding a new custom board for am335x/am437xqNXpwm testqNX downloadsqNX button testqNXpcie (1-lane) testqNXusb device testqNX mmcsd testqNXaccelerometer testqNX io instancesqNXlcd testqNX uart loadqNX'creating board library with custom nameqNX'board library creation with custom nameqX diagnosticsqNXicssg emac testqNXrs485 uart testqNXboard file namesqNXi2cqNuUsubstitution_defsq}qUparse_messagesq]q(cdocutils.nodes system_message q)q}q(U rawsourceqUUparentqcdocutils.nodes section q)q}q(hUhh)q}q(hUhh)q}q(hUhhUsourceqXJ/home/gtbldadm/nightlybuilds/processor-sdk-doc/source/rtos/index_board.rstqUtagnameqUsectionqU attributesq}q(Udupnamesq]Uclassesq]Ubackrefsq]Uidsq]qU board-supportqaUnamesq]qhnauUlineqKUdocumentqhUchildrenq]q(cdocutils.nodes title q)q}q(hX Board SupportqhhhhhUtitleqh}q(h]h]h]h]h]uhKhhh]qcdocutils.nodes Text qX Board Supportq؅q}q(hhhhubaubcdocutils.nodes comment q)q}q(hXHhttp://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_Board_Supporthhhcdocutils.nodes reprunicode qXWsource/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Board_Support.rst.incq߅q}qbhUcommentqh}q(U xml:spaceqUpreserveqh]h]h]h]h]uhKhhh]qhXHhttp://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_Board_Supportq煁q}q(hUhhubaubh)q}q(hUU referencedqKhhhhhhh}q(h]qX introductionqah]h]h]qU introductionqah]uhKhhh]q(h)q}q(hX Introductionqhhhhhhh}q(h]h]h]h]h]uhKhhh]qhX Introductionqq}q(hhhhubaubcdocutils.nodes paragraph q)q}q(hXBoard library contains a set of general initialization and setup functions that are board-specific. This component includes libraries for boards supported in the Processor SDK release. Refer to the package content for the list of supported boards.Board component also includes diagnostic software. Refer to `Processor SDK RTOS DIAG `__ for additional details on available diagnostic examples.hhhhhU paragraphqh}q(h]h]h]h]h]uhKhhh]r(hX3Board library contains a set of general initialization and setup functions that are board-specific. This component includes libraries for boards supported in the Processor SDK release. Refer to the package content for the list of supported boards.Board component also includes diagnostic software. Refer to rr}r(hX3Board library contains a set of general initialization and setup functions that are board-specific. This component includes libraries for boards supported in the Processor SDK release. Refer to the package content for the list of supported boards.Board component also includes diagnostic software. Refer to hhubcdocutils.nodes reference r)r}r(hX:`Processor SDK RTOS DIAG `__h}r(UnameXProcessor SDK RTOS DIAGUrefurirXindex_board.html#diagnosticsh]h]h]h]h]uhhh]r hXProcessor SDK RTOS DIAGr r }r (hUhjubahU referencer ubhX9 for additional details on available diagnostic examples.rr}r(hX9 for additional details on available diagnostic examples.hhubeubh)r}r(hUhhhhhhh}r(h]h]h]h]rU board-apisrah]rh+auhKhhh]r(h)r}r(hX Board APIsrhjhhhhh}r(h]h]h]h]h]uhKhhh]rhX Board APIsrr}r(hjhjubaubh)r }r!(hXThe Board_init() API supports initialization of PLL, peripheral clocks, external DDR memory, pinmux and IO Delay configurations. API Reference for application:r"hjhhhhh}r#(h]h]h]h]h]uhKhhh]r$hXThe Board_init() API supports initialization of PLL, peripheral clocks, external DDR memory, pinmux and IO Delay configurations. API Reference for application:r%r&}r'(hj"hj ubaubcdocutils.nodes literal_block r()r)}r*(hX#. include hjhhhU literal_blockr+h}r,(hhh]h]h]h]h]uhKhhh]r-hX#. include r.r/}r0(hUhj)ubaubcdocutils.nodes line_block r1)r2}r3(hUhjhhhU line_blockr4h}r5(h]h]h]h]h]uhKhhh]r6cdocutils.nodes line r7)r8}r9(hUUindentr:Khj2hhhhh}r;(h]h]h]h]h]uhKhhh]ubaubh)r<}r=(hX7Example API pseudo code for Board_init() is as follows:r>hjhhhhh}r?(h]h]h]h]h]uhKhhh]r@hX7Example API pseudo code for Board_init() is as follows:rArB}rC(hj>hj<ubaubj()rD}rE(hX/* Setting up for pinmux and uart */ Board_STATUS ret; Board_initCfg boardCfg; boardCfg = BOARD_INIT_MODULE_CLOCK \| BOARD_INIT_PINMUX_CONFIG \| BOARD_INIT_UART_STDIO; ret = Board_init(boardCfg);hjhhhj+h}rF(hhh]h]h]h]h]uhK$hhh]rGhX/* Setting up for pinmux and uart */ Board_STATUS ret; Board_initCfg boardCfg; boardCfg = BOARD_INIT_MODULE_CLOCK \| BOARD_INIT_PINMUX_CONFIG \| BOARD_INIT_UART_STDIO; ret = Board_init(boardCfg);rHrI}rJ(hUhjDubaubj1)rK}rL(hUhjhhhj4h}rM(h]h]h]h]h]uhK(hhh]rNj7)rO}rP(hUj:KhjKhhhhh}rQ(h]h]h]h]h]uhKhhh]ubaubeubh)rR}rS(hUhhhhhhh}rT(h]h]h]h]rUUlld-dependenciesrVah]rWhauhK+hhh]rX(h)rY}rZ(hXLLD Dependenciesr[hjRhhhhh}r\(h]h]h]h]h]uhK+hhh]r]hXLLD Dependenciesr^r_}r`(hj[hjYubaubh)ra}rb(hUhjRhhhhh}rc(h]h]h]h]rdUi2creah]rfhauhK.hhh]rg(h)rh}ri(hXI2Crjhjahhhhh}rk(h]h]h]h]h]uhK.hhh]rlhXI2Crmrn}ro(hjjhjhubaubh)rp}rq(hXApplication need to configure **BOARD_INIT_MODULE_CLOCK** option to have I2C operational. I2C is used to read EEPROM data. An I2C handle will be opened in polling mode, and closed after the board ID data is retrieved from EEPROM using Board_getIDInfo() API.hjahhhhh}rr(h]h]h]h]h]uhK0hhh]rs(hXApplication need to configure rtru}rv(hXApplication need to configure hjpubcdocutils.nodes strong rw)rx}ry(hX**BOARD_INIT_MODULE_CLOCK**h}rz(h]h]h]h]h]uhjph]r{hXBOARD_INIT_MODULE_CLOCKr|r}}r~(hUhjxubahUstrongrubhX option to have I2C operational. I2C is used to read EEPROM data. An I2C handle will be opened in polling mode, and closed after the board ID data is retrieved from EEPROM using Board_getIDInfo() API.rr}r(hX option to have I2C operational. I2C is used to read EEPROM data. An I2C handle will be opened in polling mode, and closed after the board ID data is retrieved from EEPROM using Board_getIDInfo() API.hjpubeubh)r}r(hXFor DRA7xx EVMs, I2C is also used to configure various I/O expanders and board muxes to enable PDK examples to function properly on the EVM. The I2C handles are opened in polling mode and closed after the board mux initialization has completed.rhjahhhhh}r(h]h]h]h]h]uhK5hhh]rhXFor DRA7xx EVMs, I2C is also used to configure various I/O expanders and board muxes to enable PDK examples to function properly on the EVM. The I2C handles are opened in polling mode and closed after the board mux initialization has completed.rr}r(hjhjubaubeubh)r}r(hUhjRhhhhh}r(h]h]h]h]rUuartrah]rhMauhK;hhh]r(h)r}r(hXUARTrhjhhhhh}r(h]h]h]h]h]uhK;hhh]rhXUARTrr}r(hjhjubaubh)r}r(hXoApplication need to configure Board_init() with the **BOARD_INIT_UART_STDIO** option to use the UART stdio API.hjhhhhh}r(h]h]h]h]h]uhK=hhh]r(hX4Application need to configure Board_init() with the rr}r(hX4Application need to configure Board_init() with the hjubjw)r}r(hX**BOARD_INIT_UART_STDIO**h}r(h]h]h]h]h]uhjh]rhXBOARD_INIT_UART_STDIOrr}r(hUhjubahjubhX" option to use the UART stdio API.rr}r(hX" option to use the UART stdio API.hjubeubh)r}r(hXuAfter Board_init() completes, application can invoke UART stdio functions such as UART_printf, UART_scanFmt, and etc.rhjhhhhh}r(h]h]h]h]h]uhK@hhh]rhXuAfter Board_init() completes, application can invoke UART stdio functions such as UART_printf, UART_scanFmt, and etc.rr}r(hjhjubaubeubh)r}r(hUhjRhhhhh}r(h]h]h]h]rU sciclientrah]rhkauhKDhhh]r(h)r}r(hX SCICLIENTrhjhhhhh}r(h]h]h]h]h]uhKDhhh]rhX SCICLIENTrr}r(hjhjubaubh)r}r(hXMAM65xx/J7xx Board library uses sciclient APIs for configuring the PLL clocks.rhjhhhhh}r(h]h]h]h]h]uhKFhhh]rhXMAM65xx/J7xx Board library uses sciclient APIs for configuring the PLL clocks.rr}r(hjhjubaubeubeubeubhh)r}r(hUhhhhhhh}r(h]h]h]h]rUcustom-board-additionrah]rh_auhKhhh]r(h)r}r(hXCustom Board Additionrhjhhhhh}r(h]h]h]h]h]uhKhhh]rhXCustom Board Additionrr}r(hjhjubaubh)r}r(hXIThis section provides the guidelines for creating a custom board library.rhjhhhhh}r(h]h]h]h]h]uhKhhh]rhXIThis section provides the guidelines for creating a custom board library.rr}r(hjhjubaubh)r}r(hXfBelow image shows the recommended sequence to be followed while porting processor SDK to custom board.rhjhhhhh}r(h]h]h]h]h]uhKhhh]rhXfBelow image shows the recommended sequence to be followed while porting processor SDK to custom board.rr}r(hjhjubaubcdocutils.nodes image r)r}r(hX=.. Image:: /images/prsdk_rtos_custom_board_porting_steps.png hjhhhUimagerh}r(UuriX0images/prsdk_rtos_custom_board_porting_steps.pngrh]h]h]h]U candidatesr}rU*jsh]uhKhhh]ubh)r}r(hUhjhhhhh}r(h]h]h]h]rUboard-configurationsrah]rhgauhKhhh]r(h)r}r(hXBoard Configurationsrhjhhhhh}r(h]h]h]h]h]uhKhhh]rhXBoard Configurationsrr}r(hjhjubaubh)r}r(hXBoard library supports different SoC and HW board specific configuration functions. Below table shows configurations supported by board library across different platforms.rhjhhhhh}r(h]h]h]h]h]uhKhhh]rhXBoard library supports different SoC and HW board specific configuration functions. Below table shows configurations supported by board library across different platforms.rr}r(hjhjubaubcdocutils.nodes table r)r }r (hUhjhhhUtabler h}r (h]h]h]h]h]uhNhhh]r cdocutils.nodes tgroup r)r}r(hUh}r(h]h]h]h]h]UcolsK uhj h]r(cdocutils.nodes colspec r)r}r(hUh}r(h]h]h]h]h]UcolwidthK%uhjh]hUcolspecrubj)r}r(hUh}r(h]h]h]h]h]UcolwidthKuhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK%uhjh]hjubj)r}r(hUh}r (h]h]h]h]h]UcolwidthK uhjh]hjubj)r!}r"(hUh}r#(h]h]h]h]h]UcolwidthK uhjh]hjubj)r$}r%(hUh}r&(h]h]h]h]h]UcolwidthK uhjh]hjubj)r'}r((hUh}r)(h]h]h]h]h]UcolwidthK uhjh]hjubj)r*}r+(hUh}r,(h]h]h]h]h]UcolwidthK uhjh]hjubj)r-}r.(hUh}r/(h]h]h]h]h]UcolwidthK uhjh]hjubj)r0}r1(hUh}r2(h]h]h]h]h]UcolwidthKuhjh]hjubcdocutils.nodes thead r3)r4}r5(hUh}r6(h]h]h]h]h]uhjh]r7cdocutils.nodes row r8)r9}r:(hUh}r;(h]h]h]h]h]uhj4h]r<(cdocutils.nodes entry r=)r>}r?(hUh}r@(h]h]h]h]h]uhj9h]rAh)rB}rC(hXBoard ConfigurationrDhj>hhhhh}rE(h]h]h]h]h]uhKh]rFhXBoard ConfigurationrGrH}rI(hjDhjBubaubahUentryrJubj=)rK}rL(hUh}rM(h]h]h]h]h]uhj9h]rNh)rO}rP(hX DescriptionrQhjKhhhhh}rR(h]h]h]h]h]uhKh]rShX DescriptionrTrU}rV(hjQhjOubaubahjJubj=)rW}rX(hUh}rY(h]h]h]h]h]uhj9h]rZh)r[}r\(hX Referencesr]hjWhhhhh}r^(h]h]h]h]h]uhKh]r_hX Referencesr`ra}rb(hj]hj[ubaubahjJubj=)rc}rd(hUh}re(h]h]h]h]h]uhj9h]rfh)rg}rh(hXJ721Erihjchhhhh}rj(h]h]h]h]h]uhKh]rkhXJ721Erlrm}rn(hjihjgubaubahjJubj=)ro}rp(hUh}rq(h]h]h]h]h]uhj9h]rrh)rs}rt(hXAM65xxruhjohhhhh}rv(h]h]h]h]h]uhKh]rwhXAM65xxrxry}rz(hjuhjsubaubahjJubj=)r{}r|(hUh}r}(h]h]h]h]h]uhj9h]r~h)r}r(hXAM57xxrhj{hhhhh}r(h]h]h]h]h]uhKh]rhXAM57xxrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj9h]rh)r}r(hXAM437xrhjhhhhh}r(h]h]h]h]h]uhKh]rhXAM437xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj9h]rh)r}r(hXAM335xrhjhhhhh}r(h]h]h]h]h]uhKh]rhXAM335xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj9h]rh)r}r(hXK2Grhjhhhhh}r(h]h]h]h]h]uhKh]rhXK2Grr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj9h]rh)r}r(hX K2-E/H/K/Lrhjhhhhh}r(h]h]h]h]h]uhKh]rhX K2-E/H/K/Lrr}r(hjhjubaubahjJubehUrowrubahUtheadrubcdocutils.nodes tbody r)r}r(hUh}r(h]h]h]h]h]uhjh]r(j8)r}r(hUh}r(h]h]h]h]h]uhjh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXPinmuxrhjhhhhh}r(h]h]h]h]h]uhKh]rhXPinmuxrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX1Configures pinmux for interfaces on the HW board.rhjhhhhh}r(h]h]h]h]h]uhKh]rhX1Configures pinmux for interfaces on the HW board.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX`Pinmux Tool`_rhjhhhhh}r(h]h]h]h]h]uhKh]rcdocutils.nodes problematic r)r}r(hjh}r(h]rUid280rah]h]h]h]UrefidUid279ruhjh]rhX`Pinmux Tool`_rr}r(hUhjubahU problematicrubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r (h]h]h]h]h]uhKh]r hXxr }r (hXxhjubaubahjJubj=)r }r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhj hhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r (hXxhjubaubahjJubj=)r!}r"(hUh}r#(h]h]h]h]h]uhjh]r$h)r%}r&(hXxhj!hhhhh}r'(h]h]h]h]h]uhKh]r(hXxr)}r*(hXxhj%ubaubahjJubj=)r+}r,(hUh}r-(h]h]h]h]h]uhjh]hjJubehjubj8)r.}r/(hUh}r0(h]h]h]h]h]uhjh]r1(j=)r2}r3(hUh}r4(h]h]h]h]h]uhj.h]r5h)r6}r7(hXSoC Clock Settingsr8hj2hhhhh}r9(h]h]h]h]h]uhKh]r:hXSoC Clock Settingsr;r<}r=(hj8hj6ubaubahjJubj=)r>}r?(hUh}r@(h]h]h]h]h]uhj.h]rAh)rB}rC(hX4Enables power domains and clocks for SoC peripheralsrDhj>hhhhh}rE(h]h]h]h]h]uhKh]rFhX4Enables power domains and clocks for SoC peripheralsrGrH}rI(hjDhjBubaubahjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhj.h]rMh)rN}rO(hX`Clock Tree Tool`_rPhjJhhhhh}rQ(h]h]h]h]h]uhKh]rRj)rS}rT(hjPUresolvedrUKhjNhj h}rV(UnameXClock Tree TooljX$http://www.ti.com/tool/CLOCKTREETOOLrWh]h]h]h]h]uh]rXhXClock Tree ToolrYrZ}r[(hUhjSubaubaubahjJubj=)r\}r](hUh}r^(h]h]h]h]h]uhj.h]r_h)r`}ra(hXxhj\hhhhh}rb(h]h]h]h]h]uhKh]rchXxrd}re(hXxhj`ubaubahjJubj=)rf}rg(hUh}rh(h]h]h]h]h]uhj.h]rih)rj}rk(hXxhjfhhhhh}rl(h]h]h]h]h]uhKh]rmhXxrn}ro(hXxhjjubaubahjJubj=)rp}rq(hUh}rr(h]h]h]h]h]uhj.h]rsh)rt}ru(hXxhjphhhhh}rv(h]h]h]h]h]uhKh]rwhXxrx}ry(hXxhjtubaubahjJubj=)rz}r{(hUh}r|(h]h]h]h]h]uhj.h]r}h)r~}r(hXxhjzhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhj~ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj.h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj.h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj.h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXDDR Configurationrhjhhhhh}r(h]h]h]h]h]uhKh]rhXDDR Configurationrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX9Configures DDR/EMIF controller and DDR timing parameters.rhjhhhhh}r(h]h]h]h]h]uhKh]rhX9Configures DDR/EMIF controller and DDR timing parameters.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX`EMIF Tools Appnote`_rhjhhhhh}r(h]h]h]h]h]uhKh]rj)r}r(hjjUKhjhj h}r(UnameXEMIF Tools AppnotejX+FAQ.html#useful-ddr-configuration-resourcesrh]h]h]h]h]uh]rhXEMIF Tools Appnoterr}r(hUhjubaubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubehjubj8)r}r(hUh}r (h]h]h]h]h]uhjh]r (j=)r }r (hUh}r (h]h]h]h]h]uhjh]rh)r}r(hXPLL Configurationrhj hhhhh}r(h]h]h]h]h]uhKh]rhXPLL Configurationrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXBConfigures PLL modules to generate various clocks used by the SoC.rhjhhhhh}r(h]h]h]h]h]uhKh]rhXBConfigures PLL modules to generate various clocks used by the SoC.r r!}r"(hjhjubaubahjJubj=)r#}r$(hUh}r%(h]h]h]h]h]uhjh]r&h)r'}r((hXNAr)hj#hhhhh}r*(h]h]h]h]h]uhKh]r+hXNAr,r-}r.(hj)hj'ubaubahjJubj=)r/}r0(hUh}r1(h]h]h]h]h]uhjh]r2h)r3}r4(hXxhj/hhhhh}r5(h]h]h]h]h]uhKh]r6hXxr7}r8(hXxhj3ubaubahjJubj=)r9}r:(hUh}r;(h]h]h]h]h]uhjh]r<h)r=}r>(hXxhj9hhhhh}r?(h]h]h]h]h]uhKh]r@hXxrA}rB(hXxhj=ubaubahjJubj=)rC}rD(hUh}rE(h]h]h]h]h]uhjh]rFh)rG}rH(hXxhjChhhhh}rI(h]h]h]h]h]uhKh]rJhXxrK}rL(hXxhjGubaubahjJubj=)rM}rN(hUh}rO(h]h]h]h]h]uhjh]hjJubj=)rP}rQ(hUh}rR(h]h]h]h]h]uhjh]hjJubj=)rS}rT(hUh}rU(h]h]h]h]h]uhjh]rVh)rW}rX(hXxhjShhhhh}rY(h]h]h]h]h]uhKh]rZhXxr[}r\(hXxhjWubaubahjJubj=)r]}r^(hUh}r_(h]h]h]h]h]uhjh]r`h)ra}rb(hXxhj]hhhhh}rc(h]h]h]h]h]uhKh]rdhXxre}rf(hXxhjaubaubahjJubehjubj8)rg}rh(hUh}ri(h]h]h]h]h]uhjh]rj(j=)rk}rl(hUh}rm(h]h]h]h]h]uhjgh]rnh)ro}rp(hXEthernet Configurationrqhjkhhhhh}rr(h]h]h]h]h]uhKh]rshXEthernet Configurationrtru}rv(hjqhjoubaubahjJubj=)rw}rx(hUh}ry(h]h]h]h]h]uhjgh]rzh)r{}r|(hX&Configures Ethernet PHYs on the board.r}hjwhhhhh}r~(h]h]h]h]h]uhKh]rhX&Configures Ethernet PHYs on the board.rr}r(hj}hj{ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXNArhjhhhhh}r(h]h]h]h]h]uhKh]rhXNArr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjgh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX IO Instancesrhjhhhhh}r(h]h]h]h]h]uhKh]rhX IO Instancesrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX'Defines IO instances for HW interfaces.rhjhhhhh}r(h]h]h]h]h]uhKh]rhX'Defines IO instances for HW interfaces.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXNArhjhhhhh}r(h]h]h]h]h]uhKh]rhXNArr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r (hXxhjubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]r h)r}r(hXxhj hhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r (h]h]h]h]h]uhjh]r!h)r"}r#(hXxhjhhhhh}r$(h]h]h]h]h]uhKh]r%hXxr&}r'(hXxhj"ubaubahjJubj=)r(}r)(hUh}r*(h]h]h]h]h]uhjh]r+h)r,}r-(hXxhj(hhhhh}r.(h]h]h]h]h]uhKh]r/hXxr0}r1(hXxhj,ubaubahjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhjh]r5h)r6}r7(hXxhj2hhhhh}r8(h]h]h]h]h]uhKh]r9hXxr:}r;(hXxhj6ubaubahjJubehjubj8)r<}r=(hUh}r>(h]h]h]h]h]uhjh]r?(j=)r@}rA(hUh}rB(h]h]h]h]h]uhj<h]rCh)rD}rE(hXBoard DetectionrFhj@hhhhh}rG(h]h]h]h]h]uhKh]rHhXBoard DetectionrIrJ}rK(hjFhjDubaubahjJubj=)rL}rM(hUh}rN(h]h]h]h]h]uhj<h]rOh)rP}rQ(hX$EEPROM board ID for board detection.rRhjLhhhhh}rS(h]h]h]h]h]uhKh]rThX$EEPROM board ID for board detection.rUrV}rW(hjRhjPubaubahjJubj=)rX}rY(hUh}rZ(h]h]h]h]h]uhj<h]r[h)r\}r](hXNAr^hjXhhhhh}r_(h]h]h]h]h]uhKh]r`hXNArarb}rc(hj^hj\ubaubahjJubj=)rd}re(hUh}rf(h]h]h]h]h]uhj<h]rgh)rh}ri(hXxhjdhhhhh}rj(h]h]h]h]h]uhKh]rkhXxrl}rm(hXxhjhubaubahjJubj=)rn}ro(hUh}rp(h]h]h]h]h]uhj<h]rqh)rr}rs(hXxhjnhhhhh}rt(h]h]h]h]h]uhKh]ruhXxrv}rw(hXxhjrubaubahjJubj=)rx}ry(hUh}rz(h]h]h]h]h]uhj<h]r{h)r|}r}(hXxhjxhhhhh}r~(h]h]h]h]h]uhKh]rhXxr}r(hXxhj|ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj<h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj<h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj<h]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj<h]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXBoard Flash APIsrhjhhhhh}r(h]h]h]h]h]uhKh]rhXBoard Flash APIsrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX1Provides Common APIs for accessing flash devices.rhjhhhhh}r(h]h]h]h]h]uhKh]rhX1Provides Common APIs for accessing flash devices.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXNArhjhhhhh}r(h]h]h]h]h]uhKh]rhXNArr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhhhhh}r(h]h]h]h]h]uhKh]rhXxr}r (hXxhjubaubahjJubehjubj8)r }r (hUh}r (h]h]h]h]h]uhjh]r (j=)r}r(hUh}r(h]h]h]h]h]uhj h]rh)r}r(hXSerDes Configurationrhjhhhhh}r(h]h]h]h]h]uhKh]rhXSerDes Configurationrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj h]rh)r}r(hX<Configures SerDes interface internal muxing and basic setup.r hjhhhhh}r!(h]h]h]h]h]uhKh]r"hX<Configures SerDes interface internal muxing and basic setup.r#r$}r%(hj hjubaubahjJubj=)r&}r'(hUh}r((h]h]h]h]h]uhj h]r)h)r*}r+(hXNAr,hj&hhhhh}r-(h]h]h]h]h]uhKh]r.hXNAr/r0}r1(hj,hj*ubaubahjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhj h]r5h)r6}r7(hXxhj2hhhhh}r8(h]h]h]h]h]uhKh]r9hXxr:}r;(hXxhj6ubaubahjJubj=)r<}r=(hUh}r>(h]h]h]h]h]uhj h]r?h)r@}rA(hXxhj<hhhhh}rB(h]h]h]h]h]uhKh]rChXxrD}rE(hXxhj@ubaubahjJubj=)rF}rG(hUh}rH(h]h]h]h]h]uhj h]hjJubj=)rI}rJ(hUh}rK(h]h]h]h]h]uhj h]hjJubj=)rL}rM(hUh}rN(h]h]h]h]h]uhj h]hjJubj=)rO}rP(hUh}rQ(h]h]h]h]h]uhj h]hjJubj=)rR}rS(hUh}rT(h]h]h]h]h]uhj h]hjJubehjubehUtbodyrUubehUtgrouprVubaubcdocutils.nodes target rW)rX}rY(hXG.. _Pinmux Tool: http://processors.wiki.ti.com/index.php/TI_PinMux_ToolhKhjhhhUtargetrZh}r[(jX6http://processors.wiki.ti.com/index.php/TI_PinMux_Toolh]r\U pinmux-toolr]ah]h]r^X pinmux toolr_ah]h]uhKhhh]ubjW)r`}ra(hX9.. _Clock Tree Tool: http://www.ti.com/tool/CLOCKTREETOOLhKhjhhhjZh}rb(jjWh]rcUclock-tree-toolrdah]h]h]h]rehauhKhhh]ubjW)rf}rg(hXC.. _EMIF Tools Appnote: FAQ.html#useful-ddr-configuration-resourceshKhjhhhjZh}rh(jjh]riUemif-tools-appnoterjah]h]h]h]rkh}auhKhhh]ubh)rl}rm(hXHAdding custom board library can follow two approaches as mentioned belowrnhjhhhhh}ro(h]h]h]h]h]uhKhhh]rphXHAdding custom board library can follow two approaches as mentioned belowrqrr}rs(hjnhjlubaubj1)rt}ru(hUhjhhhj4h}rv(h]h]h]h]h]uhKhhh]rw(j7)rx}ry(hXV**Approach 1**: Update files in existing TI board library and modify for custom board.j:Khjthhhhh}rz(h]h]h]h]h]uhKhhh]r{(jw)r|}r}(hX**Approach 1**h}r~(h]h]h]h]h]uhjxh]rhX Approach 1rr}r(hUhj|ubahjubhXH: Update files in existing TI board library and modify for custom board.rr}r(hXH: Update files in existing TI board library and modify for custom board.hjxubeubj7)r}r(hXThis approach will be less time consuming since the board library setup is already existing in the processor SDK, but need to maintain TI board library separately for reference.rj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]rhXThis approach will be less time consuming since the board library setup is already existing in the processor SDK, but need to maintain TI board library separately for reference.rr}r(hjhjubaubj7)r}r(hUj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]ubj7)r}r(hX-**Approach 2**: Add custom board to PDK buildj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]r(jw)r}r(hX**Approach 2**h}r(h]h]h]h]h]uhjh]rhX Approach 2rr}r(hUhjubahjubhX: Add custom board to PDK buildrr}r(hX: Add custom board to PDK buildhjubeubj7)r}r(hXCThis approach involves one time effort of setting up the custom board library but makes it easy to switch between custom board library and TI reference board library. In this approach during migration to updated processor SDK, review and selective updates from existing TI board reference source will need to be considered.rj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]rhXCThis approach involves one time effort of setting up the custom board library but makes it easy to switch between custom board library and TI reference board library. In this approach during migration to updated processor SDK, review and selective updates from existing TI board reference source will need to be considered.rr}r(hjhjubaubj7)r}r(hUj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]ubj7)r}r(hXRefer the section `Board Library Creation with Custom Name `_ for additional steps involved in creating board library with Approach 2.j:Khjthhhhh}r(h]h]h]h]h]uhMhhh]r(hXRefer the section rr}r(hXRefer the section hjubj)r}r(hXe`Board Library Creation with Custom Name `_h}r(UnameX'Board Library Creation with Custom NamejX8index_board.html#creating-board-library-with-custom-namerh]h]h]h]h]uhjh]rhX'Board Library Creation with Custom Namerr}r(hUhjubahj ubjW)r}r(hX; hKhjhjZh}r(Urefurijh]rU'board-library-creation-with-custom-namerah]h]h]h]rhauh]ubhXI for additional steps involved in creating board library with Approach 2.rr}r(hXI for additional steps involved in creating board library with Approach 2.hjubeubj7)r}r(hUj:Khjthhhhh}r(h]h]h]h]h]uhKhhh]ubeubeubh)r}r(hUhjhhhhh}r(h]h]h]h]rUcreating-board-configurationsrah]rh8auhMhhh]r(h)r}r(hXCreating Board Configurationsrhjhhhhh}r(h]h]h]h]h]uhMhhh]rhXCreating Board Configurationsrr}r(hjhjubaubh)r}r(hXBefore updating the board library with configurations for custom board, it is recommended to use GEL file and CCS for validating the configurations. Follow the steps mentioned belowrhjhhhhh}r(h]h]h]h]h]uhMhhh]rhXBefore updating the board library with configurations for custom board, it is recommended to use GEL file and CCS for validating the configurations. Follow the steps mentioned belowrr}r(hjhjubaubcdocutils.nodes bullet_list r)r}r(hUhjhhhU bullet_listrh}r(UbulletrX-h]h]h]h]h]uhM hhh]r(cdocutils.nodes list_item r)r}r(hXUpdate the SoC clock configurations in the GEL file. TI provides `Clock Tree Tool `_ to simulate the device clocks.hjhhhU list_itemrh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXUpdate the SoC clock configurations in the GEL file. TI provides `Clock Tree Tool `_ to simulate the device clocks.hjhhhhh}r(h]h]h]h]h]uhM h]r(hXAUpdate the SoC clock configurations in the GEL file. TI provides rr}r(hXAUpdate the SoC clock configurations in the GEL file. TI provides hjubj)r}r(hX9`Clock Tree Tool `_h}r(UnameXClock Tree TooljX$http://www.ti.com/tool/CLOCKTREETOOLrh]h]h]h]h]uhjh]rhXClock Tree Toolrr}r(hUhjubahj ubjW)r}r(hX' hKhjhjZh}r(Urefurijh]rUid1rah]h]rXclock tree toolrah]h]uh]ubhX to simulate the device clocks.rr}r(hX to simulate the device clocks.hjubeubaubj)r}r(hXUpdate the PLL clock configurations in GEL file if custom board uses a different input clock than the eval platform and/or needs different clock outputs.rhjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhhhhh}r (h]h]h]h]h]uhM h]r hXUpdate the PLL clock configurations in GEL file if custom board uses a different input clock than the eval platform and/or needs different clock outputs.r r }r (hjhjubaubaubj)r}r(hXUpdate DDR PHY and timing configurations for custom board. Refer the guidelines described in `Application Report on EMIF Tools `_hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXUpdate DDR PHY and timing configurations for custom board. Refer the guidelines described in `Application Report on EMIF Tools `_hjhhhhh}r(h]h]h]h]h]uhM h]r(hX]Update DDR PHY and timing configurations for custom board. Refer the guidelines described in rr}r(hX]Update DDR PHY and timing configurations for custom board. Refer the guidelines described in hjubj)r}r(hXQ`Application Report on EMIF Tools `_h}r(UnameX Application Report on EMIF ToolsjX+FAQ.html#useful-ddr-configuration-resourcesrh]h]h]h]h]uhjh]rhX Application Report on EMIF Toolsrr}r (hUhjubahj ubjW)r!}r"(hX. hKhjhjZh}r#(Urefurijh]r$U application-report-on-emif-toolsr%ah]h]h]h]r&hauh]ubeubaubj)r'}r((hXAfter GEL file update is complete, connect to custom board using JTAG, run the GEL script to apply the modified configurations and verify the configured values. Load and run simple hello world example out of SoC internal memory and DDR memory. hjhhhjh}r)(h]h]h]h]h]uhNhhh]r*h)r+}r,(hXAfter GEL file update is complete, connect to custom board using JTAG, run the GEL script to apply the modified configurations and verify the configured values. Load and run simple hello world example out of SoC internal memory and DDR memory.r-hj'hhhhh}r.(h]h]h]h]h]uhMh]r/hXAfter GEL file update is complete, connect to custom board using JTAG, run the GEL script to apply the modified configurations and verify the configured values. Load and run simple hello world example out of SoC internal memory and DDR memory.r0r1}r2(hj-hj+ubaubaubeubeubh)r3}r4(hUhjhhhhh}r5(h]h]h]h]r6Uupdating-board-configurationsr7ah]r8hyauhMhhh]r9(h)r:}r;(hXUpdating Board Configurationsr<hj3hhhhh}r=(h]h]h]h]h]uhMhhh]r>hXUpdating Board Configurationsr?r@}rA(hj<hj:ubaubh)rB}rC(hX0Steps for updating the board library configurations for a custom board is described in this section. Updating some of the configurations may need additional steps based on the platform. Refer `Platform Specific Configuration `_ section for more details.hj3hhhhh}rD(h]h]h]h]h]uhMhhh]rE(hXSteps for updating the board library configurations for a custom board is described in this section. Updating some of the configurations may need additional steps based on the platform. Refer rFrG}rH(hXSteps for updating the board library configurations for a custom board is described in this section. Updating some of the configurations may need additional steps based on the platform. Refer hjBubj)rI}rJ(hXV`Platform Specific Configuration `_h}rK(UnameXPlatform Specific ConfigurationjX1index_board.html#platform-specific-configurationsrLh]h]h]h]h]uhjBh]rMhXPlatform Specific ConfigurationrNrO}rP(hUhjIubahj ubjW)rQ}rR(hX4 hKhjBhjZh}rS(UrefurijLh]rTUplatform-specific-configurationrUah]h]h]h]rVh auh]ubhX section for more details.rWrX}rY(hX section for more details.hjBubeubh)rZ}r[(hUhKhj3hhhhh}r\(h]r]Xpinmuxr^ah]h]h]r_Upinmuxr`ah]uhMhhh]ra(h)rb}rc(hXPinmuxrdhjZhhhhh}re(h]h]h]h]h]uhMhhh]rfhXPinmuxrgrh}ri(hjdhjbubaubh)rj}rk(hX0When the **BOARD_INIT_PINMUX_CONFIG** option is specified, the Board_init() API configures the pinmux for the board. If applicable, it will also configure IO delay values for those device pads, which ensures correct IO timings are met along with the pinmux settings. Refer SOC TRM for additional details.hjZhhhhh}rl(h]h]h]h]h]uhMhhh]rm(hX When the rnro}rp(hX When the hjjubjw)rq}rr(hX**BOARD_INIT_PINMUX_CONFIG**h}rs(h]h]h]h]h]uhjjh]rthXBOARD_INIT_PINMUX_CONFIGrurv}rw(hUhjqubahjubhX  option is specified, the Board_init() API configures the pinmux for the board. If applicable, it will also configure IO delay values for those device pads, which ensures correct IO timings are met along with the pinmux settings. Refer SOC TRM for additional details.rxry}rz(hX  option is specified, the Board_init() API configures the pinmux for the board. If applicable, it will also configure IO delay values for those device pads, which ensures correct IO timings are met along with the pinmux settings. Refer SOC TRM for additional details.hjjubeubh)r{}r|(hXThe pinmux data to be configured is generated by the TI pinmux tool. Refer to `TI PinMux Tool `__ for more information.hjZhhhhh}r}(h]h]h]h]h]uhM!hhh]r~(hXNThe pinmux data to be configured is generated by the TI pinmux tool. Refer to rr}r(hXNThe pinmux data to be configured is generated by the TI pinmux tool. Refer to hj{ubj)r}r(hXK`TI PinMux Tool `__h}r(UnameXTI PinMux TooljX6http://processors.wiki.ti.com/index.php/TI_PinMux_Toolh]h]h]h]h]uhj{h]rhXTI PinMux Toolrr}r(hUhjubahj ubhX for more information.rr}r(hX for more information.hj{ubeubh)r}r(hX{Once the pinmux selection is done, Copy the pinmux tool generated files to your custom board library implementation folder.rhjZhhhhh}r(h]h]h]h]h]uhM&hhh]rhX{Once the pinmux selection is done, Copy the pinmux tool generated files to your custom board library implementation folder.rr}r(hjhjubaubh)r}r(hXRefer `Platform Specific Configuration `_ section for more details on the files generated by pinmux tool for different platforms.hjZhhhhh}r(h]h]h]h]h]uhM)hhh]r(hXRefer rr}r(hXRefer hjubj)r}r(hXV`Platform Specific Configuration `_h}r(UnameXPlatform Specific ConfigurationjX1index_board.html#platform-specific-configurationsrh]h]h]h]h]uhjh]rhXPlatform Specific Configurationrr}r(hUhjubahj ubjW)r}r(hX4 hKhjhjZh}r(Urefurijh]rUid2rah]h]rXplatform specific configurationrah]h]uh]ubhXX section for more details on the files generated by pinmux tool for different platforms.rr}r(hXX section for more details on the files generated by pinmux tool for different platforms.hjubeubeubh)r}r(hUhj3hhhhh}r(h]h]h]h]rUsoc-clock-settingsrah]rhauhM-hhh]r(h)r}r(hXSoC Clock Settingsrhjhhhhh}r(h]h]h]h]h]uhM-hhh]rhXSoC Clock Settingsrr}r(hjhjubaubh)r}r(hXThe core clocks and module clocks used on the custom board library may vary based on the power requirements and external components used on the boards.rhjhhhhh}r(h]h]h]h]h]uhM.hhh]rhXThe core clocks and module clocks used on the custom board library may vary based on the power requirements and external components used on the boards.rr}r(hjhjubaubh)r}r(hX_clock.c: Defines functions and structures for configuring the clock and power modules. Update this file based on the data from clock tree tool and GEL file validation.rhjhhhhh}r(h]h]h]h]h]uhM2hhh]rhX_clock.c: Defines functions and structures for configuring the clock and power modules. Update this file based on the data from clock tree tool and GEL file validation.rr}r(hjhjubaubeubh)r}r(hUhj3hhhhh}r(h]h]h]h]rUddr-configurationrah]rhHauhM6hhh]r(h)r}r(hXDDR Configurationrhjhhhhh}r(h]h]h]h]h]uhM6hhh]rhXDDR Configurationrr}r(hjhjubaubh)r}r(hXsThe board library has the correct DDR initialization sequence to initialize the DDR memory on your board. You may need to make changes to the AC timings, hardware leveling, and DDR PHY configuration, some or all of which may be different than the TI supported platforms. GEL file can be used to verify the settings in CCS before modifying the source in the board library.rhjhhhhh}r(h]h]h]h]h]uhM7hhh]rhXsThe board library has the correct DDR initialization sequence to initialize the DDR memory on your board. You may need to make changes to the AC timings, hardware leveling, and DDR PHY configuration, some or all of which may be different than the TI supported platforms. GEL file can be used to verify the settings in CCS before modifying the source in the board library.rr}r(hjhjubaubh)r}r(hX_ddr.c: Defines functions and structures for configuring the DDR module. Update this file based on the DDR timing parameters specific to custom board.rhjhhhhh}r(h]h]h]h]h]uhM=hhh]rhX_ddr.c: Defines functions and structures for configuring the DDR module. Update this file based on the DDR timing parameters specific to custom board.rr}r(hjhjubaubeubh)r}r(hUhj3hhhhh}r(h]h]h]h]rUpll-configurationrah]rhVauhMAhhh]r(h)r}r(hXPLL Configurationrhjhhhhh}r(h]h]h]h]h]uhMAhhh]rhXPLL Configurationrr}r(hjhjubaubh)r}r(hXThe SOC board library in the PDK configures the SOC PLL and module clock settings to the nominal settings required to be used with the TI evaluation platform. If you want to use different clock settings due to power consideration, or if you are using a variant of the device that needs to be clocked differently, you can enter the PLL and clock settings in the board library. All of the PLL and module clock settings are consolidated in the following files:rhjhhhhh}r(h]h]h]h]h]uhMBhhh]rhXThe SOC board library in the PDK configures the SOC PLL and module clock settings to the nominal settings required to be used with the TI evaluation platform. If you want to use different clock settings due to power consideration, or if you are using a variant of the device that needs to be clocked differently, you can enter the PLL and clock settings in the board library. All of the PLL and module clock settings are consolidated in the following files:rr}r(hjhjubaubj)r}r(hUhjhhhjh}r(jX-h]h]h]h]h]uhMJhhh]r(j)r}r(hX.c: Contains calls related to all board-level initialization. refers to the evaluation platform (For example, evmam335x)hjhhhjh}r(h]h]h]h]h]uhNhhh]r h)r }r (hX.c: Contains calls related to all board-level initialization. refers to the evaluation platform (For example, evmam335x)r hjhhhhh}r (h]h]h]h]h]uhMJh]rhX.c: Contains calls related to all board-level initialization. refers to the evaluation platform (For example, evmam335x)rr}r(hj hj ubaubaubj)r}r(hXu_pll.c: Defines the Board_PLLInit() function that configures the dividers and multipliers for the clock tree. hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXt_pll.c: Defines the Board_PLLInit() function that configures the dividers and multipliers for the clock tree.rhjhhhhh}r(h]h]h]h]h]uhMLh]rhXt_pll.c: Defines the Board_PLLInit() function that configures the dividers and multipliers for the clock tree.rr}r(hjhjubaubaubeubeubh)r}r(hUhj3hhhhh}r (h]h]h]h]r!Uethernet-configurationr"ah]r#h@auhMPhhh]r$(h)r%}r&(hXEthernet Configurationr'hjhhhhh}r((h]h]h]h]h]uhMPhhh]r)hXEthernet Configurationr*r+}r,(hj'hj%ubaubh)r-}r.(hXOThe custom board may have external components (flash devices, Ethernet PHY, etc.) that are different from the components populated on the TI-supported EVM. These components and their support files need to be added to the pdk_xx_xx_xx_xx/packages/ti/board/src//device path and linked as part of the board library build.r/hjhhhhh}r0(h]h]h]h]h]uhMQhhh]r1hXOThe custom board may have external components (flash devices, Ethernet PHY, etc.) that are different from the components populated on the TI-supported EVM. These components and their support files need to be added to the pdk_xx_xx_xx_xx/packages/ti/board/src//device path and linked as part of the board library build.r2r3}r4(hj/hj-ubaubeubh)r5}r6(hUhj3hhhhh}r7(h]h]h]h]r8U io-instancesr9ah]r:hauhMYhhh]r;(h)r<}r=(hX IO Instancesr>hj5hhhhh}r?(h]h]h]h]h]uhMYhhh]r@hX IO InstancesrArB}rC(hj>hj<ubaubh)rD}rE(hXIf your custom board uses an IO instance different from the TI-supported board, the instance needs to be modified in the Pin Mux setup as well as in the board_cfg.h file in pdk_xx_xx_xx_xx/packages/ti/board/src//includerFhj5hhhhh}rG(h]h]h]h]h]uhMZhhh]rHhXIf your custom board uses an IO instance different from the TI-supported board, the instance needs to be modified in the Pin Mux setup as well as in the board_cfg.h file in pdk_xx_xx_xx_xx/packages/ti/board/src//includerIrJ}rK(hjFhjDubaubh)rL}rM(hUhj5hhhhh}rN(h]h]h]h]rOUboard-detectionrPah]rQhauhM`hhh]rR(h)rS}rT(hXBoard DetectionrUhjLhhhhh}rV(h]h]h]h]h]uhM`hhh]rWhXBoard DetectionrXrY}rZ(hjUhjSubaubcdocutils.nodes block_quote r[)r\}r](hUhjLhNhU block_quoter^h}r_(h]h]h]h]h]uhNhhh]r`j)ra}rb(hUh}rc(jX-h]h]h]h]h]uhj\h]rd(j)re}rf(hXFTI defined board detect mechanism using structure stored in I2C EEPROMrgh}rh(h]h]h]h]h]uhjah]rih)rj}rk(hjghjehhhhh}rl(h]h]h]h]h]uhMah]rmhXFTI defined board detect mechanism using structure stored in I2C EEPROMrnro}rp(hjghjjubaubahjubj)rq}rr(hXDBoard Lib APIs read and write Board ID to EEPROM on I2C address 0x50rsh}rt(h]h]h]h]h]uhjah]ruh)rv}rw(hjshjqhhhhh}rx(h]h]h]h]h]uhMbh]ryhXDBoard Lib APIs read and write Board ID to EEPROM on I2C address 0x50rzr{}r|(hjshjvubaubahjubj)r}}r~(hXSApplication boards, if available, will have their own EEPROM with board informationrh}r(h]h]h]h]h]uhjah]rh)r}r(hjhj}hhhhh}r(h]h]h]h]h]uhMch]rhXSApplication boards, if available, will have their own EEPROM with board informationrr}r(hjhjubaubahjubj)r}r(hXStructure typically defines: h}r(h]h]h]h]h]uhjah]rh)r}r(hXStructure typically defines:rhjhhhhh}r(h]h]h]h]h]uhMdh]rhXStructure typically defines:rr}r(hjhjubaubahjubehjubaubj()r}r(hXBoard ID (IDK vs GP EVM vs custom) Revision number (board revision to address board level issues) Serial Number (internal tracking) MAC ID (Custom MAC ID use)hjLhhhj+h}r(hhh]h]h]h]h]uhMmhhh]rhXBoard ID (IDK vs GP EVM vs custom) Revision number (board revision to address board level issues) Serial Number (internal tracking) MAC ID (Custom MAC ID use)rr}r(hUhjubaubj1)r}r(hUhjLhhhj4h}r(h]h]h]h]h]uhMlhhh]rj7)r}r(hUj:Khjhhhhh}r(h]h]h]h]h]uhKhhh]ubaubcdocutils.nodes note r)r}r(hXcBoard detection is TI defined mechanism to detect evaluation platform details. This needs to be removed/replicated from board based on customer board implementation. In case board detect mechanism is not used in custom board, check for the Board_getIDInfo() API calls and make necessary changes in the code to avoid dependencies on board detect mechanism.hjLhhhUnoterh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXcBoard detection is TI defined mechanism to detect evaluation platform details. This needs to be removed/replicated from board based on customer board implementation. In case board detect mechanism is not used in custom board, check for the Board_getIDInfo() API calls and make necessary changes in the code to avoid dependencies on board detect mechanism.rhjhhhhh}r(h]h]h]h]h]uhMnh]rhXcBoard detection is TI defined mechanism to detect evaluation platform details. This needs to be removed/replicated from board based on customer board implementation. In case board detect mechanism is not used in custom board, check for the Board_getIDInfo() API calls and make necessary changes in the code to avoid dependencies on board detect mechanism.rr}r(hjhjubaubaubeubh)r}r(hUhj5hhhhh}r(h]h]h]h]rUboard-flash-apisrah]rh auhMthhh]r(h)r}r(hXBoard Flash APIsrhjhhhhh}r(h]h]h]h]h]uhMthhh]rhXBoard Flash APIsrr}r(hjhjubaubh)r}r(hXBoard library includes a dedicated flash library to abstract the HW flash interface access using a standard set of APIs. In case custom board uses flash devices that are different from eval platform, update to board flash APIs is required. Check the board flash library available at /packages/ti/board/src/flash and make changes required for custom board as needed.rhjhhhhh}r(h]h]h]h]h]uhMuhhh]rhXBoard library includes a dedicated flash library to abstract the HW flash interface access using a standard set of APIs. In case custom board uses flash devices that are different from eval platform, update to board flash APIs is required. Check the board flash library available at /packages/ti/board/src/flash and make changes required for custom board as needed.rr}r(hjhjubaubeubeubeubh)r}r(hUhjhhhhh}r(h]h]h]h]rU platform-specific-configurationsrah]rhcauhM}hhh]r(h)r}r(hX Platform Specific Configurationsrhjhhhhh}r(h]h]h]h]h]uhM}hhh]rhX Platform Specific Configurationsrr}r(hjhjubaubh)r}r(hUhKhjhhhhh}r(h]rXj721erah]h]h]rUj721erah]uhMhhh]r(h)r}r(hXJ721Erhjhhhhh}r(h]h]h]h]h]uhMhhh]rhXJ721Err}r(hjhjubaubh)r}r(hUhjhhhhh}r(h]h]h]h]rUboard-file-namesrah]rhauhMhhh]r(h)r}r(hXBoard File Namesrhjhhhhh}r(h]h]h]h]h]uhMhhh]rhXBoard File Namesrr}r(hjhjubaubh)r}r(hX/Board library file names for J721E are different when compared with other platforms in processor SDK. This is to facilitate the easy migration of board library to custom platforms. Read the file name .c as board_init.c and _xxx.c/h as board_xxx.c/h in all the references in above sections.rhjhhhhh}r(h]h]h]h]h]uhMhhh]rhX/Board library file names for J721E are different when compared with other platforms in processor SDK. This is to facilitate the easy migration of board library to custom platforms. Read the file name .c as board_init.c and _xxx.c/h as board_xxx.c/h in all the references in above sections.rr}r(hjhjubaubeubh)r}r(hUhKhjhhhhh}r (h]r j^ah]h]h]r Uid3r ah]uhMhhh]r (h)r }r (hXPinmuxr hjhhhhh}r (h]h]h]h]h]uhMhhh]r hXPinmuxr r }r (hj hj ubaubh)r }r (hXFollow below steps to update pinmux configuration for custom board on J721E platform. Pinmux project files provided under j721e_evm board folder can be used as reference for pinmux configuration.r hjhhhhh}r (h]h]h]h]h]uhMhhh]r hXFollow below steps to update pinmux configuration for custom board on J721E platform. Pinmux project files provided under j721e_evm board folder can be used as reference for pinmux configuration.r r }r (hj hj ubaubj)r }r (hUhjhhhjh}r (jX*h]h]h]h]h]uhMhhh]r (j)r }r (hXDownload the pinmux files _pinmux.h and _pinmux_data.c generated by pinmux tool and copy them to custom board folder.hj hhhjh}r (h]h]h]h]h]uhNhhh]r h)r }r (hXDownload the pinmux files _pinmux.h and _pinmux_data.c generated by pinmux tool and copy them to custom board folder.r hj hhhhh}r (h]h]h]h]h]uhMh]r! hXDownload the pinmux files _pinmux.h and _pinmux_data.c generated by pinmux tool and copy them to custom board folder.r" r# }r$ (hj hj ubaubaubj)r% }r& (hXIOpen 'packages/ti/board/src/j721e_evm/_pinmux.h' and make below modifications. * Change #include "pinmux.h" to #include * Change #include "csl_types.h" to #include * Modify 'j721e_evm' in above step if a different name is used for custom board. hj hhhjh}r' (h]h]h]h]h]uhNhhh]r( (h)r) }r* (hX]Open 'packages/ti/board/src/j721e_evm/_pinmux.h' and make below modifications.r+ hj% hhhhh}r, (h]h]h]h]h]uhMh]r- hX]Open 'packages/ti/board/src/j721e_evm/_pinmux.h' and make below modifications.r. r/ }r0 (hj+ hj) ubaubj[)r1 }r2 (hUh}r3 (h]h]h]h]h]uhj% h]r4 j)r5 }r6 (hUh}r7 (jX*h]h]h]h]h]uhj1 h]r8 (j)r9 }r: (hXPChange #include "pinmux.h" to #include r; h}r< (h]h]h]h]h]uhj5 h]r= h)r> }r? (hj; hj9 hhhhh}r@ (h]h]h]h]h]uhMh]rA hXPChange #include "pinmux.h" to #include rB rC }rD (hj; hj> ubaubahjubj)rE }rF (hXChange #include "csl_types.h" to #include * Modify 'j721e_evm' in above step if a different name is used for custom board. h}rG (h]h]h]h]h]uhj5 h]rH h)rI }rJ (hXChange #include "csl_types.h" to #include * Modify 'j721e_evm' in above step if a different name is used for custom board.rK hjE hhhhh}rL (h]h]h]h]h]uhMh]rM hXChange #include "csl_types.h" to #include * Modify 'j721e_evm' in above step if a different name is used for custom board.rN rO }rP (hjK hjI ubaubahjubehjubahj^ubeubeubcdocutils.nodes tip rQ )rR }rS (hX_pinmux.h file contains the basic pin definition macros which will not change with every pin configuration change. This file generation and above step is one time configuration for a given pinmux tool version.hjhhhUtiprT h}rU (h]h]h]h]h]uhNhhh]rV h)rW }rX (hX_pinmux.h file contains the basic pin definition macros which will not change with every pin configuration change. This file generation and above step is one time configuration for a given pinmux tool version.rY hjR hhhhh}rZ (h]h]h]h]h]uhMh]r[ hX_pinmux.h file contains the basic pin definition macros which will not change with every pin configuration change. This file generation and above step is one time configuration for a given pinmux tool version.r\ r] }r^ (hjY hjW ubaubaubj)r_ }r` (hUhjhhhjh}ra (jX*h]h]h]h]h]uhMhhh]rb j)rc }rd (hXModify the Board_pinmuxConfig() function in 'packages/ti/board/src/j721e_evm/board_pinmux.c' file to remove pinmux configurations specific to EVM addon boards. Look for the comment "Pinmux for Application cards" in the function Board_pinmuxConfig(). All the code after this comment till end of the function and 'i2cPinmux' variable can be removed. Board_pinmuxConfig function shall look as below after the update hj_ hhhjh}re (h]h]h]h]h]uhNhhh]rf h)rg }rh (hXModify the Board_pinmuxConfig() function in 'packages/ti/board/src/j721e_evm/board_pinmux.c' file to remove pinmux configurations specific to EVM addon boards. Look for the comment "Pinmux for Application cards" in the function Board_pinmuxConfig(). All the code after this comment till end of the function and 'i2cPinmux' variable can be removed. Board_pinmuxConfig function shall look as below after the updateri hjc hhhhh}rj (h]h]h]h]h]uhMh]rk hXModify the Board_pinmuxConfig() function in 'packages/ti/board/src/j721e_evm/board_pinmux.c' file to remove pinmux configurations specific to EVM addon boards. Look for the comment "Pinmux for Application cards" in the function Board_pinmuxConfig(). All the code after this comment till end of the function and 'i2cPinmux' variable can be removed. Board_pinmuxConfig function shall look as below after the updaterl rm }rn (hji hjg ubaubaubaubj()ro }rp (hX=Board_STATUS Board_pinmuxConfig (void) { Board_STATUS status = BOARD_SOK; /* Pinmux for baseboard */ Board_pinmuxUpdate(gJ721E_MainPinmuxData, BOARD_SOC_DOMAIN_MAIN); Board_pinmuxUpdate(gJ721E_WkupPinmuxData, BOARD_SOC_DOMAIN_WKUP); return status; }hjhhhj+h}rq (hhh]h]h]h]h]uhMhhh]rr hX=Board_STATUS Board_pinmuxConfig (void) { Board_STATUS status = BOARD_SOK; /* Pinmux for baseboard */ Board_pinmuxUpdate(gJ721E_MainPinmuxData, BOARD_SOC_DOMAIN_MAIN); Board_pinmuxUpdate(gJ721E_WkupPinmuxData, BOARD_SOC_DOMAIN_WKUP); return status; }rs rt }ru (hUhjo ubaubj1)rv }rw (hUhjhhhj4h}rx (h]h]h]h]h]uhMhhh]ry j7)rz }r{ (hUj:Khjv hhhhh}r| (h]h]h]h]h]uhKhhh]ubaubj)r} }r~ (hUhjhhhjh}r (jX*h]h]h]h]h]uhMhhh]r j)r }r (hX9Rebuild the board library with new pinmux configurations hj} hhhjh}r (h]h]h]h]h]uhNhhh]r h)r }r (hX8Rebuild the board library with new pinmux configurationsr hj hhhhh}r (h]h]h]h]h]uhMh]r hX8Rebuild the board library with new pinmux configurationsr r }r (hj hj ubaubaubaubh)r }r (hX[Follow additional steps (optional) below to clean-up the TI EVM addon board specific files.r hjhhhhh}r (h]h]h]h]h]uhMhhh]r hX[Follow additional steps (optional) below to clean-up the TI EVM addon board specific files.r r }r (hj hj ubaubj)r }r (hUhjhhhjh}r (jX*h]h]h]h]h]uhMhhh]r j)r }r (hXRemove below files from SRCS_COMMON build configuration in 'packages/ti/board/src/j721e_evm/src_files_j721e_evm.mk' and remove the files from the board folder 'packages/ti/board/src/j721e_evm' * J721E_pinmux_data_gesi.c * J721E_pinmux_data_gesi_cpsw9g.c * J721E_pinmux_data_info.c hj hhhjh}r (h]h]h]h]h]uhNhhh]r (h)r }r (hXRemove below files from SRCS_COMMON build configuration in 'packages/ti/board/src/j721e_evm/src_files_j721e_evm.mk' and remove the files from the board folder 'packages/ti/board/src/j721e_evm'r hj hhhhh}r (h]h]h]h]h]uhMh]r hXRemove below files from SRCS_COMMON build configuration in 'packages/ti/board/src/j721e_evm/src_files_j721e_evm.mk' and remove the files from the board folder 'packages/ti/board/src/j721e_evm'r r }r (hj hj ubaubj[)r }r (hUh}r (h]h]h]h]h]uhj h]r j)r }r (hUh}r (jX*h]h]h]h]h]uhj h]r (j)r }r (hXJ721E_pinmux_data_gesi.cr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXJ721E_pinmux_data_gesi.cr r }r (hj hj ubaubahjubj)r }r (hXJ721E_pinmux_data_gesi_cpsw9g.cr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXJ721E_pinmux_data_gesi_cpsw9g.cr r }r (hj hj ubaubahjubj)r }r (hXJ721E_pinmux_data_info.c h}r (h]h]h]h]h]uhj h]r h)r }r (hXJ721E_pinmux_data_info.cr hj hhhhh}r (h]h]h]h]h]uhMh]r hXJ721E_pinmux_data_info.cr r }r (hj hj ubaubahjubehjubahj^ubeubaubeubh)r }r (hUhKhjhhhhh}r (h]r Xserdes configurationr ah]h]h]r Userdes-configurationr ah]uhMhhh]r (h)r }r (hXSerDes Configurationr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXSerDes Configurationr r }r (hj hj ubaubh)r }r (hX/J721E board library includes SerDes module which configures the SerDes interface internal pinmux to route PCIe, USB and SGMII to different interfaces on the board. If custom board uses similar design, SerDes configurations (board_serdes_cfg.c) can be reused. Otherwise this configuration can be ignored.r hj hhhhh}r (h]h]h]h]h]uhMhhh]r hX/J721E board library includes SerDes module which configures the SerDes interface internal pinmux to route PCIe, USB and SGMII to different interfaces on the board. If custom board uses similar design, SerDes configurations (board_serdes_cfg.c) can be reused. Otherwise this configuration can be ignored.r r }r (hj hj ubaubeubeubh)r }r (hUhjhhhhh}r (h]h]h]h]r Uam65xxr ah]r h~auhMhhh]r (h)r }r (hXAM65xxr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXAM65xxr r }r (hj hj ubaubh)r }r (hUhKhj hhhhh}r (h]r Xpinmuxr ah]h]h]r Uid4r ah]uhMhhh]r (h)r }r (hXPinmuxr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXPinmuxr r }r (hj hj ubaubh)r }r (hXWFollow below steps to update pinmux configuration for custom board on AM65xx platforms.r hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXWFollow below steps to update pinmux configuration for custom board on AM65xx platforms.r r }r (hj hj ubaubj[)r }r (hUhj hNhj^h}r (h]h]h]h]h]uhNhhh]r j)r }r (hUh}r (jX-h]h]h]h]h]uhj h]r (j)r }r (hXmDownload the pinmux files _pinmux.h and _pinmux_data.c generated by pinmux toolr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXmDownload the pinmux files _pinmux.h and _pinmux_data.c generated by pinmux toolr! r" }r# (hj hj ubaubahjubj)r$ }r% (hXYCopy the files to custom board folder and rename them to match with board name if needed.r& h}r' (h]h]h]h]h]uhj h]r( h)r) }r* (hj& hj$ hhhhh}r+ (h]h]h]h]h]uhMh]r, hXYCopy the files to custom board folder and rename them to match with board name if needed.r- r. }r/ (hj& hj) ubaubahjubj)r0 }r1 (hX9Rebuild the board library with new pinmux configurations h}r2 (h]h]h]h]h]uhj h]r3 h)r4 }r5 (hX8Rebuild the board library with new pinmux configurationsr6 hj0 hhhhh}r7 (h]h]h]h]h]uhMh]r8 hX8Rebuild the board library with new pinmux configurationsr9 r: }r; (hj6 hj4 ubaubahjubehjubaubeubh)r< }r= (hUhKhj hhhhh}r> (h]r? j ah]h]h]r@ Uid5rA ah]uhMhhh]rB (h)rC }rD (hXSerDes ConfigurationrE hj< hhhhh}rF (h]h]h]h]h]uhMhhh]rG hXSerDes ConfigurationrH rI }rJ (hjE hjC ubaubh)rK }rL (hX AM65xx board library includes SerDes module which configures the SerDes interface internal pinmux to route PCIe, USB and SGMII interfaces to different personality cards. If custom board uses similar design, SerDes configurations can be reused. Otherwise this configuration can be ignored.rM hj< hhhhh}rN (h]h]h]h]h]uhMhhh]rO hX AM65xx board library includes SerDes module which configures the SerDes interface internal pinmux to route PCIe, USB and SGMII interfaces to different personality cards. If custom board uses similar design, SerDes configurations can be reused. Otherwise this configuration can be ignored.rP rQ }rR (hjM hjK ubaubeubeubh)rS }rT (hUhjhhhhh}rU (h]h]h]h]rV Uam57xxrW ah]rX h|auhMhhh]rY (h)rZ }r[ (hXAM57xxr\ hjS hhhhh}r] (h]h]h]h]h]uhMhhh]r^ hXAM57xxr_ r` }ra (hj\ hjZ ubaubh)rb }rc (hUhKhjS hhhhh}rd (h]re Xpinmuxrf ah]h]h]rg Uid6rh ah]uhMhhh]ri (h)rj }rk (hXPinmuxrl hjb hhhhh}rm (h]h]h]h]h]uhMhhh]rn hXPinmuxro rp }rq (hjl hjj ubaubh)rr }rs (hXsPinmux tool output for AM57xx platform includes IO delay information. Below are the files generated by pinmux tool:rt hjb hhhhh}ru (h]h]h]h]h]uhMhhh]rv hXsPinmux tool output for AM57xx platform includes IO delay information. Below are the files generated by pinmux tool:rw rx }ry (hjt hjr ubaubj[)rz }r{ (hUhjb hNhj^h}r| (h]h]h]h]h]uhNhhh]r} j)r~ }r (hUh}r (jX-h]h]h]h]h]uhjz h]r (j)r }r (hXaboardPadDelay.h: Includes the prototypes of all structures and functions used by pinmux functionsh}r (h]h]h]h]h]uhj~ h]r h)r }r (hXaboardPadDelay.h: Includes the prototypes of all structures and functions used by pinmux functionsr hj hhhhh}r (h]h]h]h]h]uhMh]r hXaboardPadDelay.h: Includes the prototypes of all structures and functions used by pinmux functionsr r }r (hj hj ubaubahjubj)r }r (hXboardPadDelayInit.c: Includes the pinmux pad config data for all device pads along with values used to compute Manual/Virtual mode values.This data is used to configure pinmux during board initialization.h}r (h]h]h]h]h]uhj~ h]r h)r }r (hXboardPadDelayInit.c: Includes the pinmux pad config data for all device pads along with values used to compute Manual/Virtual mode values.This data is used to configure pinmux during board initialization.r hj hhhhh}r (h]h]h]h]h]uhMh]r hXboardPadDelayInit.c: Includes the pinmux pad config data for all device pads along with values used to compute Manual/Virtual mode values.This data is used to configure pinmux during board initialization.r r }r (hj hj ubaubahjubj)r }r (hXboardPadDelayTune.h: This file includes the compile time macros used to select the Timing modes to be configured for modules during board Initialization.h}r (h]h]h]h]h]uhj~ h]r h)r }r (hXboardPadDelayTune.h: This file includes the compile time macros used to select the Timing modes to be configured for modules during board Initialization.r hj hhhhh}r (h]h]h]h]h]uhMh]r hXboardPadDelayTune.h: This file includes the compile time macros used to select the Timing modes to be configured for modules during board Initialization.r r }r (hj hj ubaubahjubj)r }r (hXmboardPadDelayDevice.c: This file includes the pinmuxdata for runtime pinmux configuration of the MMC module. h}r (h]h]h]h]h]uhj~ h]r h)r }r (hXlboardPadDelayDevice.c: This file includes the pinmuxdata for runtime pinmux configuration of the MMC module.r hj hhhhh}r (h]h]h]h]h]uhMh]r hXlboardPadDelayDevice.c: This file includes the pinmuxdata for runtime pinmux configuration of the MMC module.r r }r (hj hj ubaubahjubehjubaubh)r }r (hXCopy the above listed files generated by pinmux tool to custom board folder and rebuild the board library with updated pinmux configurations.r hjb hhhhh}r (h]h]h]h]h]uhMhhh]r hXCopy the above listed files generated by pinmux tool to custom board folder and rebuild the board library with updated pinmux configurations.r r }r (hj hj ubaubeubeubh)r }r (hUhjhhhhh}r (h]h]h]h]r U am335x-am437xr ah]r hauhMhhh]r (h)r }r (hX AM335x/AM437xr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hX AM335x/AM437xr r }r (hj hj ubaubh)r }r (hUhKhj hhhhh}r (h]r Xpinmuxr ah]h]h]r Uid7r ah]uhMhhh]r (h)r }r (hXPinmuxr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXPinmuxr r }r (hj hj ubaubh)r }r (hX^Follow below steps to update pinmux configuration for custom board on AM335x/AM437x platforms.r hj hhhhh}r (h]h]h]h]h]uhMhhh]r hX^Follow below steps to update pinmux configuration for custom board on AM335x/AM437x platforms.r r }r (hj hj ubaubj[)r }r (hUhj hNhj^h}r (h]h]h]h]h]uhNhhh]r j)r }r (hUh}r (jX-h]h]h]h]h]uhj h]r (j)r }r (hXlDownload the pinmux files pinmux.h and _pinmux_data.c generated by pinmux toolr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXlDownload the pinmux files pinmux.h and _pinmux_data.c generated by pinmux toolr r }r (hj hj ubaubahjubj)r }r (hXAt the bottom of pinmux.h change extern pinmuxBoardCfg_t gPinmuxData[]; to extern pinmuxBoardCfg_t gPinmuxData[];r h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXAt the bottom of pinmux.h change extern pinmuxBoardCfg_t gPinmuxData[]; to extern pinmuxBoardCfg_t gPinmuxData[];r r }r (hj hj ubaubahjubj)r }r (hXXChange _pinmux_data.c to _pinmux_data.cr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXXChange _pinmux_data.c to _pinmux_data.cr r }r (hj hj ubaubahjubj)r }r (hXChange gPinmuxData to gPinmuxData at the end of the file in _pinmux_data.cr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXChange gPinmuxData to gPinmuxData at the end of the file in _pinmux_data.cr r }r (hj hj ubaubahjubj)r }r (hXThe last step is to invoke the PinMuxModuleConfig in the file _pinmux.c that is found at \packages\ti\board\src\. For Example to add three instances of UART in the pinmux setup, users can add : h}r (h]h]h]h]h]uhj h]r h)r }r (hXThe last step is to invoke the PinMuxModuleConfig in the file _pinmux.c that is found at \packages\ti\board\src\. For Example to add three instances of UART in the pinmux setup, users can add :hj hhhhh}r (h]h]h]h]h]uhMh]r hXThe last step is to invoke the PinMuxModuleConfig in the file _pinmux.c that is found at packagestiboardsrc. For Example to add three instances of UART in the pinmux setup, users can add :r! r" }r# (hXThe last step is to invoke the PinMuxModuleConfig in the file _pinmux.c that is found at \packages\ti\board\src\. For Example to add three instances of UART in the pinmux setup, users can add :hj ubaubahjubehjubaubj()r$ }r% (hX/* UART */ status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 0U, NULL); status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 1U, NULL); status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 4U, NULL);hj hhhj+h}r& (hhh]h]h]h]h]uhMhhh]r' hX/* UART */ status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 0U, NULL); status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 1U, NULL); status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 4U, NULL);r( r) }r* (hUhj$ ubaubj1)r+ }r, (hUhj hhhj4h}r- (h]h]h]h]h]uhMhhh]r. (j7)r/ }r0 (hX:- Rebuild the board library with new pinmux configurationsr1 j:Khj+ hhhhh}r2 (h]h]h]h]h]uhMhhh]r3 hX:- Rebuild the board library with new pinmux configurationsr4 r5 }r6 (hj1 hj/ ubaubj7)r7 }r8 (hUj:Khj+ hhhhh}r9 (h]h]h]h]h]uhKhhh]ubeubeubeubh)r: }r; (hUhjhhhhh}r< (h]h]h]h]r= Uk2gr> ah]r? hauhMhhh]r@ (h)rA }rB (hXK2GrC hj: hhhhh}rD (h]h]h]h]h]uhMhhh]rE hXK2GrF rG }rH (hjC hjA ubaubh)rI }rJ (hUhKhj: hhhhh}rK (h]rL XpinmuxrM ah]h]h]rN Uid8rO ah]uhMhhh]rP (h)rQ }rR (hXPinmuxrS hjI hhhhh}rT (h]h]h]h]h]uhMhhh]rU hXPinmuxrV rW }rX (hjS hjQ ubaubcdocutils.nodes definition_list rY )rZ }r[ (hUhjI hNhUdefinition_listr\ h}r] (h]h]h]h]h]uhNhhh]r^ cdocutils.nodes definition_list_item r_ )r` }ra (hX\Follow below steps to update pinmux configuration for custom board on K2G platforms. - Download the pinmux files pinmux.h and _pinmux_data.c generated by pinmux tool - Copy the files to custom board folder and rename them to match with board name if needed. - Rebuild the board library with new pinmux configurations hjZ hhhUdefinition_list_itemrb h}rc (h]h]h]h]h]uhM h]rd (cdocutils.nodes term re )rf }rg (hXTFollow below steps to update pinmux configuration for custom board on K2G platforms.rh hj` hhhUtermri h}rj (h]h]h]h]h]uhM h]rk hXTFollow below steps to update pinmux configuration for custom board on K2G platforms.rl rm }rn (hjh hjf ubaubcdocutils.nodes definition ro )rp }rq (hUh}rr (h]h]h]h]h]uhj` h]rs j)rt }ru (hUh}rv (jX-h]h]h]h]h]uhjp h]rw (j)rx }ry (hXlDownload the pinmux files pinmux.h and _pinmux_data.c generated by pinmux toolrz h}r{ (h]h]h]h]h]uhjt h]r| h)r} }r~ (hjz hjx hhhhh}r (h]h]h]h]h]uhMh]r hXlDownload the pinmux files pinmux.h and _pinmux_data.c generated by pinmux toolr r }r (hjz hj} ubaubahjubj)r }r (hXYCopy the files to custom board folder and rename them to match with board name if needed.r h}r (h]h]h]h]h]uhjt h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXYCopy the files to custom board folder and rename them to match with board name if needed.r r }r (hj hj ubaubahjubj)r }r (hX:Rebuild the board library with new pinmux configurations h}r (h]h]h]h]h]uhjt h]r h)r }r (hX8Rebuild the board library with new pinmux configurationsr hj hhhhh}r (h]h]h]h]h]uhM h]r hX8Rebuild the board library with new pinmux configurationsr r }r (hj hj ubaubahjubehjubahU definitionr ubeubaubeubeubeubh)r }r (hUhjhhhhh}r (h]h]h]h]r Ucustom-board-validationr ah]r hvauhM hhh]r (h)r }r (hXCustom Board Validationr hj hhhhh}r (h]h]h]h]h]uhM hhh]r hXCustom Board Validationr r }r (hj hj ubaubh)r }r (hXValidate the basic functionality of custom board using hardware diagnostics before bringing-up RTOS applications or Linux. Hardware diagnostics help verify the functionality of on-board peripherals and external interfaces of each board.r hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXValidate the basic functionality of custom board using hardware diagnostics before bringing-up RTOS applications or Linux. Hardware diagnostics help verify the functionality of on-board peripherals and external interfaces of each board.r r }r (hj hj ubaubh)r }r (hXRefer `Board Diagnostics `_ section for more details on the diagnostic tests supported as part of processor SDK.hj hhhhh}r (h]h]h]h]h]uhMhhh]r (hXRefer r r }r (hXRefer hj ubj)r }r (hX3`Board Diagnostics `_h}r (UnameXBoard DiagnosticsjXindex_board.html#diagnosticsr h]h]h]h]h]uhj h]r hXBoard Diagnosticsr r }r (hUhj ubahj ubjW)r }r (hX hKhj hjZh}r (Urefurij h]r Uboard-diagnosticsr ah]h]h]h]r hauh]ubhXU section for more details on the diagnostic tests supported as part of processor SDK.r r }r (hXU section for more details on the diagnostic tests supported as part of processor SDK.hj ubeubh)r }r (hXQBelow are the recommended diagnostic tests which can be validated on custom boardr hj hhhhh}r (h]h]h]h]h]uhMhhh]r hXQBelow are the recommended diagnostic tests which can be validated on custom boardr r }r (hj hj ubaubj[)r }r (hUhj hNhj^h}r (h]h]h]h]h]uhNhhh]r j)r }r (hUh}r (jX-h]h]h]h]h]uhj h]r (j)r }r (hXXExternal memory (DDR): DDR timing and leveling setting can be checked out using mem_testr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXXExternal memory (DDR): DDR timing and leveling setting can be checked out using mem_testr r }r (hj hj ubaubahjubj)r }r (hX(Debug UART: Debug UART pin functionalityr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hX(Debug UART: Debug UART pin functionalityr r }r (hj hj ubaubahjubj)r }r (hXNBoot Media: Validate functionality of SD/MMC, OSPIor any other boot interfacesr h}r (h]h]h]h]h]uhj h]r h)r }r (hj hj hhhhh}r (h]h]h]h]h]uhMh]r hXNBoot Media: Validate functionality of SD/MMC, OSPIor any other boot interfacesr r }r (hj hj ubaubahjubj)r }r (hXwBoard ID/EEPROM test: Recommend checking out/writing ID on personality EEPROM. This also checkout I2C pin functionalityh}r (h]h]h]h]h]uhj h]r h)r }r (hXwBoard ID/EEPROM test: Recommend checking out/writing ID on personality EEPROM. This also checkout I2C pin functionalityr hj hhhhh}r (h]h]h]h]h]uhMh]r hXwBoard ID/EEPROM test: Recommend checking out/writing ID on personality EEPROM. This also checkout I2C pin functionalityr r }r (hj hj ubaubahjubj)r }r (hXEthernet PHY: Ethernet diagnostics tests read PHY configuration over MDIO and check for Link up status. Good first step before bringing up any network stack h}r (h]h]h]h]h]uhj h]r h)r }r (hXEthernet PHY: Ethernet diagnostics tests read PHY configuration over MDIO and check for Link up status. Good first step before bringing up any network stackr hj hhhhh}r (h]h]h]h]h]uhMh]r hXEthernet PHY: Ethernet diagnostics tests read PHY configuration over MDIO and check for Link up status. Good first step before bringing up any network stackr r }r (hj hj ubaubahjubehjubaubeubh)r }r (hUhjhhhhh}r (h]h]h]h]r U'creating-board-library-with-custom-namer ah]r hauhM!hhh]r (h)r }r (hX'Creating Board Library with Custom Namer! hj hhhhh}r" (h]h]h]h]h]uhM!hhh]r# hX'Creating Board Library with Custom Namer$ r% }r& (hj! hj ubaubh)r' }r( (hX9This section describes how to create a board library with custom name using AM572x as an example. Due to dependencies on the starterware, AM335x/AM437x board library creation is different and is described in the `section for AM335x/AM437x `__.hj hhhhh}r) (h]h]h]h]h]uhM#hhh]r* (hXThis section describes how to create a board library with custom name using AM572x as an example. Due to dependencies on the starterware, AM335x/AM437x board library creation is different and is described in the r+ r, }r- (hXThis section describes how to create a board library with custom name using AM572x as an example. Due to dependencies on the starterware, AM335x/AM437x board library creation is different and is described in the hj' ubj)r. }r/ (hXd`section for AM335x/AM437x `__h}r0 (UnameXsection for AM335x/AM437xjXDindex_board.html#creating-custom-board-library-for-am335x-and-am437xh]h]h]h]h]uhj' h]r1 hXsection for AM335x/AM437xr2 r3 }r4 (hUhj. ubahj ubhX.r5 }r6 (hX.hj' ubeubh)r7 }r8 (hXAs mentioned in section `Board Configurations `__, adding custom board library can follow one of two approaches. This section provides detailed instructions for the second approach - adding a custom board to PDK build.hj hhhhh}r9 (h]h]h]h]h]uhM(hhh]r: (hXAs mentioned in section r; r< }r= (hXAs mentioned in section hj7 ubj)r> }r? (hX@`Board Configurations `__h}r@ (UnameXBoard ConfigurationsjX%index_board.html#board-configurationsh]h]h]h]h]uhj7 h]rA hXBoard ConfigurationsrB rC }rD (hUhj> ubahj ubhX, adding custom board library can follow one of two approaches. This section provides detailed instructions for the second approach - adding a custom board to PDK build.rE rF }rG (hX, adding custom board library can follow one of two approaches. This section provides detailed instructions for the second approach - adding a custom board to PDK build.hj7 ubeubh)rH }rI (hUhj hhhhh}rJ (h]h]h]h]rK U1instructions-to-add-custom-board-to-the-pdk-buildrL ah]rM huauhM-hhh]rN (h)rO }rP (hX1Instructions to add custom Board to the PDK buildrQ hjH hhhhh}rR (h]h]h]h]h]uhM-hhh]rS hX1Instructions to add custom Board to the PDK buildrT rU }rV (hjQ hjO ubaubh)rW }rX (hXFollow below steps for creating board library with custom name. AM572x platform is used as reference in the examples wherever needed.rY hjH hhhhh}rZ (h]h]h]h]h]uhM.hhh]r[ hXFollow below steps for creating board library with custom name. AM572x platform is used as reference in the examples wherever needed.r\ r] }r^ (hjY hjW ubaubh)r_ }r` (hX;**Step 1: Creating new directory for custom board library**ra hjH hhhhh}rb (h]h]h]h]h]uhM1hhh]rc jw)rd }re (hja h}rf (h]h]h]h]h]uhj_ h]rg hX7Step 1: Creating new directory for custom board libraryrh ri }rj (hUhjd ubahjubaubh)rk }rl (hXIn /packages/ti/board/src, create new directory myCustomBoard and copy files from existing board library package which closely matches your custom board design.rm hjH hhhhh}rn (h]h]h]h]h]uhM3hhh]ro hXIn /packages/ti/board/src, create new directory myCustomBoard and copy files from existing board library package which closely matches your custom board design.rp rq }rr (hjm hjk ubaubh)rs }rt (hXF**Step 2: Updating names and makefile inside the customBoard package**ru hjH hhhhh}rv (h]h]h]h]h]uhM7hhh]rw jw)rx }ry (hju h}rz (h]h]h]h]h]uhjs h]r{ hXBStep 2: Updating names and makefile inside the customBoard packager| r} }r~ (hUhjx ubahjubaubh)r }r (hXJIn /packages/ti/board/src/myCustomBoard, rename file src_files_.mk to src_files_myCustomBoard.mk. This file will need a bit of work depending on what elements of board you need for your platform. At a minimum, modify SRCDIR and INCDIR to have correct paths to the newly created directory in previous step:r hjH hhhhh}r (h]h]h]h]h]uhM9hhh]r hXJIn /packages/ti/board/src/myCustomBoard, rename file src_files_.mk to src_files_myCustomBoard.mk. This file will need a bit of work depending on what elements of board you need for your platform. At a minimum, modify SRCDIR and INCDIR to have correct paths to the newly created directory in previous step:r r }r (hj hj ubaubj()r }r (hXSRCDIR += src/myCustomBoard src/myCustomBoard/device src/myCustomBoard/include INCDIR += src/myCustomBoard src/myCustomBoard/device src/myCustomBoard/includehjH hhhj+h}r (hhh]h]h]h]h]uhMFhhh]r hXSRCDIR += src/myCustomBoard src/myCustomBoard/device src/myCustomBoard/include INCDIR += src/myCustomBoard src/myCustomBoard/device src/myCustomBoard/includer r }r (hUhj ubaubh)r }r (hX]**Step 3: Adding MACRO based inclusion of updated board_cfg.h corresponding to custom Board**r hjH hhhhh}r (h]h]h]h]h]uhMDhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hXYStep 3: Adding MACRO based inclusion of updated board_cfg.h corresponding to custom Boardr r }r (hUhj ubahjubaubh)r }r (hXIn packages/ti/board/board_cfg.h, add the lines pointing to board_cfg.h file in your customBoard package so that updated peripheral instances and board specific defines can be picked upr hjH hhhhh}r (h]h]h]h]h]uhMGhhh]r hXIn packages/ti/board/board_cfg.h, add the lines pointing to board_cfg.h file in your customBoard package so that updated peripheral instances and board specific defines can be picked upr r }r (hj hj ubaubj()r }r (hX\#if defined (myCustomBoard) #include #endifhjH hhhj+h}r (hhh]h]h]h]h]uhMRhhh]r hX\#if defined (myCustomBoard) #include #endifr r }r (hUhj ubaubh)r }r (hX\**Step 4: Update top level board package makefile to include build for customBoard library**r hjH hhhhh}r (h]h]h]h]h]uhMQhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hXXStep 4: Update top level board package makefile to include build for customBoard libraryr r }r (hUhj ubahjubaubh)r }r (hXModify makefile packages/ti/board/build/makefile.mk which includes all relevant makefiles for low level driver(LLD), source files relevant to board and the common board.c file.r hjH hhhhh}r (h]h]h]h]h]uhMThhh]r hXModify makefile packages/ti/board/build/makefile.mk which includes all relevant makefiles for low level driver(LLD), source files relevant to board and the common board.c file.r r }r (hj hj ubaubj)r }r (hUhjH hhhjh}r (jX-h]h]h]h]h]uhMXhhh]r j)r }r (hXZAdd customBoard build for board.c and boardStub.c (notice the newly added myCustomBoard): hj hhhjh}r (h]h]h]h]h]uhNhhh]r h)r }r (hXYAdd customBoard build for board.c and boardStub.c (notice the newly added myCustomBoard):r hj hhhhh}r (h]h]h]h]h]uhMXh]r hXYAdd customBoard build for board.c and boardStub.c (notice the newly added myCustomBoard):r r }r (hj hj ubaubaubaubj()r }r (hXifeq ($(BOARD),$(filter $(BOARD),evmAM335x icev2AM335x skAM335x bbbAM335x evmAM437x idkAM437x skAM437x myCustomBoard evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L evmK2G iceK2G evmC6678 evmC6657)) # Common source files across all platforms and cores SRCS_COMMON += board.c endif ifeq ($(BOARD),$(filter $(BOARD),evmAM335x icev2AM335x iceAMIC110 skAM335x bbbAM335x evmAM437x idkAM437x skAM437x myCustomBoard evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L iceK2G evmC6678 evmC6657 evmOMAPL137 lcdkOMAPL138 idkAM574x evmDRA72x evmDRA75x evmDRA78x evmTDAxx j721e_sim j721e_qt j7200_evm tpr12_evm)) # Board stub function enabled for all the boards except evmK2G SRCS_COMMON += boardStub.c endifhjH hhhj+h}r (hhh]h]h]h]h]uhMbhhh]r hXifeq ($(BOARD),$(filter $(BOARD),evmAM335x icev2AM335x skAM335x bbbAM335x evmAM437x idkAM437x skAM437x myCustomBoard evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L evmK2G iceK2G evmC6678 evmC6657)) # Common source files across all platforms and cores SRCS_COMMON += board.c endif ifeq ($(BOARD),$(filter $(BOARD),evmAM335x icev2AM335x iceAMIC110 skAM335x bbbAM335x evmAM437x idkAM437x skAM437x myCustomBoard evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L iceK2G evmC6678 evmC6657 evmOMAPL137 lcdkOMAPL138 idkAM574x evmDRA72x evmDRA75x evmDRA78x evmTDAxx j721e_sim j721e_qt j7200_evm tpr12_evm)) # Board stub function enabled for all the boards except evmK2G SRCS_COMMON += boardStub.c endifr r }r (hUhj ubaubj)r }r (hUhjH hhhjh}r (jX-h]h]h]h]h]uhMhhhh]r j)r }r (hXDAdd customBoard build for board library source files and LLD files: hj hhhjh}r (h]h]h]h]h]uhNhhh]r h)r }r (hXCAdd customBoard build for board library source files and LLD files:r hj hhhhh}r (h]h]h]h]h]uhMhh]r hXCAdd customBoard build for board library source files and LLD files:r r }r (hj hj ubaubaubaubj()r }r (hXifeq ($(BOARD),$(filter $(BOARD), myCustomBoard evmAM572x idkAM571x idkAM572x)) include $(PDK_BOARD_COMP_PATH)/src/$(BOARD)/src_files_$(BOARD).mk include $(PDK_BOARD_COMP_PATH)/src/src_files_lld.mk endifhjH hhhj+h}r (hhh]h]h]h]h]uhMqhhh]r hXifeq ($(BOARD),$(filter $(BOARD), myCustomBoard evmAM572x idkAM571x idkAM572x)) include $(PDK_BOARD_COMP_PATH)/src/$(BOARD)/src_files_$(BOARD).mk include $(PDK_BOARD_COMP_PATH)/src/src_files_lld.mk endifr r }r (hUhj ubaubh)r }r (hX#**Step 5: Update Global makerules**r hjH hhhhh}r (h]h]h]h]h]uhMqhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hXStep 5: Update Global makerulesr r }r (hUhj ubahjubaubh)r }r (hXMakefile packages/ti/build/makerules/build_config.mk defines the global CFLAGS used to compile different PDK components. Add the following line in the BOARD specific configurations:r hjH hhhhh}r (h]h]h]h]h]uhMshhh]r hXMakefile packages/ti/build/makerules/build_config.mk defines the global CFLAGS used to compile different PDK components. Add the following line in the BOARD specific configurations:r r }r (hj hj ubaubj()r }r (hXICFLAGS_GLOBAL_myCustomBoard = -DSOC_AM572x -DmyCustomBoard=myCustomBoardhjH hhhj+h}r (hhh]h]h]h]h]uhM~hhh]r hXICFLAGS_GLOBAL_myCustomBoard = -DSOC_AM572x -DmyCustomBoard=myCustomBoardr r }r (hUhj ubaubh)r }r (hXThe SOC_AM572x macro ensures that the CSL applicable to this SOC will be included in the build. Use the SoC name that corresponds to the platform of your custom board.r hjH hhhhh}r (h]h]h]h]h]uhM{hhh]r hXThe SOC_AM572x macro ensures that the CSL applicable to this SOC will be included in the build. Use the SoC name that corresponds to the platform of your custom board.r r }r (hj hj ubaubh)r }r (hX/**Optional step to update RTSC platform definition** If you have a custom RTSC platform definition for your custom board that updates the memory and platform configuration using RTSC Tool then you need to update the platform.mk file that associates the RTSC platform with the corresponding board libraryhjH hhhhh}r (h]h]h]h]h]uhMhhh]r (jw)r }r (hX4**Optional step to update RTSC platform definition**h}r (h]h]h]h]h]uhj h]r hX0Optional step to update RTSC platform definitionr r }r (hUhj ubahjubhX If you have a custom RTSC platform definition for your custom board that updates the memory and platform configuration using RTSC Tool then you need to update the platform.mk file that associates the RTSC platform with the corresponding board libraryr r }r (hX If you have a custom RTSC platform definition for your custom board that updates the memory and platform configuration using RTSC Tool then you need to update the platform.mk file that associates the RTSC platform with the corresponding board libraryhj ubeubh)r }r (hXDIn packages/ti/build/makerules/platform.mk, add the following lines:r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hXDIn packages/ti/build/makerules/platform.mk, add the following lines:r! r" }r# (hj hj ubaubj()r$ }r% (hX]ifeq ($(BOARD),$(filter $(BOARD), evmAM572x)) PLATFORM_XDC = "ti.platforms.evmAM572X" endifhjH hhhj+h}r& (hhh]h]h]h]h]uhMhhh]r' hX]ifeq ($(BOARD),$(filter $(BOARD), evmAM572x)) PLATFORM_XDC = "ti.platforms.evmAM572X" endifr( r) }r* (hUhj$ ubaubj()r+ }r, (hXZifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) PLATFORM_XDC = "evmAM572XCustom" endifhjH hhhj+h}r- (hhh]h]h]h]h]uhMhhh]r. hXZifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) PLATFORM_XDC = "evmAM572XCustom" endifr/ r0 }r1 (hUhj+ ubaubj)r2 }r3 (hXThe SYSBIOS platforms follow the convention to consolidate all platform definitions under SYSBIOS_INSTALL_PATH/packages/ti/platforms/\* hence the convention ti.platorms. but for custom platform, users are not required to follow this convention.hjH hhhjh}r4 (h]h]h]h]h]uhNhhh]r5 h)r6 }r7 (hXThe SYSBIOS platforms follow the convention to consolidate all platform definitions under SYSBIOS_INSTALL_PATH/packages/ti/platforms/\* hence the convention ti.platorms. but for custom platform, users are not required to follow this convention.hj2 hhhhh}r8 (h]h]h]h]h]uhMh]r9 hXThe SYSBIOS platforms follow the convention to consolidate all platform definitions under SYSBIOS_INSTALL_PATH/packages/ti/platforms/* hence the convention ti.platorms. but for custom platform, users are not required to follow this convention.r: r; }r< (hXThe SYSBIOS platforms follow the convention to consolidate all platform definitions under SYSBIOS_INSTALL_PATH/packages/ti/platforms/\* hence the convention ti.platorms. but for custom platform, users are not required to follow this convention.hj6 ubaubaubh)r= }r> (hXN**Step 6: Update source files corresponding to drivers used in board library**r? hjH hhhhh}r@ (h]h]h]h]h]uhMhhh]rA jw)rB }rC (hj? h}rD (h]h]h]h]h]uhj= h]rE hXJStep 6: Update source files corresponding to drivers used in board libraryrF rG }rH (hUhjB ubahjubaubh)rI }rJ (hX-Makefile src_files_lld.mk file adds source files corresponding to LLD drivers used in the board library. Usually most boards utilize control driver like I2C (for programming the PMIC or reading EEPROM), UART drivers (for IO) and boot media drivers like (SPI/QSPI, MMC or NAND). In the example below, we assume that the custom Board library has dependency on I2C, SPI and UART LLD drivers. Since the LLD drivers will be linked to the application along with board library, board library only needs _soc.c corresponding to SOC used on the custom Board.rK hjH hhhhh}rL (h]h]h]h]h]uhMhhh]rM hX-Makefile src_files_lld.mk file adds source files corresponding to LLD drivers used in the board library. Usually most boards utilize control driver like I2C (for programming the PMIC or reading EEPROM), UART drivers (for IO) and boot media drivers like (SPI/QSPI, MMC or NAND). In the example below, we assume that the custom Board library has dependency on I2C, SPI and UART LLD drivers. Since the LLD drivers will be linked to the application along with board library, board library only needs _soc.c corresponding to SOC used on the custom Board.rN rO }rP (hjK hjI ubaubh)rQ }rR (hXCIn packages/ti/board/src/src_files_lld.mk, add the following lines:rS hjH hhhhh}rT (h]h]h]h]h]uhMhhh]rU hXCIn packages/ti/board/src/src_files_lld.mk, add the following lines:rV rW }rX (hjS hjQ ubaubj()rY }rZ (hXifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) SRCDIR += $(PDK_INSTALL_PATH)/ti/drv/i2c/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/uart/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/spi/soc/am572xhjH hhhj+h}r[ (hhh]h]h]h]h]uhMhhh]r\ hXifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) SRCDIR += $(PDK_INSTALL_PATH)/ti/drv/i2c/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/uart/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/spi/soc/am572xr] r^ }r_ (hUhjY ubaubj()r` }ra (hXINCDIR += $(PDK_INSTALL_PATH)/ti/drv/i2c/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/uart/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/spi/soc/am572xhjH hhhj+h}rb (hhh]h]h]h]h]uhMhhh]rc hXINCDIR += $(PDK_INSTALL_PATH)/ti/drv/i2c/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/uart/soc/am572x \ $(PDK_INSTALL_PATH)/ti/drv/spi/soc/am572xrd re }rf (hUhj` ubaubj()rg }rh (hXh# Common source files across all platforms and cores SRCS_COMMON += I2C_soc.c UART_soc.c SPI_soc.c endifhjH hhhj+h}ri (hhh]h]h]h]h]uhMhhh]rj hXh# Common source files across all platforms and cores SRCS_COMMON += I2C_soc.c UART_soc.c SPI_soc.c endifrk rl }rm (hUhjg ubaubj)rn }ro (hXFor all LLD drivers linked to the board library you need to include corresponding _soc.c file. For example if you include GPIO driver for setting board mux then GPIO_soc.c needs to be added to LLD source files.hjH hhhjh}rp (h]h]h]h]h]uhNhhh]rq h)rr }rs (hXFor all LLD drivers linked to the board library you need to include corresponding _soc.c file. For example if you include GPIO driver for setting board mux then GPIO_soc.c needs to be added to LLD source files.rt hjn hhhhh}ru (h]h]h]h]h]uhMh]rv hXFor all LLD drivers linked to the board library you need to include corresponding _soc.c file. For example if you include GPIO driver for setting board mux then GPIO_soc.c needs to be added to LLD source files.rw rx }ry (hjt hjr ubaubaubh)rz }r{ (hX=**Step 7: Add custom Board to BOARDLIST and update CORELIST**r| hjH hhhhh}r} (h]h]h]h]h]uhMhhh]r~ jw)r }r (hj| h}r (h]h]h]h]h]uhjz h]r hX9Step 7: Add custom Board to BOARDLIST and update CORELISTr r }r (hUhj ubahjubaubh)r }r (hXIn packages/ti/board/board_component.mk, modify the build to add your custom board and specify the cores for which you want to build the board library. Example to build board library for only A15 and C66x cores, limit the build by specify only a15_0 and C66x in the CORELISTr hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hXIn packages/ti/board/board_component.mk, modify the build to add your custom board and specify the cores for which you want to build the board library. Example to build board library for only A15 and C66x cores, limit the build by specify only a15_0 and C66x in the CORELISTr r }r (hj hj ubaubj()r }r (hXboard_lib_BOARDLIST = myCustomBoard evmAM335x icev2AM335x skAM335x bbbAM335x evmAM437x idkAM437x skAM437x evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L evmK2G iceK2G \hjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hXboard_lib_BOARDLIST = myCustomBoard evmAM335x icev2AM335x skAM335x bbbAM335x evmAM437x idkAM437x skAM437x evmAM572x idkAM571x idkAM572x evmK2H evmK2K evmK2E evmK2L evmK2G iceK2G \r r }r (hUhj ubaubj()r }r (hXU#board_lib_am572x_CORELIST = c66x a15_0 ipu1_0 board_lib_am572x_CORELIST = a15_0 c66xhjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hXU#board_lib_am572x_CORELIST = c66x a15_0 ipu1_0 board_lib_am572x_CORELIST = a15_0 c66xr r }r (hUhj ubaubh)r }r (hX;**Step 8: Update .bld files for XDCTOOL based build steps**r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hX7Step 8: Update .bld files for XDCTOOL based build stepsr r }r (hUhj ubahjubaubh)r }r (hXZMake corresponding changes in packages/ti/board/config.bld, by adding the following lines:r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hXZMake corresponding changes in packages/ti/board/config.bld, by adding the following lines:r r }r (hj hj ubaubj()r }r (hXwvar myCustomBoard = { name: "myCustomBoard", ccOpts: "-DmyCustomBoard -DSOC_AM572x", targets: [C66LE,A15LE ] }hjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hXwvar myCustomBoard = { name: "myCustomBoard", ccOpts: "-DmyCustomBoard -DSOC_AM572x", targets: [C66LE,A15LE ] }r r }r (hUhj ubaubj()r }r (hXvar boards = [ evmAM335x, icev2AM335x, skAM335x, bbbAM335x, evmAM437x, idkAM437x, skAM437x, myCustomBoard, evmAM572x, idkAM571x, idkAM572x, evmK2H, evmK2K, evmK2E, evmK2L, evmK2G, evmC6678, evmC6657 ];hjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hXvar boards = [ evmAM335x, icev2AM335x, skAM335x, bbbAM335x, evmAM437x, idkAM437x, skAM437x, myCustomBoard, evmAM572x, idkAM571x, idkAM572x, evmK2H, evmK2K, evmK2E, evmK2L, evmK2G, evmC6678, evmC6657 ];r r }r (hUhj ubaubh)r }r (hX?Also, in packages/ti/board/package.bld, add the following line:r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hX?Also, in packages/ti/board/package.bld, add the following line:r r }r (hj hj ubaubj()r }r (hXYPkg.otherFiles[Pkg.otherFiles.length++] = "src/myCustomBoard/src_files_myCustomBoard.mk";hjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hXYPkg.otherFiles[Pkg.otherFiles.length++] = "src/myCustomBoard/src_files_myCustomBoard.mk";r r }r (hUhj ubaubh)r }r (hX***Step 9: Add custom board to board list**r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hX&Step 9: Add custom board to board listr r }r (hUhj ubahjubaubh)r }r (hXMAdd myCustomBoard to AM572x board list in file packages/ti/build/soc_info.mk:r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hXMAdd myCustomBoard to AM572x board list in file packages/ti/build/soc_info.mk:r r }r (hj hj ubaubj()r }r (hX5BOARD_LIST_am572x = evmAM572x idkAM572x myCustomBoardhjH hhhj+h}r (hhh]h]h]h]h]uhMhhh]r hX5BOARD_LIST_am572x = evmAM572x idkAM572x myCustomBoardr r }r (hUhj ubaubh)r }r (hXE**Step 10: Build the custom board library with the updated settings**r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r jw)r }r (hj h}r (h]h]h]h]h]uhj h]r hXAStep 10: Build the custom board library with the updated settingsr r }r (hUhj ubahjubaubh)r }r (hXNFirst change directory to /packages and run pdksetupenv.bat.r hjH hhhhh}r (h]h]h]h]h]uhMhhh]r hXNFirst change directory to /packages and run pdksetupenv.bat.r r }r (hj hj ubaubh)r }r (hXZThen change directory to /packages/ti/board and build the board library:r hjH hhhhh}r (h]h]h]h]h]uhMhhh]rhXZThen change directory to /packages/ti/board and build the board library:rr}r(hj hj ubaubj()r}r(hXDgmake LIMIT_SOCS=am572x LIMIT_BOARDS=myCustomBoard LIMIT_CORES=a15_0hjH hhhj+h}r(hhh]h]h]h]h]uhMhhh]rhXDgmake LIMIT_SOCS=am572x LIMIT_BOARDS=myCustomBoard LIMIT_CORES=a15_0rr }r (hUhjubaubeubeubh)r }r (hUhjhhhhh}r (h]h]h]h]rU3creating-custom-board-library-for-am335x-and-am437xrah]rhWauhMhhh]r(h)r}r(hX3Creating Custom Board Library for AM335x and AM437xrhj hhhhh}r(h]h]h]h]h]uhMhhh]rhX3Creating Custom Board Library for AM335x and AM437xrr}r(hjhjubaubh)r}r(hXrThis section describes how to create a custom board library for AM335x/AM437x. Currently the AM335x and AM437x board libraries reuse the board support code in legacy starterware (now part of the PDK). Therefore, rebuilding the board library involves compiling the starterware source code. Both approaches of creating a custom board library are described in this section:rhj hhhhh}r(h]h]h]h]h]uhMhhh]rhXrThis section describes how to create a custom board library for AM335x/AM437x. Currently the AM335x and AM437x board libraries reuse the board support code in legacy starterware (now part of the PDK). Therefore, rebuilding the board library involves compiling the starterware source code. Both approaches of creating a custom board library are described in this section:rr }r!(hjhjubaubj)r"}r#(hUhj hhhjh}r$(jX-h]h]h]h]h]uhMhhh]r%(j)r&}r'(hXModifying an existing TI boardr(hj"hhhjh}r)(h]h]h]h]h]uhNhhh]r*h)r+}r,(hj(hj&hhhhh}r-(h]h]h]h]h]uhMh]r.hXModifying an existing TI boardr/r0}r1(hj(hj+ubaubaubj)r2}r3(hXAdding a new custom board hj"hhhjh}r4(h]h]h]h]h]uhNhhh]r5h)r6}r7(hXAdding a new custom boardr8hj2hhhhh}r9(h]h]h]h]h]uhM h]r:hXAdding a new custom boardr;r<}r=(hj8hj6ubaubaubeubh)r>}r?(hUhj hhhhh}r@(h]h]h]h]rAU0modifying-an-existing-ti-board-for-am335x-am437xrBah]rChsauhM hhh]rD(h)rE}rF(hX0Modifying an Existing TI Board for AM335x/AM437xrGhj>hhhhh}rH(h]h]h]h]h]uhM hhh]rIhX0Modifying an Existing TI Board for AM335x/AM437xrJrK}rL(hjGhjEubaubh)rM}rN(hXAThis approach is less time consuming since the board library setup already exists in PDK, but requires users to back up the existing TI board library for reference. The instructions below use AM335x GP EVM as the existing board to modify. Users may choose to modify any other existing board and the procedure is the same.rOhj>hhhhh}rP(h]h]h]h]h]uhMhhh]rQhXAThis approach is less time consuming since the board library setup already exists in PDK, but requires users to back up the existing TI board library for reference. The instructions below use AM335x GP EVM as the existing board to modify. Users may choose to modify any other existing board and the procedure is the same.rRrS}rT(hjOhjMubaubjY )rU}rV(hUhj>hNhj\ h}rW(h]h]h]h]h]uhNhhh]rXj_ )rY}rZ(hX**Step 1: Generating a new pinmux configuration** - Download and run the `PINMUX Tool `_. - Use "Open an Existing Design" and open /packages/ti/starterware/tools/pinmux_config/am335x/gpevm_config.pinmux. - Use the tool to change the configuration and make sure there are no conflicts. - When configuration is finalized, save the starterware pinmux files as shown below: hjUhhhjb h}r[(h]h]h]h]h]uhMh]r\(je )r]}r^(hX1**Step 1: Generating a new pinmux configuration**r_hjYhhhji h}r`(h]h]h]h]h]uhMh]rajw)rb}rc(hj_h}rd(h]h]h]h]h]uhj]h]rehX-Step 1: Generating a new pinmux configurationrfrg}rh(hUhjbubahjubaubjo )ri}rj(hUh}rk(h]h]h]h]h]uhjYh]rlj)rm}rn(hUh}ro(jX-h]h]h]h]h]uhjih]rp(j)rq}rr(hXIDownload and run the `PINMUX Tool `_.rsh}rt(h]h]h]h]h]uhjmh]ruh)rv}rw(hjshjqhhhhh}rx(h]h]h]h]h]uhMh]ry(hXDownload and run the rzr{}r|(hXDownload and run the hjvubj)r}}r~(hX3`PINMUX Tool `_h}r(UnameX PINMUX TooljX"https://www.ti.com/tool/PINMUXTOOLrh]h]h]h]h]uhjvh]rhX PINMUX Toolrr}r(hUhj}ubahj ubjW)r}r(hX% hKhjvhjZh}r(Urefurijh]rUid9rah]h]rj_ah]h]uh]ubhX.r}r(hX.hjvubeubahjubj)r}r(hXUse "Open an Existing Design" and open /packages/ti/starterware/tools/pinmux_config/am335x/gpevm_config.pinmux.rh}r(h]h]h]h]h]uhjmh]rh)r}r(hjhjhhhhh}r(h]h]h]h]h]uhMh]rhXUse "Open an Existing Design" and open /packages/ti/starterware/tools/pinmux_config/am335x/gpevm_config.pinmux.rr}r(hjhjubaubahjubj)r}r(hXNUse the tool to change the configuration and make sure there are no conflicts.rh}r(h]h]h]h]h]uhjmh]rh)r}r(hjhjhhhhh}r(h]h]h]h]h]uhMh]rhXNUse the tool to change the configuration and make sure there are no conflicts.rr}r(hjhjubaubahjubj)r}r(hXSWhen configuration is finalized, save the starterware pinmux files as shown below: h}r(h]h]h]h]h]uhjmh]rh)r}r(hXRWhen configuration is finalized, save the starterware pinmux files as shown below:rhjhhhhh}r(h]h]h]h]h]uhMh]rhXRWhen configuration is finalized, save the starterware pinmux files as shown below:rr}r(hjhjubaubahjubehjubahj ubeubaubj)r}r(hX).. Image:: /images/pinmux_save_files.jpg hj>hhhjh}r(UuriXimages/pinmux_save_files.jpgrh]h]h]h]j}rU*jsh]uhMhhh]ubh)r}r(hXK**Step 2: Using newly generated pinmux files for the board to be modified**rhj>hhhhh}r(h]h]h]h]h]uhMhhh]rjw)r}r(hjh}r(h]h]h]h]h]uhjh]rhXGStep 2: Using newly generated pinmux files for the board to be modifiedrr}r(hUhjubahjubaubj)r}r(hUhj>hhhjh}r(jX-h]h]h]h]h]uhMhhh]rj)r}r(hXeOpen am335x_pinmux.h saved in previous step and replace the following line at the bottom of the file hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXdOpen am335x_pinmux.h saved in previous step and replace the following line at the bottom of the filerhjhhhhh}r(h]h]h]h]h]uhMh]rhXdOpen am335x_pinmux.h saved in previous step and replace the following line at the bottom of the filerr}r(hjhjubaubaubaubj()r}r(hX,extern pinmuxBoardCfg_t gAM335xPinmuxData[];hj>hhhj+h}r(hhh]h]h]h]h]uhM&hhh]rhX,extern pinmuxBoardCfg_t gAM335xPinmuxData[];rr}r(hUhjubaubh)r}r(hXfwith the following lines from /packages/ti/starterware/board/am335x/am335x_pinmux.h:rhj>hhhhh}r(h]h]h]h]h]uhM#hhh]rhXfwith the following lines from /packages/ti/starterware/board/am335x/am335x_pinmux.h:rr}r(hjhjubaubj()r}r(hXR/** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gGpevmPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gEvmskPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gBbPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gBbbPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gIceV1PinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gIceV2PinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool for IceV2, but with AMIC11x naming. Intended for manual deviation from IceV2, if applicable. */ extern pinmuxBoardCfg_t gAMIC11xPinmuxData[];hj>hhhj+h}r(hhh]h]h]h]h]uhM,hhh]rhXR/** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gGpevmPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gEvmskPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gBbPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gBbbPinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gIceV1PinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool. */ extern pinmuxBoardCfg_t gIceV2PinmuxData[]; /** \brief Pinmux configuration data for the board. Auto-generated from Pinmux tool for IceV2, but with AMIC11x naming. Intended for manual deviation from IceV2, if applicable. */ extern pinmuxBoardCfg_t gAMIC11xPinmuxData[];rr}r(hUhjubaubj)r}r(hUhj>hhhjh}r(jX-h]h]h]h]h]uhMEhhh]rj)r}r(hXRename am335x_pinmux_data.c saved in previous step to am335x_gpevm_pinmux_data.c. Then replace the following line toward the end of this file hjhNhjh}r(h]h]h]h]h]uhNhhh]rjY )r}r(hUh}r(h]h]h]h]h]uhjh]rj_ )r}r(hXRename am335x_pinmux_data.c saved in previous step to am335x_gpevm_pinmux_data.c. Then replace the following line toward the end of this file hjhhhjb h}r(h]h]h]h]h]uhMFh]r(je )r}r(hXQRename am335x_pinmux_data.c saved in previous step to am335x_gpevm_pinmux_data.c.rhjhhhji h}r(h]h]h]h]h]uhMFh]rhXQRename am335x_pinmux_data.c saved in previous step to am335x_gpevm_pinmux_data.c.rr}r(hjhjubaubjo )r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX;Then replace the following line toward the end of this filerhjhhhhh}r(h]h]h]h]h]uhMFh]rhX;Then replace the following line toward the end of this filer r }r (hjhjubaubahj ubeubahj\ ubaubaubj()r }r (hX&pinmuxBoardCfg_t gAM335xPinmuxData[] =hj>hhhj+h}r(hhh]h]h]h]h]uhMOhhh]rhX&pinmuxBoardCfg_t gAM335xPinmuxData[] =rr}r(hUhj ubaubh)r}r(hXwithrhj>hhhhh}r(h]h]h]h]h]uhMMhhh]rhXwithrr}r(hjhjubaubj()r}r(hX%pinmuxBoardCfg_t gGpevmPinmuxData[] =hj>hhhj+h}r(hhh]h]h]h]h]uhMVhhh]rhX%pinmuxBoardCfg_t gGpevmPinmuxData[] =rr }r!(hUhjubaubj)r"}r#(hUhj>hhhjh}r$(jX-h]h]h]h]h]uhMThhh]r%j)r&}r'(hXReplace am335x_pinmux.h and am335x_gpevm_pinmux_data.c in folder /packages/ti/starterware/board/am335x with the two files newly generated and modified above. It is recommended to keep a copy of this folder as a reference before replacing the two files. hj"hNhjh}r((h]h]h]h]h]uhNhhh]r)jY )r*}r+(hUh}r,(h]h]h]h]h]uhj&h]r-j_ )r.}r/(hXReplace am335x_pinmux.h and am335x_gpevm_pinmux_data.c in folder /packages/ti/starterware/board/am335x with the two files newly generated and modified above. It is recommended to keep a copy of this folder as a reference before replacing the two files. hj*hhhjb h}r0(h]h]h]h]h]uhMWh]r1(je )r2}r3(hX@Replace am335x_pinmux.h and am335x_gpevm_pinmux_data.c in folderr4hj.hhhji h}r5(h]h]h]h]h]uhMWh]r6hX@Replace am335x_pinmux.h and am335x_gpevm_pinmux_data.c in folderr7r8}r9(hj4hj2ubaubjo )r:}r;(hUh}r<(h]h]h]h]h]uhj.h]r=h)r>}r?(hX/packages/ti/starterware/board/am335x with the two files newly generated and modified above. It is recommended to keep a copy of this folder as a reference before replacing the two files.r@hj:hhhhh}rA(h]h]h]h]h]uhMUh]rBhX/packages/ti/starterware/board/am335x with the two files newly generated and modified above. It is recommended to keep a copy of this folder as a reference before replacing the two files.rCrD}rE(hj@hj>ubaubahj ubeubahj\ ubaubaubh)rF}rG(hX4**Step 3: Updating board library files accordingly**rHhj>hhhhh}rI(h]h]h]h]h]uhMYhhh]rJjw)rK}rL(hjHh}rM(h]h]h]h]h]uhjFh]rNhX0Step 3: Updating board library files accordinglyrOrP}rQ(hUhjKubahjubaubj)rR}rS(hUhj>hhhjh}rT(jX-h]h]h]h]h]uhM[hhh]rUj)rV}rW(hXUpdate pinmux configuration in /packages/ti/board/src/evmAM335x_pinmux.c. For example, to add another UART instance, the following line can be added to function Board_pinmuxConfig(): hjRhhhjh}rX(h]h]h]h]h]uhNhhh]rYh)rZ}r[(hXUpdate pinmux configuration in /packages/ti/board/src/evmAM335x_pinmux.c. For example, to add another UART instance, the following line can be added to function Board_pinmuxConfig():r\hjVhhhhh}r](h]h]h]h]h]uhM[h]r^hXUpdate pinmux configuration in /packages/ti/board/src/evmAM335x_pinmux.c. For example, to add another UART instance, the following line can be added to function Board_pinmuxConfig():r_r`}ra(hj\hjZubaubaubaubj()rb}rc(hX:status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 1U, NULL);hj>hhhj+h}rd(hhh]h]h]h]h]uhMfhhh]rehX:status = PINMUXModuleConfig(CHIPDB_MOD_ID_UART, 1U, NULL);rfrg}rh(hUhjbubaubj)ri}rj(hUhj>hhhjh}rk(jX-h]h]h]h]h]uhMchhh]rlj)rm}rn(hXUpdate power and clocking in /packages/ti/board/src/evmAM335x.c. For example, to enable power and clocking for the second UART instance, the following line can be added to function Board_moduleClockInit(): hjihhhjh}ro(h]h]h]h]h]uhNhhh]rph)rq}rr(hXUpdate power and clocking in /packages/ti/board/src/evmAM335x.c. For example, to enable power and clocking for the second UART instance, the following line can be added to function Board_moduleClockInit():rshjmhhhhh}rt(h]h]h]h]h]uhMch]ruhXUpdate power and clocking in /packages/ti/board/src/evmAM335x.c. For example, to enable power and clocking for the second UART instance, the following line can be added to function Board_moduleClockInit():rvrw}rx(hjshjqubaubaubaubj()ry}rz(hX6status = PRCMModuleEnable(CHIPDB_MOD_ID_UART, 1U, 0U);hj>hhhj+h}r{(hhh]h]h]h]h]uhMnhhh]r|hX6status = PRCMModuleEnable(CHIPDB_MOD_ID_UART, 1U, 0U);r}r~}r(hUhjyubaubj)r}r(hUhj>hhhjh}r(jX-h]h]h]h]h]uhMlhhh]rj)r}r(hXUpdate LLD initialization if necessary in /packages/ti/board/src/evmAM335x_lld_init.c. For example, to initialize the second UART, following line can be added to function Board_uartStdioInit(): hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXUpdate LLD initialization if necessary in /packages/ti/board/src/evmAM335x_lld_init.c. For example, to initialize the second UART, following line can be added to function Board_uartStdioInit():rhjhhhhh}r(h]h]h]h]h]uhMlh]rhXUpdate LLD initialization if necessary in /packages/ti/board/src/evmAM335x_lld_init.c. For example, to initialize the second UART, following line can be added to function Board_uartStdioInit():rr}r(hjhjubaubaubaubj()r}r(hXUART_stdioInit(1);hj>hhhj+h}r(hhh]h]h]h]h]uhMwhhh]rhXUART_stdioInit(1);rr}r(hUhjubaubh)r}r(hX;**Step 4: Rebuilding board library for the modified board**rhj>hhhhh}r(h]h]h]h]h]uhMuhhh]rjw)r}r(hjh}r(h]h]h]h]h]uhjh]rhX7Step 4: Rebuilding board library for the modified boardrr}r(hUhjubahjubaubj)r}r(hUhj>hhhjh}r(jX-h]h]h]h]h]uhMwhhh]rj)r}r(hXSetup build environment: hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXSetup build environment:rhjhhhhh}r(h]h]h]h]h]uhMwh]rhXSetup build environment:rr}r(hjhjubaubaubaubj()r}r(hX0C:\ti\pdk_am335x_1_0_17\packages>pdksetupenv.bathj>hhhj+h}r(hhh]h]h]h]h]uhMhhh]rhX0C:\ti\pdk_am335x_1_0_17\packages>pdksetupenv.batrr}r(hUhjubaubj)r}r(hUhj>hhhjh}r(jX-h]h]h]h]h]uhM~hhh]rj)r}r(hXRebuild board library: hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXRebuild board library:rhjhhhhh}r(h]h]h]h]h]uhM~h]rhXRebuild board library:rr}r(hjhjubaubaubaubj()r}r(hXXC:\ti\pdk_am335x_1_0_17\packages\ti\board>gmake LIMIT_SOCS=am335x LIMIT_BOARDS=evmAM335xhj>hhhj+h}r(hhh]h]h]h]h]uhMhhh]rhXXC:\ti\pdk_am335x_1_0_17\packages\ti\board>gmake LIMIT_SOCS=am335x LIMIT_BOARDS=evmAM335xrr}r(hUhjubaubh)r}r(hX&**Step 5: Rebuilding the boot loader**rhj>hhhhh}r(h]h]h]h]h]uhMhhh]rjw)r}r(hjh}r(h]h]h]h]h]uhjh]rhX"Step 5: Rebuilding the boot loaderrr}r(hUhjubahjubaubh)r}r(hXCAfter the board library is rebuilt, the application can be built against the new board library. If the secondary boot loader is used to initialize the board, the boot loader will also need to be rebuilt according to section `Building AM335x/AM437x Bootloader `__.hj>hhhhh}r(h]h]h]h]h]uhMhhh]r(hXAfter the board library is rebuilt, the application can be built against the new board library. If the secondary boot loader is used to initialize the board, the boot loader will also need to be rebuilt according to section rr}r(hXAfter the board library is rebuilt, the application can be built against the new board library. If the secondary boot loader is used to initialize the board, the boot loader will also need to be rebuilt according to section hjubj)r}r(hXb`Building AM335x/AM437x Bootloader `__h}r(UnameX!Building AM335x/AM437x BootloaderjX:index_Foundational_Components.html#building-the-bootloaderh]h]h]h]h]uhjh]rhX!Building AM335x/AM437x Bootloaderrr}r(hUhjubahj ubhX.r}r(hX.hjubeubh)r}r(hX|For example, issue following command under /packages/ti/starterware to build MMCSD boot loader for AM335x:rhj>hhhhh}r(h]h]h]h]h]uhMhhh]rhX|For example, issue following command under /packages/ti/starterware to build MMCSD boot loader for AM335x:rr}r(hjhjubaubj()r}r(hX`gmake bootloader BUILDCFG=boot BOOTMODE=mmcsd PLATFORM=am335x-evm PROFILE=release -s KW_BUILD=nohj>hhhj+h}r(hhh]h]h]h]h]uhMhhh]rhX`gmake bootloader BUILDCFG=boot BOOTMODE=mmcsd PLATFORM=am335x-evm PROFILE=release -s KW_BUILD=norr}r(hUhjubaubeubh)r}r(hUhj hhhhh}r(h]h]h]h]rU+adding-a-new-custom-board-for-am335x-am437xrah]rhauhMhhh]r(h)r}r(hX+Adding a New Custom Board for AM335x/AM437xrhjhhhhh}r(h]h]h]h]h]uhMhhh]rhX+Adding a New Custom Board for AM335x/AM437xrr }r (hjhjubaubh)r }r (hXFor this approach, due to the board library's dependencies on starterware for AM335x/AM437x, additional steps are needed on top of what's described in section `Board Library Creation with Custom Name `_. Please follow all the steps given in that section to setup the custom board, and do the following before building the custom board library:hjhhhhh}r (h]h]h]h]h]uhMhhh]r(hXFor this approach, due to the board library's dependencies on starterware for AM335x/AM437x, additional steps are needed on top of what's described in section rr}r(hXFor this approach, due to the board library's dependencies on starterware for AM335x/AM437x, additional steps are needed on top of what's described in section hj ubj)r}r(hXe`Board Library Creation with Custom Name `_h}r(UnameX'Board Library Creation with Custom NamejX8index_board.html#creating-board-library-with-custom-namerh]h]h]h]h]uhj h]rhX'Board Library Creation with Custom Namerr}r(hUhjubahj ubjW)r}r(hX; hKhj hjZh}r(Urefurijh]rUid10rah]h]rX'board library creation with custom namer ah]h]uh]ubhX. Please follow all the steps given in that section to setup the custom board, and do the following before building the custom board library:r!r"}r#(hX. Please follow all the steps given in that section to setup the custom board, and do the following before building the custom board library:hj ubeubj)r$}r%(hUhjhhhjh}r&(jX-h]h]h]h]h]uhMhhh]r'j)r(}r)(hXFirst, make sure "var myCustomBoard" is added to packages/ti/board/config.bld and it includes all custom starterware files, especially the pinmux data source file. For example, hj$hhhjh}r*(h]h]h]h]h]uhNhhh]r+h)r,}r-(hXFirst, make sure "var myCustomBoard" is added to packages/ti/board/config.bld and it includes all custom starterware files, especially the pinmux data source file. For example,r.hj(hhhhh}r/(h]h]h]h]h]uhMh]r0hXFirst, make sure "var myCustomBoard" is added to packages/ti/board/config.bld and it includes all custom starterware files, especially the pinmux data source file. For example,r1r2}r3(hj.hj,ubaubaubaubj()r4}r5(hXvar myCustomBoard = { name: "myCustomBoard", ccOpts: "-DmyCustomBoard -DSOC_AM335X -DAM335X_FAMILY_BUILD -Dam335x -DBUILDCFG_MOD_UART -DBUILDCFG_MOD_GPIO -DBUILDCFG_MOD_I2C -DBUILDCFG_MOD_MCSPI -DBUILDCFG_MOD_QSPI -DBUILDCFG_MOD_PRU_ETH -DBUILDCFG_MOD_MMCSD -DBUILDCFG_MOD_CPSW -DBUILDCFG_MOD_PWMSS -DBUILDCFG_MOD_DSS -DBUILDCFG_MOD_USB -DBUILDCFG_MOD_GPMC -DBUILDCFG_MOD_DCAN -DBUILDCFG_MOD_MCASP -DBUILDCFG_MOD_VPFE -DBUILDCFG_MOD_MDIO -DBUILDCFG_MOD_DMTIMER -DBUILDCFG_MOD_EDMA3CC -DBUILDCFG_MOD_EDMA3TC -DBUILDCFG_MOD_RTC -DBUILDCFG_MOD_WDT -DBUILDCFG_MOD_ADC -DBUILDCFG_MOD_LCDC", stwFiles: ["$(PDK_INSTALL_PATH)/ti/starterware/board/am335x/am335x_myCustomBoard_pinmux_data.c", ... }hjhhhj+h}r6(hhh]h]h]h]h]uhMhhh]r7hXvar myCustomBoard = { name: "myCustomBoard", ccOpts: "-DmyCustomBoard -DSOC_AM335X -DAM335X_FAMILY_BUILD -Dam335x -DBUILDCFG_MOD_UART -DBUILDCFG_MOD_GPIO -DBUILDCFG_MOD_I2C -DBUILDCFG_MOD_MCSPI -DBUILDCFG_MOD_QSPI -DBUILDCFG_MOD_PRU_ETH -DBUILDCFG_MOD_MMCSD -DBUILDCFG_MOD_CPSW -DBUILDCFG_MOD_PWMSS -DBUILDCFG_MOD_DSS -DBUILDCFG_MOD_USB -DBUILDCFG_MOD_GPMC -DBUILDCFG_MOD_DCAN -DBUILDCFG_MOD_MCASP -DBUILDCFG_MOD_VPFE -DBUILDCFG_MOD_MDIO -DBUILDCFG_MOD_DMTIMER -DBUILDCFG_MOD_EDMA3CC -DBUILDCFG_MOD_EDMA3TC -DBUILDCFG_MOD_RTC -DBUILDCFG_MOD_WDT -DBUILDCFG_MOD_ADC -DBUILDCFG_MOD_LCDC", stwFiles: ["$(PDK_INSTALL_PATH)/ti/starterware/board/am335x/am335x_myCustomBoard_pinmux_data.c", ... }r8r9}r:(hUhj4ubaubj)r;}r<(hUhjhhhjh}r=(jX-h]h]h]h]h]uhMhhh]r>j)r?}r@(hXSecond, in packages/ti/board/src/src_files_starterware.mk, add custom board build option and add custom pinmux data source file. For example, hj;hhhjh}rA(h]h]h]h]h]uhNhhh]rBh)rC}rD(hXSecond, in packages/ti/board/src/src_files_starterware.mk, add custom board build option and add custom pinmux data source file. For example,rEhj?hhhhh}rF(h]h]h]h]h]uhMh]rGhXSecond, in packages/ti/board/src/src_files_starterware.mk, add custom board build option and add custom pinmux data source file. For example,rHrI}rJ(hjEhjCubaubaubaubj()rK}rL(hXifeq ($(BOARD),$(filter $(BOARD), evmAM335x icev2AM335x iceAMIC110 skAM335x bbbAM335x myCustomBoard)) ... ifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) SRCS_COMMON += am335x_myCustomBoard_pinmux_data.c endifhjhXninternal padding after source/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Board_Support.rst.incrMhj+h}rN(hhh]h]h]h]h]uhMhhh]rOhXifeq ($(BOARD),$(filter $(BOARD), evmAM335x icev2AM335x iceAMIC110 skAM335x bbbAM335x myCustomBoard)) ... ifeq ($(BOARD),$(filter $(BOARD), myCustomBoard)) SRCS_COMMON += am335x_myCustomBoard_pinmux_data.c endifrPrQ}rR(hUhjKubaubeubeubeubeubhhhhh}rS(h]h]h]h]rTU'application-integration-for-am5x-dra7xxrUah]rVh`auhKJhhh]rW(h)rX}rY(hX'Application Integration for AM5x/DRA7xxrZhhhhhhh}r[(h]h]h]h]h]uhKJhhh]r\hX'Application Integration for AM5x/DRA7xxr]r^}r_(hjZhjXubaubh)r`}ra(hXWhen configuring pinmux with IO Delay settings for **AM5x** and **DRA7xx** boards, there is a hard restriction: the code/data/stack during the IO Delay setup must be within local internal memory. Refer to SOC TRM for additional information.hhhhhhh}rb(h]h]h]h]h]uhKLhhh]rc(hX3When configuring pinmux with IO Delay settings for rdre}rf(hX3When configuring pinmux with IO Delay settings for hj`ubjw)rg}rh(hX**AM5x**h}ri(h]h]h]h]h]uhj`h]rjhXAM5xrkrl}rm(hUhjgubahjubhX and rnro}rp(hX and hj`ubjw)rq}rr(hX **DRA7xx**h}rs(h]h]h]h]h]uhj`h]rthXDRA7xxrurv}rw(hUhjqubahjubhX boards, there is a hard restriction: the code/data/stack during the IO Delay setup must be within local internal memory. Refer to SOC TRM for additional information.rxry}rz(hX boards, there is a hard restriction: the code/data/stack during the IO Delay setup must be within local internal memory. Refer to SOC TRM for additional information.hj`ubeubh)r{}r|(hXThe board library specifies two sections for users to define for the sole purpose of meeting this requirement. They are: **BOARD_IO_DELAY_CODE** and **BOARD_IO_DELAY_DATA**. Below are examples of how to specify these section into the local memory, OCMC_RAM1:hhhhhhh}r}(h]h]h]h]h]uhKQhhh]r~(hXyThe board library specifies two sections for users to define for the sole purpose of meeting this requirement. They are: rr}r(hXyThe board library specifies two sections for users to define for the sole purpose of meeting this requirement. They are: hj{ubjw)r}r(hX**BOARD_IO_DELAY_CODE**h}r(h]h]h]h]h]uhj{h]rhXBOARD_IO_DELAY_CODErr}r(hUhjubahjubhX and rr}r(hX and hj{ubjw)r}r(hX**BOARD_IO_DELAY_DATA**h}r(h]h]h]h]h]uhj{h]rhXBOARD_IO_DELAY_DATArr}r(hUhjubahjubhXV. Below are examples of how to specify these section into the local memory, OCMC_RAM1:rr}r(hXV. Below are examples of how to specify these section into the local memory, OCMC_RAM1:hj{ubeubh)r}r(hX)In baremetal case with a linker cmd file:rhhhhhhh}r(h]h]h]h]h]uhKVhhh]rhX)In baremetal case with a linker cmd file:rr}r(hjhjubaubj()r}r(hXBOARD_IO_DELAY_CODE : { . = ALIGN(4); *(BOARD_IO_DELAY_CODE*) } > OCMC_RAM1 BOARD_IO_DELAY_DATA : { . = ALIGN(4); *(BOARD_IO_DELAY_DATA*) } > OCMC_RAM1hhhhhj+h}r(hhh]h]h]h]h]uhK_hhh]rhXBOARD_IO_DELAY_CODE : { . = ALIGN(4); *(BOARD_IO_DELAY_CODE*) } > OCMC_RAM1 BOARD_IO_DELAY_DATA : { . = ALIGN(4); *(BOARD_IO_DELAY_DATA*) } > OCMC_RAM1rr}r(hUhjubaubj1)r}r(hUhhhhhj4h}r(h]h]h]h]h]uhKhhhh]rj7)r}r(hUj:Khjhhhhh}r(h]h]h]h]h]uhKhhh]ubaubh)r}r(hX%In a CCS RTSC project with .cfg file:rhhhhhhh}r(h]h]h]h]h]uhKjhhh]rhX%In a CCS RTSC project with .cfg file:rr}r(hjhjubaubj()r}r(hXkProgram.sectMap["BOARD_IO_DELAY_DATA"] = "OCMC_RAM1"; Program.sectMap["BOARD_IO_DELAY_CODE"] = "OCMC_RAM1";hhhhhj+h}r(hhh]h]h]h]h]uhKshhh]rhXkProgram.sectMap["BOARD_IO_DELAY_DATA"] = "OCMC_RAM1"; Program.sectMap["BOARD_IO_DELAY_CODE"] = "OCMC_RAM1";rr}r(hUhjubaubj1)r}r(hUhhhhhj4h}r(h]h]h]h]h]uhKqhhh]rj7)r}r(hUj:Khjhhhhh}r(h]h]h]h]h]uhKhhh]ubaubheubhhhhh}r(h]h]h]h]rU!considerations-for-dra7xx-devicesrah]rh2auhKthhh]r(h)r}r(hX!Considerations for DRA7xx devicesrhhhhhhh}r(h]h]h]h]h]uhKthhh]rhX!Considerations for DRA7xx devicesrr}r(hjhjubaubh)r}r(hXAWhen integrating the board library in applications on DRA7xx, these code/data sections will likely overlap and conflict with the code/data sections used by the Secondary Boot Loader (SBL) as both modules will assume full access to OCMC_RAM1. Also, as the SBL performs identical configuration using the common pad config data structures, the pinmux request made by an application will be redundant. Therefore, it is advised that the pinmux API be used only when loading the application via CCS. When loading via SBL, there are three options available for handling this conflict:rhhhhhhh}r(h]h]h]h]h]uhKvhhh]rhXAWhen integrating the board library in applications on DRA7xx, these code/data sections will likely overlap and conflict with the code/data sections used by the Secondary Boot Loader (SBL) as both modules will assume full access to OCMC_RAM1. Also, as the SBL performs identical configuration using the common pad config data structures, the pinmux request made by an application will be redundant. Therefore, it is advised that the pinmux API be used only when loading the application via CCS. When loading via SBL, there are three options available for handling this conflict:rr}r(hjhjubaubcdocutils.nodes enumerated_list r)r}r(hUhhhhhUenumerated_listrh}r(UsuffixrU.h]h]h]UprefixrUh]h]UenumtyperUarabicruhKhhh]r(j)r}r(hXPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections to another internal memory location. The Board library will check to see if the board code/data/stack are located in internal memory before executing the sequence. If another internal memory section is available for placement (e.g. L2SRAM, OCMC_RAM2), then it is acceptable to place the sections in these locations. The Board init sequence will proceed as expected.hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections to another internal memory location. The Board library will check to see if the board code/data/stack are located in internal memory before executing the sequence. If another internal memory section is available for placement (e.g. L2SRAM, OCMC_RAM2), then it is acceptable to place the sections in these locations. The Board init sequence will proceed as expected.rhjhhhhh}r(h]h]h]h]h]uhKh]rhXPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections to another internal memory location. The Board library will check to see if the board code/data/stack are located in internal memory before executing the sequence. If another internal memory section is available for placement (e.g. L2SRAM, OCMC_RAM2), then it is acceptable to place the sections in these locations. The Board init sequence will proceed as expected.rr}r(hjhjubaubaubj)r}r(hXgPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections into external memory. The pinmux subroutine in the Board library checks for code/data/stack placement and will fail if it detects that they reside in DDR and return before performing the configuration. The failure will not affect any other Board init requests as other flags are treated orthogonally.hjhhhjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXgPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections into external memory. The pinmux subroutine in the Board library checks for code/data/stack placement and will fail if it detects that they reside in DDR and return before performing the configuration. The failure will not affect any other Board init requests as other flags are treated orthogonally.rhjhhhhh}r(h]h]h]h]h]uhKh]rhXgPlace the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections into external memory. The pinmux subroutine in the Board library checks for code/data/stack placement and will fail if it detects that they reside in DDR and return before performing the configuration. The failure will not affect any other Board init requests as other flags are treated orthogonally.rr}r(hjhjubaubaubj)r}r(hXRemove the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections. This is the preferred solution as it removes redundant code from executing and will optimize code/data size and load speed. In order to remove these sections, two modifications are required: - Place BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE input sections into an output Dummy Section (DSECT). DSECTs are a `Special Linker Section Type `__ which are relocated for linker resolution but otherwise do not allocate space to a memory map, place sections in the output file, or ever get loaded to the target. In order to place these sections into DSECTS, modify the placement as follows: hjhNhjh}r(h]h]h]h]h]uhNhhh]r(h)r}r(hXRemove the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections. This is the preferred solution as it removes redundant code from executing and will optimize code/data size and load speed. In order to remove these sections, two modifications are required:rhjhhhhh}r(h]h]h]h]h]uhKh]rhXRemove the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections. This is the preferred solution as it removes redundant code from executing and will optimize code/data size and load speed. In order to remove these sections, two modifications are required:rr}r(hjhjubaubj)r}r(hUh}r(jX-h]h]h]h]h]uhjh]rj)r }r (hXPlace BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE input sections into an output Dummy Section (DSECT). DSECTs are a `Special Linker Section Type `__ which are relocated for linker resolution but otherwise do not allocate space to a memory map, place sections in the output file, or ever get loaded to the target. In order to place these sections into DSECTS, modify the placement as follows: h}r (h]h]h]h]h]uhjh]r h)r }r(hXPlace BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE input sections into an output Dummy Section (DSECT). DSECTs are a `Special Linker Section Type `__ which are relocated for linker resolution but otherwise do not allocate space to a memory map, place sections in the output file, or ever get loaded to the target. In order to place these sections into DSECTS, modify the placement as follows:hj hhhhh}r(h]h]h]h]h]uhKh]r(hXpPlace BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE input sections into an output Dummy Section (DSECT). DSECTs are a rr}r(hXpPlace BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE input sections into an output Dummy Section (DSECT). DSECTs are a hj ubj)r}r(hXu`Special Linker Section Type `__h}r(UnameXSpecial Linker Section TypejXShttp://processors.wiki.ti.com/index.php/Linker_Special_Section_Types#DSECT_Sectionsh]h]h]h]h]uhj h]rhXSpecial Linker Section Typerr}r(hUhjubahj ubhX which are relocated for linker resolution but otherwise do not allocate space to a memory map, place sections in the output file, or ever get loaded to the target. In order to place these sections into DSECTS, modify the placement as follows:rr}r(hX which are relocated for linker resolution but otherwise do not allocate space to a memory map, place sections in the output file, or ever get loaded to the target. In order to place these sections into DSECTS, modify the placement as follows:hj ubeubahjubahjubeubeubh)r}r(hX Replace: ::hhhhhhh}r (h]h]h]h]h]uhKhhh]r!hXReplace:r"r#}r$(hXReplace:hjubaubj()r%}r&(hXkProgram.sectMap["BOARD_IO_DELAY_DATA"] = "OCMC_RAM1"; Program.sectMap["BOARD_IO_DELAY_CODE"] = "OCMC_RAM1";hhhhhj+h}r'(hhh]h]h]h]h]uhKhhh]r(hXkProgram.sectMap["BOARD_IO_DELAY_DATA"] = "OCMC_RAM1"; Program.sectMap["BOARD_IO_DELAY_CODE"] = "OCMC_RAM1";r)r*}r+(hUhj%ubaubj1)r,}r-(hUhhhhhj4h}r.(h]h]h]h]h]uhKhhh]r/j7)r0}r1(hUj:Khj,hhhhh}r2(h]h]h]h]h]uhKhhh]ubaubh)r3}r4(hXWith:r5hhhhhhh}r6(h]h]h]h]h]uhKhhh]r7hXWith:r8r9}r:(hj5hj3ubaubj()r;}r<(hXProgram.sectMap["BOARD_IO_DELAY_DATA"] = new Program.SectionSpec(); Program.sectMap["BOARD_IO_DELAY_CODE"] = new Program.SectionSpec(); Program.sectMap["BOARD_IO_DELAY_DATA"].type = "DSECT"; Program.sectMap["BOARD_IO_DELAY_CODE"].type = "DSECT";hhhhhj+h}r=(hhh]h]h]h]h]uhKhhh]r>hXProgram.sectMap["BOARD_IO_DELAY_DATA"] = new Program.SectionSpec(); Program.sectMap["BOARD_IO_DELAY_CODE"] = new Program.SectionSpec(); Program.sectMap["BOARD_IO_DELAY_DATA"].type = "DSECT"; Program.sectMap["BOARD_IO_DELAY_CODE"].type = "DSECT";r?r@}rA(hUhj;ubaubj1)rB}rC(hUhhhhhj4h}rD(h]h]h]h]h]uhKhhh]rEj7)rF}rG(hUj:KhjBhhhhh}rH(h]h]h]h]h]uhKhhh]ubaubj)rI}rJ(hUhhhhhjh}rK(jX-h]h]h]h]h]uhKhhh]rLj)rM}rN(hX[Remove the BOARD_INIT_PINMUX_CONFIG flag from the call to Board_init. Since the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections no longer actually exist, we must instruct the application that it is no longer safe to call the routines and access the data. Otherwise, the CPU will branch to and access undefined memory and cause various exceptions hjIhhhjh}rO(h]h]h]h]h]uhNhhh]rPh)rQ}rR(hXZRemove the BOARD_INIT_PINMUX_CONFIG flag from the call to Board_init. Since the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections no longer actually exist, we must instruct the application that it is no longer safe to call the routines and access the data. Otherwise, the CPU will branch to and access undefined memory and cause various exceptionsrShjMhhhhh}rT(h]h]h]h]h]uhKh]rUhXZRemove the BOARD_INIT_PINMUX_CONFIG flag from the call to Board_init. Since the BOARD_IO_DELAY_DATA/BOARD_IO_DELAY_CODE sections no longer actually exist, we must instruct the application that it is no longer safe to call the routines and access the data. Otherwise, the CPU will branch to and access undefined memory and cause various exceptionsrVrW}rX(hjShjQubaubaubaubeubhhhUsystem_messagerYh}rZ(h]UlevelKh]h]Usourcehh]h]UlineKUtypeUINFOr[uhKhhh]r\h)r]}r^(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}r_(h]h]h]h]h]uhhh]r`hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rarb}rc(hUhj]ubahhubaubh)rd}re(hUhhhhhjYh}rf(h]UlevelKh]h]Usourcehh]h]UlineKUtypeUWARNINGrguhKhhh]rhh)ri}rj(hX=Literal block ends without a blank line; unexpected unindent.h}rk(h]h]h]h]h]uhjdh]rlhX=Literal block ends without a blank line; unexpected unindent.rmrn}ro(hUhjiubahhubaubh)rp}rq(hUh}rr(h]UlevelKh]h]rsjaUsourcehh]h]UlineKUtypej[uhjh]rth)ru}rv(hX2Duplicate explicit target name: "clock tree tool".h}rw(h]h]h]h]h]uhjph]rxhX2Duplicate explicit target name: "clock tree tool".ryrz}r{(hUhjuubahhubahjYubh)r|}r}(hUhjZhhhjYh}r~(h]UlevelKh]h]rjaUsourcehh]h]UlineKUtypej[uhM*hhh]rh)r}r(hXBDuplicate explicit target name: "platform specific configuration".h}r(h]h]h]h]h]uhj|h]rhXBDuplicate explicit target name: "platform specific configuration".rr}r(hUhjubahhubaubh)r}r(hUhjLhhhjYh}r(h]UlevelKh]h]Usourcehh]h]UlineMlUtypejguhMkhhh]rh)r}r(hX=Literal block ends without a blank line; unexpected unindent.h}r(h]h]h]h]h]uhjh]rhX=Literal block ends without a blank line; unexpected unindent.rr}r(hUhjubahhubaubh)r}r(hUhjLhhhjYh}r(h]UlevelKh]h]Usourcehh]h]UlineMmUtypejguhMlhhh]rh)r}r(hX%Line block ends without a blank line.h}r(h]h]h]h]h]uhjh]rhX%Line block ends without a blank line.rr}r(hUhjubahhubaubh)r}r(hUhjhhhjYh}r(h]UlevelKh]h]rj aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX)Duplicate implicit target name: "pinmux".h}r(h]h]h]h]h]uhjh]rhX)Duplicate implicit target name: "pinmux".rr}r(hUhjubahhubaubh)r}r(hUhjhhhjYh}r(h]UlevelKh]h]Usourcehh]h]UlineMUtypejguhMhhh]rh)r}r(hX=Literal block ends without a blank line; unexpected unindent.h}r(h]h]h]h]h]uhjh]rhX=Literal block ends without a blank line; unexpected unindent.rr}r(hUhjubahhubaubh)r}r(hUhj hhhjYh}r(h]UlevelKh]h]rj aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX)Duplicate implicit target name: "pinmux".h}r(h]h]h]h]h]uhjh]rhX)Duplicate implicit target name: "pinmux".rr}r(hUhjubahhubaubh)r}r(hUhj< hhhjYh}r(h]UlevelKh]h]rjA aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX7Duplicate implicit target name: "serdes configuration".h}r(h]h]h]h]h]uhjh]rhX7Duplicate implicit target name: "serdes configuration".rr}r(hUhjubahhubaubh)r}r(hUhjb hhhjYh}r(h]UlevelKh]h]rjh aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX)Duplicate implicit target name: "pinmux".h}r(h]h]h]h]h]uhjh]rhX)Duplicate implicit target name: "pinmux".rr}r(hUhjubahhubaubh)r}r(hUhjb hhhjYh}r(h]UlevelKh]h]Usourcehh]h]UlineMUtypeUERRORruhMhhh]rh)r}r(hXUnexpected indentation.h}r(h]h]h]h]h]uhjh]rhXUnexpected indentation.rr}r(hUhjubahhubaubh)r}r(hUhj hhhjYh}r(h]UlevelKh]h]rj aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX)Duplicate implicit target name: "pinmux".h}r(h]h]h]h]h]uhjh]rhX)Duplicate implicit target name: "pinmux".rr}r(hUhjubahhubaubh)r}r(hUhj hhhjYh}r(h]UlevelKh]h]Usourcehh]h]UlineMUtypejguhMhhh]rh)r}r(hX=Literal block ends without a blank line; unexpected unindent.h}r(h]h]h]h]h]uhjh]rhX=Literal block ends without a blank line; unexpected unindent.rr}r(hUhjubahhubaubh)r}r(hUhjI hhhjYh}r(h]UlevelKh]h]rjO aUsourcehh]h]UlineMUtypej[uhMhhh]rh)r}r(hX)Duplicate implicit target name: "pinmux".h}r(h]h]h]h]h]uhjh]rhX)Duplicate implicit target name: "pinmux".rr}r(hUhjubahhubaubh)r}r (hUh}r (h]UlevelKh]h]r jaUsourcehh]h]UlineKUtypejguhjqh]r h)r }r(hX.Duplicate explicit target name: "pinmux tool".h}r(h]h]h]h]h]uhjh]rhX.Duplicate explicit target name: "pinmux tool".rr}r(hUhj ubahhubahjYubh)r}r(hUhjhhhjYh}r(h]UlevelKh]h]rjaUsourcehh]h]UlineKUtypej[uhMhhh]rh)r}r(hXJDuplicate explicit target name: "board library creation with custom name".h}r(h]h]h]h]h]uhjh]rhXJDuplicate explicit target name: "board library creation with custom name".rr}r(hUhjubahhubaubh)r }r!(hUhh)r"}r#(hUhh)r$}r%(hUhh)r&}r'(hUhhhhhhh}r((h]h]h]h]r)U diagnosticsr*ah]r+hauhKhhh]r,(h)r-}r.(hX Diagnosticsr/hj&hhhhh}r0(h]h]h]h]h]uhKhhh]r1hX Diagnosticsr2r3}r4(hj/hj-ubaubh)r5}r6(hX?http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_DIAGhj&hhXUsource/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Diagnostics.rst.incr7r8}r9bhhh}r:(hhh]h]h]h]h]uhKhhh]r;hX?http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_DIAGr<r=}r>(hUhj5ubaubh)r?}r@(hUhKhj&hj8hhh}rA(h]rBXoverviewrCah]h]h]rDUoverviewrEah]uhKhhh]rF(h)rG}rH(hXOverviewrIhj?hj8hhh}rJ(h]h]h]h]h]uhKhhh]rKhXOverviewrLrM}rN(hjIhjGubaubh)rO}rP(hXThe Processor SDK RTOS Diagnostic package is designed to be a set of baremetal tests to run on a given board to provide data path continuity testing on peripherals. For K2H/K2E/K2L/C66x devices, this functionality is provided by `POST `__.hj?hj8hhh}rQ(h]h]h]h]h]uhKhhh]rR(hXThe Processor SDK RTOS Diagnostic package is designed to be a set of baremetal tests to run on a given board to provide data path continuity testing on peripherals. For K2H/K2E/K2L/C66x devices, this functionality is provided by rSrT}rU(hXThe Processor SDK RTOS Diagnostic package is designed to be a set of baremetal tests to run on a given board to provide data path continuity testing on peripherals. For K2H/K2E/K2L/C66x devices, this functionality is provided by hjOubj)rV}rW(hX.`POST `__h}rX(UnameXPOSTjX#index_board.html#power-on-self-testh]h]h]h]h]uhjOh]rYhXPOSTrZr[}r\(hUhjVubahj ubhX.r]}r^(hX.hjOubeubeubh)r_}r`(hUhj&hj8hhh}ra(h]h]h]h]rbUbuilding-the-examplesrcah]rdhOauhK hhh]re(h)rf}rg(hXBuilding the Examplesrhhj_hj8hhh}ri(h]h]h]h]h]uhK hhh]rjhXBuilding the Examplesrkrl}rm(hjhhjfubaubh)rn}ro(hUhj_hj8hhh}rp(h]h]h]h]rqUpre-requisites-to-buildingrrah]rsh auhKhhh]rt(h)ru}rv(hXPre-requisites to Buildingrwhjnhj8hhh}rx(h]h]h]h]h]uhKhhh]ryhXPre-requisites to Buildingrzr{}r|(hjwhjuubaubj)r}}r~(hUhjnhj8hjh}r(jU.h]h]h]jUh]h]jjuhKhhh]r(j)r}r(hX'Set your environment using pdksetupenv.bat or pdksetupenv.sh. The diagnostic application uses the same environment variables as the board library build. Refer to the `Processor SDK RTOS Building `__ page for information on setting up your build environment.hj}hj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX'Set your environment using pdksetupenv.bat or pdksetupenv.sh. The diagnostic application uses the same environment variables as the board library build. Refer to the `Processor SDK RTOS Building `__ page for information on setting up your build environment.hjhj8hhh}r(h]h]h]h]h]uhKh]r(hXSet your environment using pdksetupenv.bat or pdksetupenv.sh. The diagnostic application uses the same environment variables as the board library build. Refer to the rr}r(hXSet your environment using pdksetupenv.bat or pdksetupenv.sh. The diagnostic application uses the same environment variables as the board library build. Refer to the hjubj)r}r(hXF`Processor SDK RTOS Building `__h}r(UnameXProcessor SDK RTOS BuildingjX$index_overview.html#building-the-sdkh]h]h]h]h]uhjh]rhXProcessor SDK RTOS Buildingrr}r(hUhjubahj ubhX; page for information on setting up your build environment.rr}r(hX; page for information on setting up your build environment.hjubeubaubj)r}r(hX-You will need the following libraries built: hj}hj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX,You will need the following libraries built:rhjhj8hhh}r(h]h]h]h]h]uhKh]rhX,You will need the following libraries built:rr}r(hjhjubaubaubeubj)r}r(hUhjnhj8hjh}r(jX-h]h]h]h]h]uhKhhh]r(j)r}r(hXBoardrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXBoardrr}r(hjhjubaubaubj)r}r(hXUARTrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXUARTrr}r(hjhjubaubaubj)r}r(hXGPIOrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXGPIOrr}r(hjhjubaubaubj)r}r(hXI2Crhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXI2Crr}r(hjhjubaubaubj)r}r(hXSPIrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXSPIrr}r(hjhjubaubaubj)r}r(hXCSLrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXCSLrr}r(hjhjubaubaubj)r}r(hXICSSrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXICSSrr}r(hjhjubaubaubj)r}r(hXPRUSSrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXPRUSSrr}r(hjhjubaubaubj)r}r(hXMMCSDrhjhj8hjh}r (h]h]h]h]h]uhNhhh]r h)r }r (hjhjhj8hhh}r (h]h]h]h]h]uhK h]rhXMMCSDrr}r(hjhj ubaubaubj)r}r(hXEMACrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhK!h]rhXEMACrr}r(hjhjubaubaubj)r}r(hXUSBr hjhj8hjh}r!(h]h]h]h]h]uhNhhh]r"h)r#}r$(hj hjhj8hhh}r%(h]h]h]h]h]uhK"h]r&hXUSBr'r(}r)(hj hj#ubaubaubj)r*}r+(hXUDMAr,hjhj8hjh}r-(h]h]h]h]h]uhNhhh]r.h)r/}r0(hj,hj*hj8hhh}r1(h]h]h]h]h]uhK#h]r2hXUDMAr3r4}r5(hj,hj/ubaubaubj)r6}r7(hX SCICLIENT hjhj8hjh}r8(h]h]h]h]h]uhNhhh]r9h)r:}r;(hX SCICLIENTr<hj6hj8hhh}r=(h]h]h]h]h]uhK$h]r>hX SCICLIENTr?r@}rA(hj<hj:ubaubaubeubh)rB}rC(hX(Note: not every library is used for every application, and these libraries should come pre-built with any fresh installation of the Processor SDK)rDhjnhj8hhh}rE(h]h]h]h]h]uhK&hhh]rFhX(Note: not every library is used for every application, and these libraries should come pre-built with any fresh installation of the Processor SDK)rGrH}rI(hjDhjBubaubeubh)rJ}rK(hUhj_hj8hhh}rL(h]h]h]h]rMU%compiling-the-diagnostic-applicationsrNah]rOhZauhK+hhh]rP(h)rQ}rR(hX%Compiling the Diagnostic ApplicationsrShjJhj8hhh}rT(h]h]h]h]h]uhK+hhh]rUhX%Compiling the Diagnostic ApplicationsrVrW}rX(hjShjQubaubh)rY}rZ(hX!To build the diagnostic examples:r[hjJhj8hhh}r\(h]h]h]h]h]uhK-hhh]r]hX!To build the diagnostic examples:r^r_}r`(hj[hjYubaubj)ra}rb(hUhjJhj8hjh}rc(jU.h]h]h]jUh]h]jjuhK/hhh]rd(j)re}rf(hX#**cd /packages/ti/board/diag**rghjahj8hjh}rh(h]h]h]h]h]uhNhhh]rih)rj}rk(hjghjehj8hhh}rl(h]h]h]h]h]uhK/h]rmjw)rn}ro(hjgh}rp(h]h]h]h]h]uhjjh]rqhXcd /packages/ti/board/diagrrrs}rt(hUhjnubahjubaubaubj)ru}rv(hX**make ** hjahj8hjh}rw(h]h]h]h]h]uhNhhh]rxh)ry}rz(hX**make **r{hjuhj8hhh}r|(h]h]h]h]h]uhK0h]r}jw)r~}r(hj{h}r(h]h]h]h]h]uhjyh]rhX make rr}r(hUhj~ubahjubaubaubeubh)r}r(hXThis will make the diagnostic applications for a specific $BOARD. Output files will be located in: **/packages/ti/board/bin/**hjJhj8hhh}r(h]h]h]h]h]uhK2hhh]r(hXcThis will make the diagnostic applications for a specific $BOARD. Output files will be located in: rr}r(hXcThis will make the diagnostic applications for a specific $BOARD. Output files will be located in: hjubjw)r}r(hX'**/packages/ti/board/bin/**h}r(h]h]h]h]h]uhjh]rhX#/packages/ti/board/bin/rr}r(hUhjubahjubeubeubh)r}r(hUhj_hj8hhh}r(h]h]h]h]rU#creating-the-sd-card-loadable-filesrah]rhauhK6hhh]r(h)r}r(hX#Creating the SD Card Loadable Filesrhjhj8hhh}r(h]h]h]h]h]uhK6hhh]rhX#Creating the SD Card Loadable Filesrr}r(hjhjubaubh)r}r(hXFor converting the compiled .out files to a format loadable by TI's Secondary Boot Loader (SBL), you must follow these two steps:rhjhj8hhh}r(h]h]h]h]h]uhK8hhh]rhXFor converting the compiled .out files to a format loadable by TI's Secondary Boot Loader (SBL), you must follow these two steps:rr}r(hjhjubaubj)r}r(hUhjhj8hjh}r(jU.h]h]h]jUh]h]jjuhK;hhh]r(j)r}r(hX***out2rprc.exe [.out file] [rprc output]**rhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhK;h]rjw)r}r(hjh}r(h]h]h]h]h]uhjh]rhX&out2rprc.exe [.out file] [rprc output]rr}r(hUhjubahjubaubaubj)r}r(hX>**MulticoreImageGen.exe LE 55 [output name] 0 [rprc output]** hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX=**MulticoreImageGen.exe LE 55 [output name] 0 [rprc output]**rhjhj8hhh}r(h]h]h]h]h]uhK/packages/ti/boot/sbl/tools** folder. "rprc output" can be any spare name of your choosing. "output name" can also be any name of your choosing. **For diagnostic applications, your final output name must have the keyword "TEST" in it.** You will have to do this process for every .out application you wish to be loadable on the SD card.hjhj8hhh}r(h]h]h]h]h]uhK>hhh]r(hXZOut2rprc.exe and MulticoreImageGen.exe are tools supplied by TI and can be located in the rr}r(hXZOut2rprc.exe and MulticoreImageGen.exe are tools supplied by TI and can be located in the hjubjw)r}r(hX$**/packages/ti/boot/sbl/tools**h}r(h]h]h]h]h]uhjh]rhX /packages/ti/boot/sbl/toolsrr}r(hUhjubahjubhXt folder. "rprc output" can be any spare name of your choosing. "output name" can also be any name of your choosing. rr}r(hXt folder. "rprc output" can be any spare name of your choosing. "output name" can also be any name of your choosing. hjubjw)r}r(hX[**For diagnostic applications, your final output name must have the keyword "TEST" in it.**h}r(h]h]h]h]h]uhjh]rhXWFor diagnostic applications, your final output name must have the keyword "TEST" in it.rr}r(hUhjubahjubhXd You will have to do this process for every .out application you wish to be loadable on the SD card.rr}r(hXd You will have to do this process for every .out application you wish to be loadable on the SD card.hjubeubh)r}r(hXDAlternatively, there is also a make target to automate this process:rhjhj8hhh}r(h]h]h]h]h]uhKFhhh]rhXDAlternatively, there is also a make target to automate this process:rr}r(hjhjubaubj)r}r(hUhjhj8hjh}r(jU.h]h]h]jUh]h]jjuhKHhhh]r(j)r}r(hX#**cd /packages/ti/board/diag**rhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKHh]rjw)r}r(hjh}r(h]h]h]h]h]uhjh]rhXcd /packages/ti/board/diagrr}r(hUhjubahjubaubaubj)r}r(hX**make _sd** hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r }r (hX**make _sd**r hjhj8hhh}r (h]h]h]h]h]uhKIh]r jw)r}r(hj h}r(h]h]h]h]h]uhj h]rhXmake _sdrr}r(hUhjubahjubaubaubeubh)r}r(hX0This will compile all the applications for a specific $BOARD, and also create the SD card loadable files. The output files will be located in: **/packages/ti/board/bin//sd**. Note that the framework application is named "app" to allow it to be the default application to be loaded by the SBL.hjhj8hhh}r(h]h]h]h]h]uhKKhhh]r(hXThis will compile all the applications for a specific $BOARD, and also create the SD card loadable files. The output files will be located in: rr}r(hXThis will compile all the applications for a specific $BOARD, and also create the SD card loadable files. The output files will be located in: hjubjw)r}r(hX***/packages/ti/board/bin//sd**h}r(h]h]h]h]h]uhjh]rhX&/packages/ti/board/bin//sdr r!}r"(hUhjubahjubhXw. Note that the framework application is named "app" to allow it to be the default application to be loaded by the SBL.r#r$}r%(hXw. Note that the framework application is named "app" to allow it to be the default application to be loaded by the SBL.hjubeubj)r&}r'(hXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.hjhj8hjh}r((h]h]h]h]h]uhNhhh]r)h)r*}r+(hXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.r,hj&hj8hhh}r-(h]h]h]h]h]uhKRh]r.hXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.r/r0}r1(hj,hj*ubaubaubeubh)r2}r3(hUhj_hj8hhh}r4(h]h]h]h]r5U%creating-the-spi-flash-loadable-filesr6ah]r7h auhKWhhh]r8(h)r9}r:(hX%Creating the SPI Flash Loadable Filesr;hj2hj8hhh}r<(h]h]h]h]h]uhKWhhh]r=hX%Creating the SPI Flash Loadable Filesr>r?}r@(hj;hj9ubaubh)rA}rB(hX<SPI boot shall be the primary boot option for the platforms (Ex: AMIC110 ICE) which does not support SD card interface. All the diagnostic tests are integrated into framework binary for the ease of use in the case of SPI boot. Integrated diagnostic framework test binary can be loaded and executed through UART port.rChj2hj8hhh}rD(h]h]h]h]h]uhKYhhh]rEhX<SPI boot shall be the primary boot option for the platforms (Ex: AMIC110 ICE) which does not support SD card interface. All the diagnostic tests are integrated into framework binary for the ease of use in the case of SPI boot. Integrated diagnostic framework test binary can be loaded and executed through UART port.rFrG}rH(hjChjAubaubh)rI}rJ(hXTUse below command to build the diagnostic tests and create SPI flash loadable files.rKhj2hj8hhh}rL(h]h]h]h]h]uhK_hhh]rMhXTUse below command to build the diagnostic tests and create SPI flash loadable files.rNrO}rP(hjKhjIubaubj)rQ}rR(hUhj2hj8hjh}rS(jX-h]h]h]h]h]uhKbhhh]rTj)rU}rV(hX**make _spi** hjQhj8hjh}rW(h]h]h]h]h]uhNhhh]rXh)rY}rZ(hX**make _spi**r[hjUhj8hhh}r\(h]h]h]h]h]uhKbh]r]jw)r^}r_(hj[h}r`(h]h]h]h]h]uhjYh]rahXmake _spirbrc}rd(hUhj^ubahjubaubaubaubj1)re}rf(hUhj2hj8hj4h}rg(h]h]h]h]h]uhKdhhh]rhj7)ri}rj(hUj:Khjehj8hhh}rk(h]h]h]h]h]uhKhhh]ubaubeubh)rl}rm(hUhj_hj8hhh}rn(h]h]h]h]roU make-targetsrpah]rqheauhKghhh]rr(h)rs}rt(hX Make targetsruhjlhj8hhh}rv(h]h]h]h]h]uhKghhh]rwhX Make targetsrxry}rz(hjuhjsubaubh)r{}r|(hXThe simplest invocation is to use "make " to compile all the applications. Here is a list of make targets implemented for the diagnostic makefile:r}hjlhj8hhh}r~(h]h]h]h]h]uhKihhh]rhXThe simplest invocation is to use "make " to compile all the applications. Here is a list of make targets implemented for the diagnostic makefile:rr}r(hj}hj{ubaubj)r}r(hUhjlhj8hjh}r(jX-h]h]h]h]h]uhKmhhh]r(j)r}r(hXM**make ** - compile all diagnostic applications for one specific BOARDhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXM**make ** - compile all diagnostic applications for one specific BOARDhjhj8hhh}r(h]h]h]h]h]uhKmh]r(jw)r}r(hX**make **h}r(h]h]h]h]h]uhjh]rhX make rr}r(hUhjubahjubhX= - compile all diagnostic applications for one specific BOARDrr}r(hX= - compile all diagnostic applications for one specific BOARDhjubeubaubj)r}r(hXK**make clean** - clean and remove all applications for all supported BOARDshjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXK**make clean** - clean and remove all applications for all supported BOARDshjhj8hhh}r(h]h]h]h]h]uhKoh]r(jw)r}r(hX**make clean**h}r(h]h]h]h]h]uhjh]rhX make cleanrr}r(hUhjubahjubhX= - clean and remove all applications for all supported BOARDsrr}r(hX= - clean and remove all applications for all supported BOARDshjubeubaubj)r}r(hXP**make _clean** - clean and remove all application for one specific BOARDhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXP**make _clean** - clean and remove all application for one specific BOARDhjhj8hhh}r(h]h]h]h]h]uhKqh]r(jw)r}r(hX**make _clean**h}r(h]h]h]h]h]uhjh]rhXmake _cleanrr}r(hUhjubahjubhX: - clean and remove all application for one specific BOARDrr}r(hX: - clean and remove all application for one specific BOARDhjubeubaubj)r}r(hX**make _sd** - compile all diagnostic applications for one specific BOARD and create the SD card loadable files with those compiled applicationshjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX**make _sd** - compile all diagnostic applications for one specific BOARD and create the SD card loadable files with those compiled applicationshjhj8hhh}r(h]h]h]h]h]uhKsh]r(jw)r}r(hX**make _sd**h}r(h]h]h]h]h]uhjh]rhXmake _sdrr}r(hUhjubahjubhX - compile all diagnostic applications for one specific BOARD and create the SD card loadable files with those compiled applicationsrr}r(hX - compile all diagnostic applications for one specific BOARD and create the SD card loadable files with those compiled applicationshjubeubaubj)r}r(hX**make _spi** - compile all diagnostic applications for one specific BOARD and create the SPI flash loadable files with those compiled applications hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX**make _spi** - compile all diagnostic applications for one specific BOARD and create the SPI flash loadable files with those compiled applicationshjhj8hhh}r(h]h]h]h]h]uhKvh]r(jw)r}r(hX**make _spi**h}r(h]h]h]h]h]uhjh]rhXmake _spirr}r(hUhjubahjubhX - compile all diagnostic applications for one specific BOARD and create the SPI flash loadable files with those compiled applicationsrr}r(hX - compile all diagnostic applications for one specific BOARD and create the SPI flash loadable files with those compiled applicationshjubeubaubeubh)r}r(hXThe supported depends on your Processor SDK RTOS variant. Refer to following table for available for each Processor SDK RTOS variant:rhjlhj8hhh}r(h]h]h]h]h]uhKzhhh]rhXThe supported depends on your Processor SDK RTOS variant. Refer to following table for available for each Processor SDK RTOS variant:rr}r(hjhjubaubj)r}r(hUhjlhj8hj h}r(h]h]h]h]h]uhNhhh]rj)r}r(hUh}r(h]h]h]h]h]UcolsKuhjh]r(j)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj)r}r(hUh}r(h]h]h]h]h]UcolwidthK uhjh]hjubj3)r}r(hUh}r(h]h]h]h]h]uhjh]r j8)r }r (hUh}r (h]h]h]h]h]uhjh]r (j=)r}r(hUh}r(h]h]h]h]h]uhj h]rh)r}r(hXmake target / Variantrhjhj8hhh}r(h]h]h]h]h]uhKh]rhXmake target / Variantrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj h]rh)r}r(hXam335xr hjhj8hhh}r!(h]h]h]h]h]uhKh]r"hXam335xr#r$}r%(hj hjubaubahjJubj=)r&}r'(hUh}r((h]h]h]h]h]uhj h]r)h)r*}r+(hXam437xr,hj&hj8hhh}r-(h]h]h]h]h]uhKh]r.hXam437xr/r0}r1(hj,hj*ubaubahjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhj h]r5h)r6}r7(hXam57xxr8hj2hj8hhh}r9(h]h]h]h]h]uhKh]r:hXam57xxr;r<}r=(hj8hj6ubaubahjJubj=)r>}r?(hUh}r@(h]h]h]h]h]uhj h]rAh)rB}rC(hXk2grDhj>hj8hhh}rE(h]h]h]h]h]uhKh]rFhXk2grGrH}rI(hjDhjBubaubahjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhj h]rMh)rN}rO(hXomapl13xrPhjJhj8hhh}rQ(h]h]h]h]h]uhKh]rRhXomapl13xrSrT}rU(hjPhjNubaubahjJubj=)rV}rW(hUh}rX(h]h]h]h]h]uhj h]rYh)rZ}r[(hXAM65xxr\hjVhj8hhh}r](h]h]h]h]h]uhKh]r^hXAM65xxr_r`}ra(hj\hjZubaubahjJubehjubahjubj)rb}rc(hUh}rd(h]h]h]h]h]uhjh]rej8)rf}rg(hUh}rh(h]h]h]h]h]uhjbh]ri(j=)rj}rk(hUh}rl(h]h]h]h]h]uhjfh]rmh)rn}ro(hXrphjjhj8hhh}rq(h]h]h]h]h]uhKh]rrhXrsrt}ru(hjphjnubaubahjJubj=)rv}rw(hUh}rx(h]h]h]h]h]uhjfh]ryh)rz}r{(hX5evmAM335x skAM335x bbbAM335x icev2AM33 5x iceAMIC11 0r|hjvhj8hhh}r}(h]h]h]h]h]uhKh]r~hX5evmAM335x skAM335x bbbAM335x icev2AM33 5x iceAMIC11 0rr}r(hj|hjzubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjfh]rh)r}r(hXevmAM437x skAM437x idkAM437xrhjhj8hhh}r(h]h]h]h]h]uhKh]rhXevmAM437x skAM437x idkAM437xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjfh]rh)r}r(hX'idkAM572x idkAM571x evmAM572x idkAM574xrhjhj8hhh}r(h]h]h]h]h]uhKh]rhX'idkAM572x idkAM571x evmAM572x idkAM574xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjfh]rh)r}r(hX evmK2G iceK2Grhjhj8hhh}r(h]h]h]h]h]uhKh]rhX evmK2G iceK2Grr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjfh]r(h)r}r(hXevmOMAPL1 37 (No Boot support.rhjhj8hhh}r(h]h]h]h]h]uhKh]rhXevmOMAPL1 37 (No Boot support.rr}r(hjhjubaubh)r}r(hX"Diagnosti cs need to run from CCS)rhjhj8hhh}r(h]h]h]h]h]uhKh]rhX"Diagnosti cs need to run from CCS)rr}r(hjhjubaubehjJubj=)r}r(hUh}r(h]h]h]h]h]uhjfh]rh)r}r(hX/am65xx_evm am65xx_idk (Supports A53 & R5 cores)rhjhj8hhh}r(h]h]h]h]h]uhKh]rhX/am65xx_evm am65xx_idk (Supports A53 & R5 cores)rr}r(hjhjubaubahjJubehjubahjUubehjVubaubj)r}r(hXOMAPL137 EVM diagnostic tests does not support executing from a boot device. Use the command **make evmOMAPL137** to build the diagnostics. Diagnostics test binaries need to be executed from CCS.hjlhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXOMAPL137 EVM diagnostic tests does not support executing from a boot device. Use the command **make evmOMAPL137** to build the diagnostics. Diagnostics test binaries need to be executed from CCS.hjhj8hhh}r(h]h]h]h]h]uhKh]r(hX]OMAPL137 EVM diagnostic tests does not support executing from a boot device. Use the command rr}r(hX]OMAPL137 EVM diagnostic tests does not support executing from a boot device. Use the command hjubjw)r}r(hX**make evmOMAPL137**h}r(h]h]h]h]h]uhjh]rhXmake evmOMAPL137rr}r(hUhjubahjubhXR to build the diagnostics. Diagnostics test binaries need to be executed from CCS.rr}r(hXR to build the diagnostics. Diagnostics test binaries need to be executed from CCS.hjubeubaubeubeubh)r}r(hUhj&hj8hhh}r(h]h]h]h]rUrunning-the-diagnostic-examplesrah]rhQauhKhhh]r(h)r}r(hXRunning the Diagnostic Examplesrhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhXRunning the Diagnostic Examplesrr}r(hjhjubaubh)r}r(hUhjhj8hhh}r(h]h]h]h]rU&loading-through-sd-card-default-methodrah]rhxauhKhhh]r(h)r}r(hX(Loading through SD Card (Default Method)rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX(Loading through SD Card (Default Method)rr}r(hjhjubaubh)r}r(hXYour SD card must be set up to a bootable format. Refer to the `Processor SDK RTOS Boot `__ page for information on how the SD card is handled.hjhj8hhh}r(h]h]h]h]h]uhKhhh]r(hX?Your SD card must be set up to a bootable format. Refer to the rr}r(hX?Your SD card must be set up to a bootable format. Refer to the hjubj)r}r(hXE`Processor SDK RTOS Boot `__h}r(UnameXProcessor SDK RTOS BootjX'index_Foundational_Components.html#booth]h]h]h]h]uhjh]rhXProcessor SDK RTOS Bootrr}r(hUhjubahj ubhX4 page for information on how the SD card is handled.rr}r (hX4 page for information on how the SD card is handled.hjubeubh)r }r (hXYou will need to compile the diagnostic applications for your BOARD, created their respective SD card loadable files, and copied them onto an SD card. You will also need the SBL (renamed to "MLO") on the SD card. To do so:r hjhj8hhh}r (h]h]h]h]h]uhKhhh]rhXYou will need to compile the diagnostic applications for your BOARD, created their respective SD card loadable files, and copied them onto an SD card. You will also need the SBL (renamed to "MLO") on the SD card. To do so:rr}r(hj hj ubaubj)r}r(hUhjhj8hjh}r(jU.h]h]h]jUh]h]jjuhKhhh]r(j)r}r(hXcd /packages/ti/board/diagrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhXcd /packages/ti/board/diagrr }r!(hjhjubaubaubj)r"}r#(hXmake _sdr$hjhj8hjh}r%(h]h]h]h]h]uhNhhh]r&h)r'}r((hj$hj"hj8hhh}r)(h]h]h]h]h]uhKh]r*hXmake _sdr+r,}r-(hj$hj'ubaubaubj)r.}r/(hXQcopy all the content under /packages/ti/board/bin//sd to your SD cardhjhj8hjh}r0(h]h]h]h]h]uhNhhh]r1h)r2}r3(hXQcopy all the content under /packages/ti/board/bin//sd to your SD cardr4hj.hj8hhh}r5(h]h]h]h]h]uhKh]r6hXQcopy all the content under /packages/ti/board/bin//sd to your SD cardr7r8}r9(hj4hj2ubaubaubj)r:}r;(hXacopy the MLO to your SD card (default location at /packages/ti/boot/sbl/binary//mmcsdhjhj8hjh}r<(h]h]h]h]h]uhNhhh]r=h)r>}r?(hXacopy the MLO to your SD card (default location at /packages/ti/boot/sbl/binary//mmcsdr@hj:hj8hhh}rA(h]h]h]h]h]uhKh]rBhXacopy the MLO to your SD card (default location at /packages/ti/boot/sbl/binary//mmcsdrCrD}rE(hj@hj>ubaubaubj)rF}rG(hX;insert your SD card into your board and power on your boardrHhjhj8hjh}rI(h]h]h]h]h]uhNhhh]rJh)rK}rL(hjHhjFhj8hhh}rM(h]h]h]h]h]uhKh]rNhX;insert your SD card into your board and power on your boardrOrP}rQ(hjHhjKubaubaubj)rR}rS(hXSopen Terminal emulator program eg: Teraterm to connect to the board's UART console hjhj8hjh}rT(h]h]h]h]h]uhNhhh]rUh)rV}rW(hXRopen Terminal emulator program eg: Teraterm to connect to the board's UART consolerXhjRhj8hhh}rY(h]h]h]h]h]uhKh]rZhXRopen Terminal emulator program eg: Teraterm to connect to the board's UART consoler[r\}r](hjXhjVubaubaubeubj)r^}r_(hXUse MAIN UART0 console for running the tests on A53 core and MCU UART console for running the tests on R5 core for AM65xx platform.hjhj8hjh}r`(h]h]h]h]h]uhNhhh]rah)rb}rc(hXUse MAIN UART0 console for running the tests on A53 core and MCU UART console for running the tests on R5 core for AM65xx platform.rdhj^hj8hhh}re(h]h]h]h]h]uhKh]rfhXUse MAIN UART0 console for running the tests on A53 core and MCU UART console for running the tests on R5 core for AM65xx platform.rgrh}ri(hjdhjbubaubaubj)rj}rk(hUhjhj8hjh}rl(jU.h]h]h]jUh]h]jjuhKhhh]rmj)rn}ro(hX>press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly) hjjhj8hjh}rp(h]h]h]h]h]uhNhhh]rqh)rr}rs(hX=press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly)rthjnhj8hhh}ru(h]h]h]h]h]uhKh]rvhX=press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly)rwrx}ry(hjthjrubaubaubaubj)rz}r{(hXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.hjhj8hjh}r|(h]h]h]h]h]uhNhhh]r}h)r~}r(hXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.rhjzhj8hhh}r(h]h]h]h]h]uhKh]rhXDiagnostic tests on AM65xx platform supports A53 and R5 cores. A53 binary path: /packages/ti/board/bin//sd/armv8. R5 binary path: /packages/ti/board/bin//sd/armv7.rr}r(hjhj~ubaubaubj)r}r(hX]SBL binary name is different on AM65xx platform and requires system firmware binary also to be copied to SD card. Copy the sbl_mmcsd_img_mcu1_0_release.tiimage file from /packages/ti/boot/sbl/binary/mmcsd/ to SD card and rename it to tiboot3.bin. Copy the system firmware image /packages/ti/drv/sciclient/soc/V0/sysfw.bin to SD cardhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX]SBL binary name is different on AM65xx platform and requires system firmware binary also to be copied to SD card. Copy the sbl_mmcsd_img_mcu1_0_release.tiimage file from /packages/ti/boot/sbl/binary/mmcsd/ to SD card and rename it to tiboot3.bin. Copy the system firmware image /packages/ti/drv/sciclient/soc/V0/sysfw.bin to SD cardrhjhj8hhh}r(h]h]h]h]h]uhKh]rhX]SBL binary name is different on AM65xx platform and requires system firmware binary also to be copied to SD card. Copy the sbl_mmcsd_img_mcu1_0_release.tiimage file from /packages/ti/boot/sbl/binary/mmcsd/ to SD card and rename it to tiboot3.bin. Copy the system firmware image /packages/ti/drv/sciclient/soc/V0/sysfw.bin to SD cardrr}r(hjhjubaubaubh)r}r(hX^You should see the following screen when board is bootted with diagnostic binaries in SD card:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX^You should see the following screen when board is bootted with diagnostic binaries in SD card:rr}r(hjhjubaubj)r}r(hX&.. Image:: ../images/Diag-screen1.jpg hjhj8hjh}r(UuriXrtos/../images/Diag-screen1.jpgrh]h]h]h]j}rU*jsh]uhKhhh]ubh)r}r(hX]The framework diagnostic application should be loaded through SBL, and gives you the options:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX]The framework diagnostic application should be loaded through SBL, and gives you the options:rr}r(hjhjubaubj)r}r(hUhjhj8hjh}r(jX-h]h]h]h]h]uhKhhh]r(j)r}r(hX?help - prints the command menu and descriptions of the commandsrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhX?help - prints the command menu and descriptions of the commandsrr}r(hjhjubaubaubj)r}r(hX7run - run a diagnostic application found on the SD cardrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]rhX7run - run a diagnostic application found on the SD cardrr}r(hjhjubaubaubj)r}r(hX-status - current status of the framework run hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX,status - current status of the framework runrhjhj8hhh}r(h]h]h]h]h]uhKh]rhX,status - current status of the framework runrr}r(hjhjubaubaubeubh)r}r(hX8Below is an example of running a diagnostic application:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX8Below is an example of running a diagnostic application:rr}r(hjhjubaubj)r}r(hX&.. Image:: ../images/Diag-screen2.jpg hjhj8hjh}r(UuriXrtos/../images/Diag-screen2.jpgrh]h]h]h]j}rU*jsh]uhKhhh]ubh)r}r(hX Result of return from above run:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX Result of return from above run:rr}r(hjhjubaubj)r}r(hX&.. Image:: ../images/Diag-screen3.png hjhj8hjh}r(UuriXrtos/../images/Diag-screen3.pngrh]h]h]h]j}rU*jsh]uhKhhh]ubeubh)r}r(hUhjhj8hhh}r(h]h]h]h]rUloading-through-spi-flashrah]rhauhKhhh]r(h)r}r(hXLoading through SPI Flashrhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhXLoading through SPI Flashrr}r(hjhjubaubh)r}r(hXThis section describes creating the diagnostic test images for SPI flash booting, programming and running them from SPI flash. Currently SPI boot is supported only by iceAMIC110 platform.rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhXThis section describes creating the diagnostic test images for SPI flash booting, programming and running them from SPI flash. Currently SPI boot is supported only by iceAMIC110 platform.rr}r(hjhjubaubh)r}r(hXYou will need to compile the diagnostic applications for your BOARD, create their respective SPI flash loadable files, and program them onto SPI flash. To do so:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhXYou will need to compile the diagnostic applications for your BOARD, create their respective SPI flash loadable files, and program them onto SPI flash. To do so:rr}r(hjhjubaubj)r}r (hUhjhj8hjh}r (jU.h]h]h]jUh]h]jjuhKhhh]r (j)r }r (hXcd /packages/ti/board/diagrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhj hj8hhh}r(h]h]h]h]h]uhKh]rhXcd /packages/ti/board/diagrr}r(hjhjubaubaubj)r}r(hXmake _spirhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhKh]r hXmake _spir!r"}r#(hjhjubaubaubj)r$}r%(hXDStart CCS and launch target configuration file for AMIC110 ICE boardr&hjhj8hjh}r'(h]h]h]h]h]uhNhhh]r(h)r)}r*(hj&hj$hj8hhh}r+(h]h]h]h]h]uhKh]r,hXDStart CCS and launch target configuration file for AMIC110 ICE boardr-r.}r/(hj&hj)ubaubaubj)r0}r1(hXConnect the target, load and run the SPI flash writer binary. Prebuilt SPI flash writer is available at **\packages\ti\starterware\tools\flash_writer\spi_flash_writer_AM335X.out**hjhj8hjh}r2(h]h]h]h]h]uhNhhh]r3h)r4}r5(hXConnect the target, load and run the SPI flash writer binary. Prebuilt SPI flash writer is available at **\packages\ti\starterware\tools\flash_writer\spi_flash_writer_AM335X.out**hj0hj8hhh}r6(h]h]h]h]h]uhKh]r7(hXhConnect the target, load and run the SPI flash writer binary. Prebuilt SPI flash writer is available at r8r9}r:(hXhConnect the target, load and run the SPI flash writer binary. Prebuilt SPI flash writer is available at hj4ubjw)r;}r<(hXW**\packages\ti\starterware\tools\flash_writer\spi_flash_writer_AM335X.out**h}r=(h]h]h]h]h]uhj4h]r>hXMpackagestistarterwaretoolsflash_writerspi_flash_writer_AM335X.outr?r@}rA(hUhj;ubahjubeubaubj)rB}rC(hX*Choose option 1 to initiate image flashingrDhjhj8hjh}rE(h]h]h]h]h]uhNhhh]rFh)rG}rH(hjDhjBhj8hhh}rI(h]h]h]h]h]uhKh]rJhX*Choose option 1 to initiate image flashingrKrL}rM(hjDhjGubaubaubj)rN}rO(hXEnter the file name as SPI bootloader along with full path **(Ex: \packages\ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin)**hjhj8hjh}rP(h]h]h]h]h]uhNhhh]rQh)rR}rS(hXEnter the file name as SPI bootloader along with full path **(Ex: \packages\ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin)**hjNhj8hhh}rT(h]h]h]h]h]uhKh]rU(hX;Enter the file name as SPI bootloader along with full path rVrW}rX(hX;Enter the file name as SPI bootloader along with full path hjRubjw)rY}rZ(hX**(Ex: \packages\ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin)**h}r[(h]h]h]h]h]uhjRh]r\hXr(Ex: packagestistarterwarebinarybootloaderbinam335x-evmgccbootloader_boot_mcspi_a8host_release_ti.bin)r]r^}r_(hUhjYubahjubeubaubj)r`}ra(hXEnter offset as 0rbhjhj8hjh}rc(h]h]h]h]h]uhNhhh]rdh)re}rf(hjbhj`hj8hhh}rg(h]h]h]h]h]uhKh]rhhXEnter offset as 0rirj}rk(hjbhjeubaubaubj)rl}rm(hX*Wait until flashing completes successfullyrnhjhj8hjh}ro(h]h]h]h]h]uhNhhh]rph)rq}rr(hjnhjlhj8hhh}rs(h]h]h]h]h]uhKh]rthX*Wait until flashing completes successfullyrurv}rw(hjnhjqubaubaubj)rx}ry(hXRerun the SPI flash writer binary and program diagnostic framework loader at offset 20000. Diagnostic framework loader binary will be available at **\packages\ti\board\bin\iceAMIC110\spi\app**hjhj8hjh}rz(h]h]h]h]h]uhNhhh]r{h)r|}r}(hXRerun the SPI flash writer binary and program diagnostic framework loader at offset 20000. Diagnostic framework loader binary will be available at **\packages\ti\board\bin\iceAMIC110\spi\app**hjxhj8hhh}r~(h]h]h]h]h]uhKh]r(hXRerun the SPI flash writer binary and program diagnostic framework loader at offset 20000. Diagnostic framework loader binary will be available at rr}r(hXRerun the SPI flash writer binary and program diagnostic framework loader at offset 20000. Diagnostic framework loader binary will be available at hj|ubjw)r}r(hX9**\packages\ti\board\bin\iceAMIC110\spi\app**h}r(h]h]h]h]h]uhj|h]rhX.packagestiboardbiniceAMIC110spiapprr}r(hUhjubahjubeubaubj)r}r(hXRerun the SPI flash writer binary and program diagnostic framework at offset 40000. Diagnostic framework binary will be available at **\packages\ti\board\bin\iceAMIC110\spi\framework** hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXRerun the SPI flash writer binary and program diagnostic framework at offset 40000. Diagnostic framework binary will be available at **\packages\ti\board\bin\iceAMIC110\spi\framework**hjhj8hhh}r(h]h]h]h]h]uhKh]r(hXRerun the SPI flash writer binary and program diagnostic framework at offset 40000. Diagnostic framework binary will be available at rr}r(hXRerun the SPI flash writer binary and program diagnostic framework at offset 40000. Diagnostic framework binary will be available at hjubjw)r}r(hX?**\packages\ti\board\bin\iceAMIC110\spi\framework**h}r(h]h]h]h]h]uhjh]rhX4packagestiboardbiniceAMIC110spiframeworkrr}r(hUhjubahjubeubaubeubh)r}r(hX5Sample CCS output of SPI flash writer is shown below:rhjhj8hhh}r(h]h]h]h]h]uhKhhh]rhX5Sample CCS output of SPI flash writer is shown below:rr}r(hjhjubaubj)r}r(hX1.. Image:: ../images/Spi_flash_writer_output.jpg hjhj8hjh}r(UuriX*rtos/../images/Spi_flash_writer_output.jpgrh]h]h]h]j}rU*jsh]uhKhhh]ubj1)r}r(hUhjhj8hj4h}r(h]h]h]h]h]uhKhhh]rj7)r}r(hUj:Khjhj8hhh}r(h]h]h]h]h]uhKhhh]ubaubj)r}r(hUhjhj8hjh}r(jU.h]h]h]jUh]h]jjuhKhhh]r(j)r}r(hXRopen Terminal emulator program eg: Teraterm to connect to the board's UART consolehjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXRopen Terminal emulator program eg: Teraterm to connect to the board's UART consolerhjhj8hhh}r(h]h]h]h]h]uhKh]rhXRopen Terminal emulator program eg: Teraterm to connect to the board's UART consolerr}r(hjhjubaubaubj)r}r(hX>press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly) hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX=press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly)rhjhj8hhh}r(h]h]h]h]h]uhKh]rhX=press the "Hard Reset" button on your board. (This is to force re-booting, and not absolutely necessary. Because Terminal emulator program is opened after boot is powered on, you would've missed the initial printout messages. This step is for demonstration and confidence checking that the board has booted correctly)rr}r(hjhjubaubaubeubh)r}r(hX$You should see the following screen:rhjhj8hhh}r(h]h]h]h]h]uhMhhh]rhX$You should see the following screen:rr}r(hjhjubaubj)r}r(hX4.. Image:: ../images/Amic110_ice_spi_boot_diag1.jpg hjhj8hjh}r(UuriX-rtos/../images/Amic110_ice_spi_boot_diag1.jpgrh]h]h]h]j}rU*jsh]uhMhhh]ubj1)r}r(hUhjhj8hj4h}r(h]h]h]h]h]uhMhhh]r(j7)r}r(hUj:Khjhj8hhh}r(h]h]h]h]h]uhKhhh]ubj7)r}r(hX]The framework diagnostic application should be loaded through SBL, and gives you the options:rj:Khjhj8hhh}r(h]h]h]h]h]uhM hhh]rhX]The framework diagnostic application should be loaded through SBL, and gives you the options:rr}r(hjhjubaubeubj)r}r(hUhjhj8hjh}r(jX-h]h]h]h]h]uhM hhh]r(j)r}r(hX?help - prints the command menu and descriptions of the commandsrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhM h]rhX?help - prints the command menu and descriptions of the commandsrr}r(hjhjubaubaubj)r}r(hX7run - run a diagnostic application found on the SD cardrhjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhM h]rhX7run - run a diagnostic application found on the SD cardrr}r(hjhjubaubaubj)r}r(hX-status - current status of the framework run hjhj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r (hX,status - current status of the framework runr hjhj8hhh}r (h]h]h]h]h]uhMh]r hX,status - current status of the framework runr r}r(hj hjubaubaubeubh)r}r(hX8Below is an example of running a diagnostic application:rhjhj8hhh}r(h]h]h]h]h]uhMhhh]rhX8Below is an example of running a diagnostic application:rr}r(hjhjubaubj)r}r(hX4.. Image:: ../images/Amic110_ice_spi_boot_diag2.jpg hjhj8hjh}r(UuriX-rtos/../images/Amic110_ice_spi_boot_diag2.jpgrh]h]h]h]j}rU*jsh]uhMhhh]ubj1)r}r(hUhjhj8hj4h}r(h]h]h]h]h]uhMhhh]r (j7)r!}r"(hUj:Khjhj8hhh}r#(h]h]h]h]h]uhKhhh]ubj7)r$}r%(hX Result of return from above run:r&j:Khjhj8hhh}r'(h]h]h]h]h]uhMhhh]r(hX Result of return from above run:r)r*}r+(hj&hj$ubaubeubj)r,}r-(hX4.. Image:: ../images/Amic110_ice_spi_boot_diag3.jpg hjhj8hjh}r.(UuriX-rtos/../images/Amic110_ice_spi_boot_diag3.jpgr/h]h]h]h]j}r0U*j/sh]uhMhhh]ubj1)r1}r2(hUhjhj8hj4h}r3(h]h]h]h]h]uhMhhh]r4j7)r5}r6(hUj:Khj1hj8hhh}r7(h]h]h]h]h]uhKhhh]ubaubeubh)r8}r9(hUhjhj8hhh}r:(h]h]h]h]r;Urunning-or-debugging-on-ccsr<ah]r=h:auhMhhh]r>(h)r?}r@(hXRunning or debugging on CCSrAhj8hj8hhh}rB(h]h]h]h]h]uhMhhh]rChXRunning or debugging on CCSrDrE}rF(hjAhj?ubaubh)rG}rH(hXoTo debug your application, CCS can give you access to the chip's memory and register values. You can follow the below steps to load and run an application in CCS. If you have a SD card loadable image, and is able to load your application, you can connect to the A15 core in CCS and load symbols without having to load and run the entire application. After running "make all" or "make $BOARD", the output files should be generated under /packages/ti/board/bin/ directory. You will have to navigate down to the $BOARD you're building (eg. idkAM572x, evmAM572x, etc.) and the $TARGET core you're building for (eg. armv7).rIhj8hj8hhh}rJ(h]h]h]h]h]uhMhhh]rKhXoTo debug your application, CCS can give you access to the chip's memory and register values. You can follow the below steps to load and run an application in CCS. If you have a SD card loadable image, and is able to load your application, you can connect to the A15 core in CCS and load symbols without having to load and run the entire application. After running "make all" or "make $BOARD", the output files should be generated under /packages/ti/board/bin/ directory. You will have to navigate down to the $BOARD you're building (eg. idkAM572x, evmAM572x, etc.) and the $TARGET core you're building for (eg. armv7).rLrM}rN(hjIhjGubaubh)rO}rP(hX**For the existing diagnostic applications, you may need to define PDK_RAW_BOOT before compiling**. This is done by adding the line "#define PDK_RAW_BOOT" to an individual application source file or to /packages/ti/board/src//include/board_cfg.h to apply for all applications. This is used because the default diagnostic loading method is through SD card, and the pinmux is done already. Adding this option only forces the diagnostic applications to do pinmuxing within the application itself (and not depend it being done).hj8hj8hhh}rQ(h]h]h]h]h]uhM(hhh]rR(jw)rS}rT(hXb**For the existing diagnostic applications, you may need to define PDK_RAW_BOOT before compiling**h}rU(h]h]h]h]h]uhjOh]rVhX^For the existing diagnostic applications, you may need to define PDK_RAW_BOOT before compilingrWrX}rY(hUhjSubahjubhX. This is done by adding the line "#define PDK_RAW_BOOT" to an individual application source file or to /packages/ti/board/src//include/board_cfg.h to apply for all applications. This is used because the default diagnostic loading method is through SD card, and the pinmux is done already. Adding this option only forces the diagnostic applications to do pinmuxing within the application itself (and not depend it being done).rZr[}r\(hX. This is done by adding the line "#define PDK_RAW_BOOT" to an individual application source file or to /packages/ti/board/src//include/board_cfg.h to apply for all applications. This is used because the default diagnostic loading method is through SD card, and the pinmux is done already. Adding this option only forces the diagnostic applications to do pinmuxing within the application itself (and not depend it being done).hjOubeubh)r]}r^(hXTo run on CCS:r_hj8hj8hhh}r`(h]h]h]h]h]uhM1hhh]rahXTo run on CCS:rbrc}rd(hj_hj]ubaubj)re}rf(hUhj8hj8hjh}rg(jU.h]h]h]jUh]h]jjuhM3hhh]rh(j)ri}rj(hX%Connect USB cable to the board's JTAGrkhjehj8hjh}rl(h]h]h]h]h]uhNhhh]rmh)rn}ro(hjkhjihj8hhh}rp(h]h]h]h]h]uhM3h]rqhX%Connect USB cable to the board's JTAGrrrs}rt(hjkhjnubaubaubj)ru}rv(hXConnect the UART serial cable. For the IDK boards, the UART console is the same as the usb JTAG connector, so no additional cable is necessary.hjehj8hjh}rw(h]h]h]h]h]uhNhhh]rxh)ry}rz(hXConnect the UART serial cable. For the IDK boards, the UART console is the same as the usb JTAG connector, so no additional cable is necessary.r{hjuhj8hhh}r|(h]h]h]h]h]uhM4h]r}hXConnect the UART serial cable. For the IDK boards, the UART console is the same as the usb JTAG connector, so no additional cable is necessary.r~r}r(hj{hjyubaubaubj)r}r(hX Plug in power cord to your boardrhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhM7h]rhX Plug in power cord to your boardrr}r(hjhjubaubaubj)r}r(hX8Press the power button on the board to turn the board onrhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhM8h]rhX8Press the power button on the board to turn the board onrr}r(hjhjubaubaubj)r}r(hXSetup and run CCSv6.1 (or higher). Follow the `Processor SDK RTOS Getting Started Guide `__ on how to setup your CCS to connect to the boardhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXSetup and run CCSv6.1 (or higher). Follow the `Processor SDK RTOS Getting Started Guide `__ on how to setup your CCS to connect to the boardhjhj8hhh}r(h]h]h]h]h]uhM9h]r(hX.Setup and run CCSv6.1 (or higher). Follow the rr}r(hX.Setup and run CCSv6.1 (or higher). Follow the hjubj)r}r(hXk`Processor SDK RTOS Getting Started Guide `__h}r(UnameX(Processor SDK RTOS Getting Started GuidejX<index_overview.html#processor-sdk-rtos-getting-started-guideh]h]h]h]h]uhjh]rhX(Processor SDK RTOS Getting Started Guiderr}r(hUhjubahj ubhX1 on how to setup your CCS to connect to the boardrr}r(hX1 on how to setup your CCS to connect to the boardhjubeubaubj)r}r(hX)Launch target configuration for the boardrhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhM=h]rhX)Launch target configuration for the boardrr}r(hjhjubaubaubj)r}r(hXConnect to the core that you built your application for. For example: for idkAM572x armv7 projects, click on the Cortex A-15 MPU0 core and press the connect buttonhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXConnect to the core that you built your application for. For example: for idkAM572x armv7 projects, click on the Cortex A-15 MPU0 core and press the connect buttonrhjhj8hhh}r(h]h]h]h]h]uhM>h]rhXConnect to the core that you built your application for. For example: for idkAM572x armv7 projects, click on the Cortex A-15 MPU0 core and press the connect buttonrr}r(hjhjubaubaubj)r}r(hXmLoad the program by pressing the load button and navigate the explorer to the .out file that you want to loadhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXmLoad the program by pressing the load button and navigate the explorer to the .out file that you want to loadrhjhj8hhh}r(h]h]h]h]h]uhMAh]rhXmLoad the program by pressing the load button and navigate the explorer to the .out file that you want to loadrr}r(hjhjubaubaubj)r}r(hX'Press the Run button to run the programrhjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj8hhh}r(h]h]h]h]h]uhMCh]rhX'Press the Run button to run the programrr}r(hjhjubaubaubj)r}r(hXCheck UART console to see if anything is printed out. \**If nothing is printed out, pause the core and see where the program counter is at. If it is at 0x3808c (or near it), try reloading the program and running again. hjehj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXCheck UART console to see if anything is printed out. \**If nothing is printed out, pause the core and see where the program counter is at. If it is at 0x3808c (or near it), try reloading the program and running again.hjhj8hhh}r(h]h]h]h]h]uhMDh]rhXCheck UART console to see if anything is printed out. **If nothing is printed out, pause the core and see where the program counter is at. If it is at 0x3808c (or near it), try reloading the program and running again.rr}r(hXCheck UART console to see if anything is printed out. \**If nothing is printed out, pause the core and see where the program counter is at. If it is at 0x3808c (or near it), try reloading the program and running again.hjubaubaubeubj)r}r(hXUDiagnostics are built for both DSP (C674x) and ARM (arm9) cores on omapl13x platform.hj8hj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXUDiagnostics are built for both DSP (C674x) and ARM (arm9) cores on omapl13x platform.rhjhj8hhh}r(h]h]h]h]h]uhMIh]rhXUDiagnostics are built for both DSP (C674x) and ARM (arm9) cores on omapl13x platform.rr}r(hjhjubaubaubeubh)r}r(hUhjhj8hhh}r(h]h]h]h]rUrunning-on-a-different-arm-corerah]rhUauhMMhhh]r(h)r}r(hXRunning on a different ARM corerhjhj8hhh}r(h]h]h]h]h]uhMMhhh]rhXRunning on a different ARM corerr}r(hjhjubaubh)r}r(hXThe diagnostic baremetal applications are typically targeted for Core 0 of an ARM corepac. It is possible to load and run it on one of the subcores in CCS. To do so, please consider the following:rhjhj8hhh}r(h]h]h]h]h]uhMOhhh]rhXThe diagnostic baremetal applications are typically targeted for Core 0 of an ARM corepac. It is possible to load and run it on one of the subcores in CCS. To do so, please consider the following:r r }r (hjhjubaubj)r }r (hUhjhj8hjh}r(jU.h]h]h]jUh]h]jjuhMShhh]r(j)r}r(hXEnable Cache - setup typically only enables cache for the main ARM core. You may have to explicitly enable the data and instruction cache. See relevant cache functions under pdk/packages/ti/csl/arch.hj hj8hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXEnable Cache - setup typically only enables cache for the main ARM core. You may have to explicitly enable the data and instruction cache. See relevant cache functions under pdk/packages/ti/csl/arch.rhjhj8hhh}r(h]h]h]h]h]uhMSh]rhXEnable Cache - setup typically only enables cache for the main ARM core. You may have to explicitly enable the data and instruction cache. See relevant cache functions under pdk/packages/ti/csl/arch.rr}r(hjhjubaubaubj)r}r(hX6[For AM57x boards] Set OPP to high - SBL would set OPP to high for Core 0, but may not do it for the subcores. You can do so by using the GEL file. After connecting to the core, run the function under Scripts -> AM572x PRCM CLOCK configuration -> AM572x_PRCM_Clock_Config_OPPHIGH (similarly named for AM571x). hj hj8hjh}r(h]h]h]h]h]uhNhhh]rh)r }r!(hX5[For AM57x boards] Set OPP to high - SBL would set OPP to high for Core 0, but may not do it for the subcores. You can do so by using the GEL file. After connecting to the core, run the function under Scripts -> AM572x PRCM CLOCK configuration -> AM572x_PRCM_Clock_Config_OPPHIGH (similarly named for AM571x).r"hjhj8hhh}r#(h]h]h]h]h]uhMVh]r$hX5[For AM57x boards] Set OPP to high - SBL would set OPP to high for Core 0, but may not do it for the subcores. You can do so by using the GEL file. After connecting to the core, run the function under Scripts -> AM572x PRCM CLOCK configuration -> AM572x_PRCM_Clock_Config_OPPHIGH (similarly named for AM571x).r%r&}r'(hj"hj ubaubaubeubeubeubh)r(}r)(hUhKhj&hj8hhh}r*(h]r+Xdiagnostic applicationsr,ah]h]h]r-Udiagnostic-applicationsr.ah]uhM]hhh]r/(h)r0}r1(hXDiagnostic Applicationsr2hj(hj8hhh}r3(h]h]h]h]h]uhM]hhh]r4hXDiagnostic Applicationsr5r6}r7(hj2hj0ubaubj)r8}r9(hUhj(hj8hj h}r:(h]h]h]h]h]uhNhhh]r;j)r<}r=(hUh}r>(h]h]h]h]h]UcolsKuhj8h]r?(j)r@}rA(hUh}rB(h]h]h]h]h]UcolwidthK1uhj<h]hjubj)rC}rD(hUh}rE(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rF}rG(hUh}rH(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rI}rJ(hUh}rK(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rL}rM(hUh}rN(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rO}rP(hUh}rQ(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rR}rS(hUh}rT(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rU}rV(hUh}rW(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rX}rY(hUh}rZ(h]h]h]h]h]UcolwidthKuhj<h]hjubj)r[}r\(hUh}r](h]h]h]h]h]UcolwidthKuhj<h]hjubj)r^}r_(hUh}r`(h]h]h]h]h]UcolwidthKuhj<h]hjubj)ra}rb(hUh}rc(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rd}re(hUh}rf(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rg}rh(hUh}ri(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rj}rk(hUh}rl(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rm}rn(hUh}ro(h]h]h]h]h]UcolwidthKuhj<h]hjubj)rp}rq(hUh}rr(h]h]h]h]h]UcolwidthK uhj<h]hjubj)rs}rt(hUh}ru(h]h]h]h]h]UcolwidthK uhj<h]hjubj3)rv}rw(hUh}rx(h]h]h]h]h]uhj<h]ryj8)rz}r{(hUh}r|(h]h]h]h]h]uhjvh]r}(j=)r~}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hXNamerhj~hj8hhh}r(h]h]h]h]h]uhMah]rhXNamerr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX Descriptionrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX Descriptionrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX AM65xx EVMrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX AM65xx EVMrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX AM65xx IDKrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX AM65xx IDKrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX GP AM572xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX GP AM572xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hXIDK AM572x/AM574xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhXIDK AM572x/AM574xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX IDK AM571xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX IDK AM571xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hXEVM K2Grhjhj8hhh}r(h]h]h]h]h]uhMah]rhXEVM K2Grr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hXICE K2Grhjhj8hhh}r(h]h]h]h]h]uhMah]rhXICE K2Grr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX EVM AM335xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX EVM AM335xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX SK AM335xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX SK AM335xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX BBB AM335xrhjhj8hhh}r (h]h]h]h]h]uhMah]r hX BBB AM335xr r }r (hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX ICEv2 AM335xrhjhj8hhh}r(h]h]h]h]h]uhMah]rhX ICEv2 AM335xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjzh]rh)r}r(hX EVM AM437xr hjhj8hhh}r!(h]h]h]h]h]uhMah]r"hX EVM AM437xr#r$}r%(hj hjubaubahjJubj=)r&}r'(hUh}r((h]h]h]h]h]uhjzh]r)h)r*}r+(hX SK AM437xr,hj&hj8hhh}r-(h]h]h]h]h]uhMah]r.hX SK AM437xr/r0}r1(hj,hj*ubaubahjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhjzh]r5h)r6}r7(hX IDK AM437xr8hj2hj8hhh}r9(h]h]h]h]h]uhMah]r:hX IDK AM437xr;r<}r=(hj8hj6ubaubahjJubj=)r>}r?(hUh}r@(h]h]h]h]h]uhjzh]rAh)rB}rC(hX EVM OMAPL137rDhj>hj8hhh}rE(h]h]h]h]h]uhMah]rFhX EVM OMAPL137rGrH}rI(hjDhjBubaubahjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhjzh]rMh)rN}rO(hX ICE AMIC110rPhjJhj8hhh}rQ(h]h]h]h]h]uhMah]rRhX ICE AMIC110rSrT}rU(hjPhjNubaubahjJubehjubahjubj)rV}rW(hUh}rX(h]h]h]h]h]uhj<h]rY(j8)rZ}r[(hUh}r\(h]h]h]h]h]uhjVh]r](j=)r^}r_(hUh}r`(h]h]h]h]h]uhjZh]rah)rb}rc(hXlcdTouchscreen_TESTrdhj^hj8hhh}re(h]h]h]h]h]uhMfh]rfhXlcdTouchscreen_TESTrgrh}ri(hjdhjbubaubahjJubj=)rj}rk(hUh}rl(h]h]h]h]h]uhjZh]rmh)rn}ro(hX]Test for device detection and read the X, Y and Z axis values to confirm values within range.rphjjhj8hhh}rq(h]h]h]h]h]uhMeh]rrhX]Test for device detection and read the X, Y and Z axis values to confirm values within range.rsrt}ru(hjphjnubaubahjJubj=)rv}rw(hUh}rx(h]h]h]h]h]uhjZh]hjJubj=)ry}rz(hUh}r{(h]h]h]h]h]uhjZh]hjJubj=)r|}r}(hUh}r~(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMgh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMgh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMgh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMgh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjZh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXadc_TESTrhjhj8hhh}r(h]h]h]h]h]uhMoh]rhXadc_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXNTest for ADC configuration for Channel sequencing and One shot mode operation.rhjhj8hhh}r(h]h]h]h]h]uhMnh]rhXNTest for ADC configuration for Channel sequencing and One shot mode operation.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMoh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMoh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r (h]h]h]h]h]uhjh]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]hjJubj=)r }r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhj hj8hhh}r(h]h]h]h]h]uhMoh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMoh]rhXxr}r (hXxhjubaubahjJubj=)r!}r"(hUh}r#(h]h]h]h]h]uhjh]hjJubj=)r$}r%(hUh}r&(h]h]h]h]h]uhjh]hjJubj=)r'}r((hUh}r)(h]h]h]h]h]uhjh]hjJubehjubj8)r*}r+(hUh}r,(h]h]h]h]h]uhjVh]r-(j=)r.}r/(hUh}r0(h]h]h]h]h]uhj*h]r1h)r2}r3(hX ambient_TESTr4hj.hj8hhh}r5(h]h]h]h]h]uhMvh]r6hX ambient_TESTr7r8}r9(hj4hj2ubaubahjJubj=)r:}r;(hUh}r<(h]h]h]h]h]uhj*h]r=h)r>}r?(hXCTest for device detection on board and working of the light sensor.r@hj:hj8hhh}rA(h]h]h]h]h]uhMuh]rBhXCTest for device detection on board and working of the light sensor.rCrD}rE(hj@hj>ubaubahjJubj=)rF}rG(hUh}rH(h]h]h]h]h]uhj*h]hjJubj=)rI}rJ(hUh}rK(h]h]h]h]h]uhj*h]hjJubj=)rL}rM(hUh}rN(h]h]h]h]h]uhj*h]hjJubj=)rO}rP(hUh}rQ(h]h]h]h]h]uhj*h]hjJubj=)rR}rS(hUh}rT(h]h]h]h]h]uhj*h]hjJubj=)rU}rV(hUh}rW(h]h]h]h]h]uhj*h]hjJubj=)rX}rY(hUh}rZ(h]h]h]h]h]uhj*h]hjJubj=)r[}r\(hUh}r](h]h]h]h]h]uhj*h]r^h)r_}r`(hXxhj[hj8hhh}ra(h]h]h]h]h]uhMvh]rbhXxrc}rd(hXxhj_ubaubahjJubj=)re}rf(hUh}rg(h]h]h]h]h]uhj*h]hjJubj=)rh}ri(hUh}rj(h]h]h]h]h]uhj*h]hjJubj=)rk}rl(hUh}rm(h]h]h]h]h]uhj*h]hjJubj=)rn}ro(hUh}rp(h]h]h]h]h]uhj*h]rqh)rr}rs(hXxhjnhj8hhh}rt(h]h]h]h]h]uhMvh]ruhXxrv}rw(hXxhjrubaubahjJubj=)rx}ry(hUh}rz(h]h]h]h]h]uhj*h]hjJubj=)r{}r|(hUh}r}(h]h]h]h]h]uhj*h]hjJubj=)r~}r(hUh}r(h]h]h]h]h]uhj*h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj*h]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX buzzer_TESTrhjhj8hhh}r(h]h]h]h]h]uhM|h]rhX buzzer_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXFWrites to GPIO in connected to a buzzer. Requires user to verify soundrhjhj8hhh}r(h]h]h]h]h]uhM{h]rhXFWrites to GPIO in connected to a buzzer. Requires user to verify soundrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhM|h]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhM|h]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX clock_TESTrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX clock_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX%Probes the clock generator on I2C busrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX%Probes the clock generator on I2C busrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]hjJubj=)r }r (hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhj hj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r (hUh}r!(h]h]h]h]h]uhjh]hjJubj=)r"}r#(hUh}r$(h]h]h]h]h]uhjh]hjJubj=)r%}r&(hUh}r'(h]h]h]h]h]uhjh]hjJubj=)r(}r)(hUh}r*(h]h]h]h]h]uhjh]hjJubj=)r+}r,(hUh}r-(h]h]h]h]h]uhjh]hjJubj=)r.}r/(hUh}r0(h]h]h]h]h]uhjh]hjJubehjubj8)r1}r2(hUh}r3(h]h]h]h]h]uhjVh]r4(j=)r5}r6(hUh}r7(h]h]h]h]h]uhj1h]r8h)r9}r:(hXcurrentMonitor_TESTr;hj5hj8hhh}r<(h]h]h]h]h]uhMh]r=hXcurrentMonitor_TESTr>r?}r@(hj;hj9ubaubahjJubj=)rA}rB(hUh}rC(h]h]h]h]h]uhj1h]rDh)rE}rF(hX$Read voltage, current on I2C devicesrGhjAhj8hhh}rH(h]h]h]h]h]uhMh]rIhX$Read voltage, current on I2C devicesrJrK}rL(hjGhjEubaubahjJubj=)rM}rN(hUh}rO(h]h]h]h]h]uhj1h]rPh)rQ}rR(hXxhjMhj8hhh}rS(h]h]h]h]h]uhMh]rThXxrU}rV(hXxhjQubaubahjJubj=)rW}rX(hUh}rY(h]h]h]h]h]uhj1h]rZh)r[}r\(hXxhjWhj8hhh}r](h]h]h]h]h]uhMh]r^hXxr_}r`(hXxhj[ubaubahjJubj=)ra}rb(hUh}rc(h]h]h]h]h]uhj1h]hjJubj=)rd}re(hUh}rf(h]h]h]h]h]uhj1h]hjJubj=)rg}rh(hUh}ri(h]h]h]h]h]uhj1h]hjJubj=)rj}rk(hUh}rl(h]h]h]h]h]uhj1h]hjJubj=)rm}rn(hUh}ro(h]h]h]h]h]uhj1h]rph)rq}rr(hXxhjmhj8hhh}rs(h]h]h]h]h]uhMh]rthXxru}rv(hXxhjqubaubahjJubj=)rw}rx(hUh}ry(h]h]h]h]h]uhj1h]hjJubj=)rz}r{(hUh}r|(h]h]h]h]h]uhj1h]hjJubj=)r}}r~(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj1h]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXcurrentMonitorStress_TESTrhjhj8hhh}r(h]h]h]h]h]uhMh]rhXcurrentMonitorStress_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXRead voltage, current on I2C devices. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.rhjhj8hhh}r(h]h]h]h]h]uhMh]rhXRead voltage, current on I2C devices. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX dcan_TESTrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX dcan_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXADoes DCAN loopback writes and reads. Passes on successful return.rhjhj8hhh}r(h]h]h]h]h]uhMh]rhXADoes DCAN loopback writes and reads. Passes on successful return.rr}r(hjhjubaubahjJubj=)r}r (hUh}r (h]h]h]h]h]uhjh]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r (hXxhjhj8hhh}r!(h]h]h]h]h]uhMh]r"hXxr#}r$(hXxhjubaubahjJubj=)r%}r&(hUh}r'(h]h]h]h]h]uhjh]r(h)r)}r*(hXxhj%hj8hhh}r+(h]h]h]h]h]uhMh]r,hXxr-}r.(hXxhj)ubaubahjJubj=)r/}r0(hUh}r1(h]h]h]h]h]uhjh]hjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhjh]hjJubj=)r5}r6(hUh}r7(h]h]h]h]h]uhjh]hjJubj=)r8}r9(hUh}r:(h]h]h]h]h]uhjh]hjJubj=)r;}r<(hUh}r=(h]h]h]h]h]uhjh]hjJubj=)r>}r?(hUh}r@(h]h]h]h]h]uhjh]hjJubj=)rA}rB(hUh}rC(h]h]h]h]h]uhjh]hjJubj=)rD}rE(hUh}rF(h]h]h]h]h]uhjh]hjJubj=)rG}rH(hUh}rI(h]h]h]h]h]uhjh]hjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhjh]hjJubehjubj8)rM}rN(hUh}rO(h]h]h]h]h]uhjVh]rP(j=)rQ}rR(hUh}rS(h]h]h]h]h]uhjMh]rTh)rU}rV(hX eeprom_TESTrWhjQhj8hhh}rX(h]h]h]h]h]uhMh]rYhX eeprom_TESTrZr[}r\(hjWhjUubaubahjJubj=)r]}r^(hUh}r_(h]h]h]h]h]uhjMh]r`h)ra}rb(hXReads the EEPROM and prints out the board's ID information. Passes on successful I2C reads. EEPROM will need to be programmed prior in order for a correct read.rchj]hj8hhh}rd(h]h]h]h]h]uhMh]rehXReads the EEPROM and prints out the board's ID information. Passes on successful I2C reads. EEPROM will need to be programmed prior in order for a correct read.rfrg}rh(hjchjaubaubahjJubj=)ri}rj(hUh}rk(h]h]h]h]h]uhjMh]rlh)rm}rn(hXxhjihj8hhh}ro(h]h]h]h]h]uhMh]rphXxrq}rr(hXxhjmubaubahjJubj=)rs}rt(hUh}ru(h]h]h]h]h]uhjMh]rvh)rw}rx(hXxhjshj8hhh}ry(h]h]h]h]h]uhMh]rzhXxr{}r|(hXxhjwubaubahjJubj=)r}}r~(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhj}hj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjMh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]r h)r }r (hX emac_TESTr hjhj8hhh}r (h]h]h]h]h]uhMh]rhX emac_TESTrr}r(hj hj ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX3Sends packet o PHY loopback t verify MAC operationsrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX3Sends packet o PHY loopback t verify MAC operationsrr}r(hjhjubaubahjJubj=)r}r(hUh}r (h]h]h]h]h]uhjh]r!h)r"}r#(hXxhjhj8hhh}r$(h]h]h]h]h]uhMh]r%hXxr&}r'(hXxhj"ubaubahjJubj=)r(}r)(hUh}r*(h]h]h]h]h]uhjh]r+h)r,}r-(hXxhj(hj8hhh}r.(h]h]h]h]h]uhMh]r/hXxr0}r1(hXxhj,ubaubahjJubj=)r2}r3(hUh}r4(h]h]h]h]h]uhjh]hjJubj=)r5}r6(hUh}r7(h]h]h]h]h]uhjh]hjJubj=)r8}r9(hUh}r:(h]h]h]h]h]uhjh]hjJubj=)r;}r<(hUh}r=(h]h]h]h]h]uhjh]hjJubj=)r>}r?(hUh}r@(h]h]h]h]h]uhjh]rAh)rB}rC(hXxhj>hj8hhh}rD(h]h]h]h]h]uhMh]rEhXxrF}rG(hXxhjBubaubahjJubj=)rH}rI(hUh}rJ(h]h]h]h]h]uhjh]hjJubj=)rK}rL(hUh}rM(h]h]h]h]h]uhjh]hjJubj=)rN}rO(hUh}rP(h]h]h]h]h]uhjh]hjJubj=)rQ}rR(hUh}rS(h]h]h]h]h]uhjh]hjJubj=)rT}rU(hUh}rV(h]h]h]h]h]uhjh]hjJubj=)rW}rX(hUh}rY(h]h]h]h]h]uhjh]hjJubj=)rZ}r[(hUh}r\(h]h]h]h]h]uhjh]hjJubj=)r]}r^(hUh}r_(h]h]h]h]h]uhjh]hjJubj=)r`}ra(hUh}rb(h]h]h]h]h]uhjh]hjJubehjubj8)rc}rd(hUh}re(h]h]h]h]h]uhjVh]rf(j=)rg}rh(hUh}ri(h]h]h]h]h]uhjch]rjh)rk}rl(hXemacStress_TESTrmhjghj8hhh}rn(h]h]h]h]h]uhMh]rohXemacStress_TESTrprq}rr(hjmhjkubaubahjJubj=)rs}rt(hUh}ru(h]h]h]h]h]uhjch]rvh)rw}rx(hXDVerifies EMAC Ethernet ports by sending and receiving 10240 packets.ryhjshj8hhh}rz(h]h]h]h]h]uhMh]r{hXDVerifies EMAC Ethernet ports by sending and receiving 10240 packets.r|r}}r~(hjyhjwubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjch]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX emmc_TESTrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX emmc_TESTrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX`Writes to and read from eMMC memory. Passes on reading back the correct value as the one writtenrhjhj8hhh}r(h]h]h]h]h]uhMh]rhX`Writes to and read from eMMC memory. Passes on reading back the correct value as the one writtenrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr }r (hXxhjubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]rh)r}r(hXxhj hj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r (h]h]h]h]h]uhjh]hjJubj=)r!}r"(hUh}r#(h]h]h]h]h]uhjh]hjJubj=)r$}r%(hUh}r&(h]h]h]h]h]uhjh]hjJubj=)r'}r((hUh}r)(h]h]h]h]h]uhjh]hjJubj=)r*}r+(hUh}r,(h]h]h]h]h]uhjh]hjJubj=)r-}r.(hUh}r/(h]h]h]h]h]uhjh]hjJubj=)r0}r1(hUh}r2(h]h]h]h]h]uhjh]hjJubehjubj8)r3}r4(hUh}r5(h]h]h]h]h]uhjVh]r6(j=)r7}r8(hUh}r9(h]h]h]h]h]uhj3h]r:h)r;}r<(hXemmcStress_TESTr=hj7hj8hhh}r>(h]h]h]h]h]uhMh]r?hXemmcStress_TESTr@rA}rB(hj=hj;ubaubahjJubj=)rC}rD(hUh}rE(h]h]h]h]h]uhj3h]rFh)rG}rH(hXGWrites to and read from eMMC memory. Test covers the entire eMMC memoryrIhjChj8hhh}rJ(h]h]h]h]h]uhMh]rKhXGWrites to and read from eMMC memory. Test covers the entire eMMC memoryrLrM}rN(hjIhjGubaubahjJubj=)rO}rP(hUh}rQ(h]h]h]h]h]uhj3h]rRh)rS}rT(hXxhjOhj8hhh}rU(h]h]h]h]h]uhMh]rVhXxrW}rX(hXxhjSubaubahjJubj=)rY}rZ(hUh}r[(h]h]h]h]h]uhj3h]r\h)r]}r^(hXxhjYhj8hhh}r_(h]h]h]h]h]uhMh]r`hXxra}rb(hXxhj]ubaubahjJubj=)rc}rd(hUh}re(h]h]h]h]h]uhj3h]hjJubj=)rf}rg(hUh}rh(h]h]h]h]h]uhj3h]hjJubj=)ri}rj(hUh}rk(h]h]h]h]h]uhj3h]hjJubj=)rl}rm(hUh}rn(h]h]h]h]h]uhj3h]hjJubj=)ro}rp(hUh}rq(h]h]h]h]h]uhj3h]hjJubj=)rr}rs(hUh}rt(h]h]h]h]h]uhj3h]hjJubj=)ru}rv(hUh}rw(h]h]h]h]h]uhj3h]hjJubj=)rx}ry(hUh}rz(h]h]h]h]h]uhj3h]hjJubj=)r{}r|(hUh}r}(h]h]h]h]h]uhj3h]hjJubj=)r~}r(hUh}r(h]h]h]h]h]uhj3h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj3h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj3h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj3h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj3h]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhjVh]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXapprhjhj8hhh}r(h]h]h]h]h]uhMh]rhXapprr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXqThe main diagnostic application. This is loaded by SBL and can load other diagnostic applications on the SD card.rhjhj8hhh}r(h]h]h]h]h]uhMh]rhXqThe main diagnostic application. This is loaded by SBL and can load other diagnostic applications on the SD card.rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]rhXxr}r(hXxhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXxhjhj8hhh}r(h]h]h]h]h]uhMh]r hXxr }r (hXxhjubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhjh]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r! }r" (hUh}r# (h]h]h]h]h]uhjh]r$ h)r% }r& (hXxhj! hj8hhh}r' (h]h]h]h]h]uhMh]r( hXxr) }r* (hXxhj% ubaubahjJubj=)r+ }r, (hUh}r- (h]h]h]h]h]uhjh]r. h)r/ }r0 (hXxhj+ hj8hhh}r1 (h]h]h]h]h]uhMh]r2 hXxr3 }r4 (hXxhj/ ubaubahjJubj=)r5 }r6 (hUh}r7 (h]h]h]h]h]uhjh]hjJubj=)r8 }r9 (hUh}r: (h]h]h]h]h]uhjh]r; h)r< }r= (hXxhj8 hj8hhh}r> (h]h]h]h]h]uhMh]r? hXxr@ }rA (hXxhj< ubaubahjJubehjubj8)rB }rC (hUh}rD (h]h]h]h]h]uhjVh]rE (j=)rF }rG (hUh}rH (h]h]h]h]h]uhjB h]rI h)rJ }rK (hX gmac_TESTrL hjF hj8hhh}rM (h]h]h]h]h]uhMh]rN hX gmac_TESTrO rP }rQ (hjL hjJ ubaubahjJubj=)rR }rS (hUh}rT (h]h]h]h]h]uhjB h]rU h)rV }rW (hXiSends and receive packets over ethernet, both internally and externally. Passes on receiving all packets.rX hjR hj8hhh}rY (h]h]h]h]h]uhMh]rZ hXiSends and receive packets over ethernet, both internally and externally. Passes on receiving all packets.r[ r\ }r] (hjX hjV ubaubahjJubj=)r^ }r_ (hUh}r` (h]h]h]h]h]uhjB h]hjJubj=)ra }rb (hUh}rc (h]h]h]h]h]uhjB h]hjJubj=)rd }re (hUh}rf (h]h]h]h]h]uhjB h]hjJubj=)rg }rh (hUh}ri (h]h]h]h]h]uhjB h]rj h)rk }rl (hXxhjg hj8hhh}rm (h]h]h]h]h]uhMh]rn hXxro }rp (hXxhjk ubaubahjJubj=)rq }rr (hUh}rs (h]h]h]h]h]uhjB h]rt h)ru }rv (hXxhjq hj8hhh}rw (h]h]h]h]h]uhMh]rx hXxry }rz (hXxhju ubaubahjJubj=)r{ }r| (hUh}r} (h]h]h]h]h]uhjB h]hjJubj=)r~ }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhjB h]hjJubehjubj8)r }r (hUh}r (h]h]h]h]h]uhjVh]r (j=)r }r (hUh}r (h]h]h]h]h]uhj h]r h)r }r (hX haptics_TESTr hj hj8hhh}r (h]h]h]h]h]uhMh]r hX haptics_TESTr r }r (hj hj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]r h)r }r (hXhWrites to the GPIO pin connected to a motor (haptics). Requires user to verify that the motor is active.r hj hj8hhh}r (h]h]h]h]h]uhMh]r hXhWrites to the GPIO pin connected to a motor (haptics). Requires user to verify that the motor is active.r r }r (hj hj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]r h)r }r (hXxhj hj8hhh}r (h]h]h]h]h]uhMh]r hXxr }r (hXxhj ubaubahjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj h]hjJubehjubj8)r }r (hUh}r (h]h]h]h]h]uhjVh]r!(j=)r!}r!(hUh}r!(h]h]h]h]h]uhj h]r!h)r!}r!(hX hdmi_TESTr!hj!hj8hhh}r!(h]h]h]h]h]uhMh]r !hX hdmi_TESTr !r !}r !(hj!hj!ubaubahjJubj=)r !}r!(hUh}r!(h]h]h]h]h]uhj h]r!h)r!}r!(hXTests HDMI display outputr!hj !hj8hhh}r!(h]h]h]h]h]uhMh]r!hXTests HDMI display outputr!r!}r!(hj!hj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj h]hjJubj=)r!}r !(hUh}r!!(h]h]h]h]h]uhj h]hjJubj=)r"!}r#!(hUh}r$!(h]h]h]h]h]uhj h]hjJubj=)r%!}r&!(hUh}r'!(h]h]h]h]h]uhj h]hjJubj=)r(!}r)!(hUh}r*!(h]h]h]h]h]uhj h]r+!h)r,!}r-!(hXxhj(!hj8hhh}r.!(h]h]h]h]h]uhMh]r/!hXxr0!}r1!(hXxhj,!ubaubahjJubj=)r2!}r3!(hUh}r4!(h]h]h]h]h]uhj h]hjJubj=)r5!}r6!(hUh}r7!(h]h]h]h]h]uhj h]hjJubj=)r8!}r9!(hUh}r:!(h]h]h]h]h]uhj h]hjJubj=)r;!}r!}r?!(hUh}r@!(h]h]h]h]h]uhj h]hjJubj=)rA!}rB!(hUh}rC!(h]h]h]h]h]uhj h]hjJubj=)rD!}rE!(hUh}rF!(h]h]h]h]h]uhj h]hjJubj=)rG!}rH!(hUh}rI!(h]h]h]h]h]uhj h]hjJubj=)rJ!}rK!(hUh}rL!(h]h]h]h]h]uhj h]hjJubj=)rM!}rN!(hUh}rO!(h]h]h]h]h]uhj h]hjJubehjubj8)rP!}rQ!(hUh}rR!(h]h]h]h]h]uhjVh]rS!(j=)rT!}rU!(hUh}rV!(h]h]h]h]h]uhjP!h]rW!h)rX!}rY!(hX icssEmac_TESTrZ!hjT!hj8hhh}r[!(h]h]h]h]h]uhMh]r\!hX icssEmac_TESTr]!r^!}r_!(hjZ!hjX!ubaubahjJubj=)r`!}ra!(hUh}rb!(h]h]h]h]h]uhjP!h]rc!h)rd!}re!(hXJConfigures one ICSS EMAC port and tests functionality via packet loopback.rf!hj`!hj8hhh}rg!(h]h]h]h]h]uhMh]rh!hXJConfigures one ICSS EMAC port and tests functionality via packet loopback.ri!rj!}rk!(hjf!hjd!ubaubahjJubj=)rl!}rm!(hUh}rn!(h]h]h]h]h]uhjP!h]hjJubj=)ro!}rp!(hUh}rq!(h]h]h]h]h]uhjP!h]hjJubj=)rr!}rs!(hUh}rt!(h]h]h]h]h]uhjP!h]hjJubj=)ru!}rv!(hUh}rw!(h]h]h]h]h]uhjP!h]rx!h)ry!}rz!(hXxhju!hj8hhh}r{!(h]h]h]h]h]uhMh]r|!hXxr}!}r~!(hXxhjy!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]r!h)r!}r!(hXxhj!hj8hhh}r!(h]h]h]h]h]uhMh]r!hXxr!}r!(hXxhj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhjP!h]hjJubehjubj8)r!}r!(hUh}r!(h]h]h]h]h]uhjVh]r!(j=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]r!h)r!}r!(hXlcd_TESTr!hj!hj8hhh}r!(h]h]h]h]h]uhMh]r!hXlcd_TESTr!r!}r!(hj!hj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]r!h)r!}r!(hX(Tests LCD display output and touch inputr!hj!hj8hhh}r!(h]h]h]h]h]uhMh]r!hX(Tests LCD display output and touch inputr!r!}r!(hj!hj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]r!h)r!}r!(hXxhj!hj8hhh}r!(h]h]h]h]h]uhMh]r!hXxr!}r!(hXxhj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]r!h)r!}r!(hXxhj!hj8hhh}r!(h]h]h]h]h]uhMh]r!hXxr!}r!(hXxhj!ubaubahjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r!(h]h]h]h]h]uhj!h]hjJubj=)r!}r!(hUh}r"(h]h]h]h]h]uhj!h]hjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj!h]hjJubehjubj8)r"}r"(hUh}r"(h]h]h]h]h]uhjVh]r"(j=)r"}r "(hUh}r "(h]h]h]h]h]uhj"h]r "h)r "}r "(hXlcdTouchscreen_TESTr"hj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXlcdTouchscreen_TESTr"r"}r"(hj"hj "ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj"h]r"h)r"}r"(hXPrompts the user for touches on the LCD touchscreen and report back its location. Requires user to input 9 simultaneous touches to verify pass.r"hj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXPrompts the user for touches on the LCD touchscreen and report back its location. Requires user to input 9 simultaneous touches to verify pass.r"r"}r"(hj"hj"ubaubahjJubj=)r "}r!"(hUh}r""(h]h]h]h]h]uhj"h]hjJubj=)r#"}r$"(hUh}r%"(h]h]h]h]h]uhj"h]hjJubj=)r&"}r'"(hUh}r("(h]h]h]h]h]uhj"h]hjJubj=)r)"}r*"(hUh}r+"(h]h]h]h]h]uhj"h]r,"h)r-"}r."(hXxhj)"hj8hhh}r/"(h]h]h]h]h]uhMh]r0"hXxr1"}r2"(hXxhj-"ubaubahjJubj=)r3"}r4"(hUh}r5"(h]h]h]h]h]uhj"h]r6"h)r7"}r8"(hXxhj3"hj8hhh}r9"(h]h]h]h]h]uhMh]r:"hXxr;"}r<"(hXxhj7"ubaubahjJubj=)r="}r>"(hUh}r?"(h]h]h]h]h]uhj"h]hjJubj=)r@"}rA"(hUh}rB"(h]h]h]h]h]uhj"h]hjJubj=)rC"}rD"(hUh}rE"(h]h]h]h]h]uhj"h]hjJubj=)rF"}rG"(hUh}rH"(h]h]h]h]h]uhj"h]hjJubj=)rI"}rJ"(hUh}rK"(h]h]h]h]h]uhj"h]hjJubj=)rL"}rM"(hUh}rN"(h]h]h]h]h]uhj"h]hjJubj=)rO"}rP"(hUh}rQ"(h]h]h]h]h]uhj"h]hjJubj=)rR"}rS"(hUh}rT"(h]h]h]h]h]uhj"h]hjJubj=)rU"}rV"(hUh}rW"(h]h]h]h]h]uhj"h]hjJubj=)rX"}rY"(hUh}rZ"(h]h]h]h]h]uhj"h]hjJubj=)r["}r\"(hUh}r]"(h]h]h]h]h]uhj"h]hjJubehjubj8)r^"}r_"(hUh}r`"(h]h]h]h]h]uhjVh]ra"(j=)rb"}rc"(hUh}rd"(h]h]h]h]h]uhj^"h]re"h)rf"}rg"(hXled_TESTrh"hjb"hj8hhh}ri"(h]h]h]h]h]uhMh]rj"hXled_TESTrk"rl"}rm"(hjh"hjf"ubaubahjJubj=)rn"}ro"(hUh}rp"(h]h]h]h]h]uhj^"h]rq"h)rr"}rs"(hXNCycles through GPIO LEDs on the board. Requires user to verify the LEDs blink.rt"hjn"hj8hhh}ru"(h]h]h]h]h]uhMh]rv"hXNCycles through GPIO LEDs on the board. Requires user to verify the LEDs blink.rw"rx"}ry"(hjt"hjr"ubaubahjJubj=)rz"}r{"(hUh}r|"(h]h]h]h]h]uhj^"h]r}"h)r~"}r"(hXxhjz"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj~"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r"}r"(hXxhj"hj8hhh}r"(h]h]h]h]h]uhMh]r"hXxr"}r"(hXxhj"ubaubahjJubj=)r"}r"(hUh}r"(h]h]h]h]h]uhj^"h]r"h)r#}r#(hXxhj"hj8hhh}r#(h]h]h]h]h]uhMh]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhj^"h]hjJubj=)r #}r #(hUh}r #(h]h]h]h]h]uhj^"h]r #h)r #}r#(hXxhj #hj8hhh}r#(h]h]h]h]h]uhMh]r#hXxr#}r#(hXxhj #ubaubahjJubehjubj8)r#}r#(hUh}r#(h]h]h]h]h]uhjVh]r#(j=)r#}r#(hUh}r#(h]h]h]h]h]uhj#h]r#h)r#}r#(hXledStress_TESTr#hj#hj8hhh}r#(h]h]h]h]h]uhMh]r#hXledStress_TESTr #r!#}r"#(hj#hj#ubaubahjJubj=)r##}r$#(hUh}r%#(h]h]h]h]h]uhj#h]r&#h)r'#}r(#(hXCycles through GPIO LEDs on the board. Requires user to verify the LEDs blink. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r)#hj##hj8hhh}r*#(h]h]h]h]h]uhMh]r+#hXCycles through GPIO LEDs on the board. Requires user to verify the LEDs blink. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r,#r-#}r.#(hj)#hj'#ubaubahjJubj=)r/#}r0#(hUh}r1#(h]h]h]h]h]uhj#h]r2#h)r3#}r4#(hXxhj/#hj8hhh}r5#(h]h]h]h]h]uhMh]r6#hXxr7#}r8#(hXxhj3#ubaubahjJubj=)r9#}r:#(hUh}r;#(h]h]h]h]h]uhj#h]r<#h)r=#}r>#(hXxhj9#hj8hhh}r?#(h]h]h]h]h]uhMh]r@#hXxrA#}rB#(hXxhj=#ubaubahjJubj=)rC#}rD#(hUh}rE#(h]h]h]h]h]uhj#h]hjJubj=)rF#}rG#(hUh}rH#(h]h]h]h]h]uhj#h]hjJubj=)rI#}rJ#(hUh}rK#(h]h]h]h]h]uhj#h]hjJubj=)rL#}rM#(hUh}rN#(h]h]h]h]h]uhj#h]hjJubj=)rO#}rP#(hUh}rQ#(h]h]h]h]h]uhj#h]hjJubj=)rR#}rS#(hUh}rT#(h]h]h]h]h]uhj#h]hjJubj=)rU#}rV#(hUh}rW#(h]h]h]h]h]uhj#h]hjJubj=)rX#}rY#(hUh}rZ#(h]h]h]h]h]uhj#h]hjJubj=)r[#}r\#(hUh}r]#(h]h]h]h]h]uhj#h]hjJubj=)r^#}r_#(hUh}r`#(h]h]h]h]h]uhj#h]hjJubj=)ra#}rb#(hUh}rc#(h]h]h]h]h]uhj#h]hjJubj=)rd#}re#(hUh}rf#(h]h]h]h]h]uhj#h]hjJubj=)rg#}rh#(hUh}ri#(h]h]h]h]h]uhj#h]hjJubj=)rj#}rk#(hUh}rl#(h]h]h]h]h]uhj#h]hjJubehjubj8)rm#}rn#(hUh}ro#(h]h]h]h]h]uhjVh]rp#(j=)rq#}rr#(hUh}rs#(h]h]h]h]h]uhjm#h]rt#h)ru#}rv#(hXledIndustrial_TESTrw#hjq#hj8hhh}rx#(h]h]h]h]h]uhM h]ry#hXledIndustrial_TESTrz#r{#}r|#(hjw#hju#ubaubahjJubj=)r}#}r~#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXMCycles through the I2C LEDs on the board. Requires user to verify LEDs blink.r#hj}#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXMCycles through the I2C LEDs on the board. Requires user to verify LEDs blink.r#r#}r#(hj#hj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhM h]r#hXxr#}r#(hXxhj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhjm#h]hjJubehjubj8)r#}r#(hUh}r#(h]h]h]h]h]uhjVh]r#(j=)r#}r#(hUh}r#(h]h]h]h]h]uhj#h]r#h)r#}r#(hXledIndustrialStress_TESTr#hj#hj8hhh}r#(h]h]h]h]h]uhMh]r#hXledIndustrialStress_TESTr#r#}r#(hj#hj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhj#h]r#h)r#}r#(hXCycles through the I2C LEDs on the board. Requires user to verify LEDs blink. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r#hj#hj8hhh}r#(h]h]h]h]h]uhMh]r#hXCycles through the I2C LEDs on the board. Requires user to verify LEDs blink. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r#r#}r#(hj#hj#ubaubahjJubj=)r#}r#(hUh}r#(h]h]h]h]h]uhj#h]r#h)r#}r#(hXxhj#hj8hhh}r#(h]h]h]h]h]uhMh]r#hXxr$}r$(hXxhj#ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhMh]r $hXxr $}r $(hXxhj$ubaubahjJubj=)r $}r $(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj#h]hjJubj=)r$}r$(hUh}r $(h]h]h]h]h]uhj#h]hjJubj=)r!$}r"$(hUh}r#$(h]h]h]h]h]uhj#h]hjJubj=)r$$}r%$(hUh}r&$(h]h]h]h]h]uhj#h]hjJubj=)r'$}r($(hUh}r)$(h]h]h]h]h]uhj#h]hjJubj=)r*$}r+$(hUh}r,$(h]h]h]h]h]uhj#h]hjJubj=)r-$}r.$(hUh}r/$(h]h]h]h]h]uhj#h]hjJubj=)r0$}r1$(hUh}r2$(h]h]h]h]h]uhj#h]hjJubj=)r3$}r4$(hUh}r5$(h]h]h]h]h]uhj#h]hjJubehjubj8)r6$}r7$(hUh}r8$(h]h]h]h]h]uhjVh]r9$(j=)r:$}r;$(hUh}r<$(h]h]h]h]h]uhj6$h]r=$h)r>$}r?$(hX mcspi_TESTr@$hj:$hj8hhh}rA$(h]h]h]h]h]uhMh]rB$hX mcspi_TESTrC$rD$}rE$(hj@$hj>$ubaubahjJubj=)rF$}rG$(hUh}rH$(h]h]h]h]h]uhj6$h]rI$h)rJ$}rK$(hXrAttempts one write and read on the MCSPI header. Requires user to verify the value being read back is as expected.rL$hjF$hj8hhh}rM$(h]h]h]h]h]uhMh]rN$hXrAttempts one write and read on the MCSPI header. Requires user to verify the value being read back is as expected.rO$rP$}rQ$(hjL$hjJ$ubaubahjJubj=)rR$}rS$(hUh}rT$(h]h]h]h]h]uhj6$h]hjJubj=)rU$}rV$(hUh}rW$(h]h]h]h]h]uhj6$h]hjJubj=)rX$}rY$(hUh}rZ$(h]h]h]h]h]uhj6$h]hjJubj=)r[$}r\$(hUh}r]$(h]h]h]h]h]uhj6$h]r^$h)r_$}r`$(hXxhj[$hj8hhh}ra$(h]h]h]h]h]uhMh]rb$hXxrc$}rd$(hXxhj_$ubaubahjJubj=)re$}rf$(hUh}rg$(h]h]h]h]h]uhj6$h]rh$h)ri$}rj$(hXxhje$hj8hhh}rk$(h]h]h]h]h]uhMh]rl$hXxrm$}rn$(hXxhji$ubaubahjJubj=)ro$}rp$(hUh}rq$(h]h]h]h]h]uhj6$h]hjJubj=)rr$}rs$(hUh}rt$(h]h]h]h]h]uhj6$h]hjJubj=)ru$}rv$(hUh}rw$(h]h]h]h]h]uhj6$h]hjJubj=)rx$}ry$(hUh}rz$(h]h]h]h]h]uhj6$h]hjJubj=)r{$}r|$(hUh}r}$(h]h]h]h]h]uhj6$h]hjJubj=)r~$}r$(hUh}r$(h]h]h]h]h]uhj6$h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj6$h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj6$h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj6$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhMh]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj6$h]hjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj6$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhMh]r$hXxr$}r$(hXxhj$ubaubahjJubehjubj8)r$}r$(hUh}r$(h]h]h]h]h]uhjVh]r$(j=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXmem_TESTr$hj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXmem_TESTr$r$}r$(hj$hj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXWrites and reads to external (DDR) memory of the board. Value written/read is the address of the word. This is done two times, for value and ~value (complement), to test for all bits.r$hj$hj8hhh}r$(h]h]h]h]h]uhM'h]r$hXWrites and reads to external (DDR) memory of the board. Value written/read is the address of the word. This is done two times, for value and ~value (complement), to test for all bits.r$r$}r$(hj$hj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r$}r$(hUh}r$(h]h]h]h]h]uhj$h]r$h)r$}r$(hXxhj$hj8hhh}r$(h]h]h]h]h]uhM(h]r$hXxr$}r$(hXxhj$ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj$h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM(h]r%hXxr%}r %(hXxhj%ubaubahjJubj=)r %}r %(hUh}r %(h]h]h]h]h]uhj$h]r %h)r%}r%(hXxhj %hj8hhh}r%(h]h]h]h]h]uhM(h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj$h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM(h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r %(h]h]h]h]h]uhj$h]r!%h)r"%}r#%(hXxhj%hj8hhh}r$%(h]h]h]h]h]uhM(h]r%%hXxr&%}r'%(hXxhj"%ubaubahjJubj=)r(%}r)%(hUh}r*%(h]h]h]h]h]uhj$h]r+%h)r,%}r-%(hXxhj(%hj8hhh}r.%(h]h]h]h]h]uhM(h]r/%hXxr0%}r1%(hXxhj,%ubaubahjJubj=)r2%}r3%(hUh}r4%(h]h]h]h]h]uhj$h]r5%h)r6%}r7%(hXxhj2%hj8hhh}r8%(h]h]h]h]h]uhM(h]r9%hXxr:%}r;%(hXxhj6%ubaubahjJubj=)r<%}r=%(hUh}r>%(h]h]h]h]h]uhj$h]r?%h)r@%}rA%(hXxhj<%hj8hhh}rB%(h]h]h]h]h]uhM(h]rC%hXxrD%}rE%(hXxhj@%ubaubahjJubj=)rF%}rG%(hUh}rH%(h]h]h]h]h]uhj$h]hjJubj=)rI%}rJ%(hUh}rK%(h]h]h]h]h]uhj$h]rL%h)rM%}rN%(hXxhjI%hj8hhh}rO%(h]h]h]h]h]uhM(h]rP%hXxrQ%}rR%(hXxhjM%ubaubahjJubehjubj8)rS%}rT%(hUh}rU%(h]h]h]h]h]uhjVh]rV%(j=)rW%}rX%(hUh}rY%(h]h]h]h]h]uhjS%h]rZ%h)r[%}r\%(hXmemStress_TESTr]%hjW%hj8hhh}r^%(h]h]h]h]h]uhM6h]r_%hXmemStress_TESTr`%ra%}rb%(hj]%hj[%ubaubahjJubj=)rc%}rd%(hUh}re%(h]h]h]h]h]uhjS%h]rf%h)rg%}rh%(hX~Writes and reads to external (DDR) memory of the board. Walking 1's and walking 0's tests are executed on the whole DDR memoryri%hjc%hj8hhh}rj%(h]h]h]h]h]uhM5h]rk%hX~Writes and reads to external (DDR) memory of the board. Walking 1's and walking 0's tests are executed on the whole DDR memoryrl%rm%}rn%(hji%hjg%ubaubahjJubj=)ro%}rp%(hUh}rq%(h]h]h]h]h]uhjS%h]rr%h)rs%}rt%(hXxhjo%hj8hhh}ru%(h]h]h]h]h]uhM6h]rv%hXxrw%}rx%(hXxhjs%ubaubahjJubj=)ry%}rz%(hUh}r{%(h]h]h]h]h]uhjS%h]r|%h)r}%}r~%(hXxhjy%hj8hhh}r%(h]h]h]h]h]uhM6h]r%hXxr%}r%(hXxhj}%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhjS%h]hjJubehjubj8)r%}r%(hUh}r%(h]h]h]h]h]uhjVh]r%(j=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hX mmcsd_TESTr%hj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hX mmcsd_TESTr%r%}r%(hj%hj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXaWrites to and read from MMCSD memory. Passes on reading back the correct value as the one writtenr%hj%hj8hhh}r%(h]h]h]h]h]uhM?h]r%hXaWrites to and read from MMCSD memory. Passes on reading back the correct value as the one writtenr%r%}r%(hj%hj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]r%h)r%}r%(hXxhj%hj8hhh}r%(h]h]h]h]h]uhM@h]r%hXxr%}r%(hXxhj%ubaubahjJubj=)r%}r%(hUh}r%(h]h]h]h]h]uhj%h]hjJubj=)r%}r%(hUh}r&(h]h]h]h]h]uhj%h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj%h]r&h)r&}r&(hXxhj&hj8hhh}r&(h]h]h]h]h]uhM@h]r&hXxr &}r &(hXxhj&ubaubahjJubj=)r &}r &(hUh}r &(h]h]h]h]h]uhj%h]r&h)r&}r&(hXxhj &hj8hhh}r&(h]h]h]h]h]uhM@h]r&hXxr&}r&(hXxhj&ubaubahjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj%h]r&h)r&}r&(hXxhj&hj8hhh}r&(h]h]h]h]h]uhM@h]r&hXxr&}r&(hXxhj&ubaubahjJubj=)r&}r &(hUh}r!&(h]h]h]h]h]uhj%h]r"&h)r#&}r$&(hXxhj&hj8hhh}r%&(h]h]h]h]h]uhM@h]r&&hXxr'&}r(&(hXxhj#&ubaubahjJubj=)r)&}r*&(hUh}r+&(h]h]h]h]h]uhj%h]r,&h)r-&}r.&(hXxhj)&hj8hhh}r/&(h]h]h]h]h]uhM@h]r0&hXxr1&}r2&(hXxhj-&ubaubahjJubj=)r3&}r4&(hUh}r5&(h]h]h]h]h]uhj%h]r6&h)r7&}r8&(hXxhj3&hj8hhh}r9&(h]h]h]h]h]uhM@h]r:&hXxr;&}r<&(hXxhj7&ubaubahjJubj=)r=&}r>&(hUh}r?&(h]h]h]h]h]uhj%h]r@&h)rA&}rB&(hXxhj=&hj8hhh}rC&(h]h]h]h]h]uhM@h]rD&hXxrE&}rF&(hXxhjA&ubaubahjJubj=)rG&}rH&(hUh}rI&(h]h]h]h]h]uhj%h]hjJubj=)rJ&}rK&(hUh}rL&(h]h]h]h]h]uhj%h]hjJubehjubj8)rM&}rN&(hUh}rO&(h]h]h]h]h]uhjVh]rP&(j=)rQ&}rR&(hUh}rS&(h]h]h]h]h]uhjM&h]rT&h)rU&}rV&(hXmmcsdStress_TESTrW&hjQ&hj8hhh}rX&(h]h]h]h]h]uhMHh]rY&hXmmcsdStress_TESTrZ&r[&}r\&(hjW&hjU&ubaubahjJubj=)r]&}r^&(hUh}r_&(h]h]h]h]h]uhjM&h]r`&h)ra&}rb&(hXWrites to and read from MMCSD memory. Passes on reading back the correct value as the one written. Entire SD card memory starting from 1.5GB offset is written/read during the test.rc&hj]&hj8hhh}rd&(h]h]h]h]h]uhMGh]re&hXWrites to and read from MMCSD memory. Passes on reading back the correct value as the one written. Entire SD card memory starting from 1.5GB offset is written/read during the test.rf&rg&}rh&(hjc&hja&ubaubahjJubj=)ri&}rj&(hUh}rk&(h]h]h]h]h]uhjM&h]rl&h)rm&}rn&(hXxhji&hj8hhh}ro&(h]h]h]h]h]uhMHh]rp&hXxrq&}rr&(hXxhjm&ubaubahjJubj=)rs&}rt&(hUh}ru&(h]h]h]h]h]uhjM&h]rv&h)rw&}rx&(hXxhjs&hj8hhh}ry&(h]h]h]h]h]uhMHh]rz&hXxr{&}r|&(hXxhjw&ubaubahjJubj=)r}&}r~&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhjM&h]hjJubehjubj8)r&}r&(hUh}r&(h]h]h]h]h]uhjVh]r&(j=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]r&h)r&}r&(hX nand_TESTr&hj&hj8hhh}r&(h]h]h]h]h]uhMUh]r&hX nand_TESTr&r&}r&(hj&hj&ubaubahjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]r&h)r&}r&(hX.Tests reading and writing to NAND flash memoryr&hj&hj8hhh}r&(h]h]h]h]h]uhMTh]r&hX.Tests reading and writing to NAND flash memoryr&r&}r&(hj&hj&ubaubahjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]r&h)r&}r&(hXxhj&hj8hhh}r&(h]h]h]h]h]uhMUh]r&hXxr&}r&(hXxhj&ubaubahjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubj=)r&}r&(hUh}r&(h]h]h]h]h]uhj&h]hjJubehjubj8)r&}r&(hUh}r&(h]h]h]h]h]uhjVh]r&(j=)r&}r&(hUh}r'(h]h]h]h]h]uhj&h]r'h)r'}r'(hX norflash_TESTr'hj&hj8hhh}r'(h]h]h]h]h]uhMZh]r'hX norflash_TESTr'r'}r '(hj'hj'ubaubahjJubj=)r '}r '(hUh}r '(h]h]h]h]h]uhj&h]r 'h)r'}r'(hX-Tests reading and writing to NOR flash memoryr'hj 'hj8hhh}r'(h]h]h]h]h]uhMYh]r'hX-Tests reading and writing to NOR flash memoryr'r'}r'(hj'hj'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj&h]r'h)r'}r'(hXxhj'hj8hhh}r'(h]h]h]h]h]uhMZh]r'hXxr'}r'(hXxhj'ubaubahjJubj=)r '}r!'(hUh}r"'(h]h]h]h]h]uhj&h]r#'h)r$'}r%'(hXxhj 'hj8hhh}r&'(h]h]h]h]h]uhMZh]r''hXxr('}r)'(hXxhj$'ubaubahjJubj=)r*'}r+'(hUh}r,'(h]h]h]h]h]uhj&h]hjJubj=)r-'}r.'(hUh}r/'(h]h]h]h]h]uhj&h]hjJubj=)r0'}r1'(hUh}r2'(h]h]h]h]h]uhj&h]hjJubj=)r3'}r4'(hUh}r5'(h]h]h]h]h]uhj&h]r6'h)r7'}r8'(hXxhj3'hj8hhh}r9'(h]h]h]h]h]uhMZh]r:'hXxr;'}r<'(hXxhj7'ubaubahjJubj=)r='}r>'(hUh}r?'(h]h]h]h]h]uhj&h]hjJubj=)r@'}rA'(hUh}rB'(h]h]h]h]h]uhj&h]hjJubj=)rC'}rD'(hUh}rE'(h]h]h]h]h]uhj&h]hjJubj=)rF'}rG'(hUh}rH'(h]h]h]h]h]uhj&h]hjJubj=)rI'}rJ'(hUh}rK'(h]h]h]h]h]uhj&h]hjJubj=)rL'}rM'(hUh}rN'(h]h]h]h]h]uhj&h]hjJubj=)rO'}rP'(hUh}rQ'(h]h]h]h]h]uhj&h]hjJubj=)rR'}rS'(hUh}rT'(h]h]h]h]h]uhj&h]hjJubj=)rU'}rV'(hUh}rW'(h]h]h]h]h]uhj&h]hjJubj=)rX'}rY'(hUh}rZ'(h]h]h]h]h]uhj&h]hjJubehjubj8)r['}r\'(hUh}r]'(h]h]h]h]h]uhjVh]r^'(j=)r_'}r`'(hUh}ra'(h]h]h]h]h]uhj['h]rb'h)rc'}rd'(hXnorflashStress_TESTre'hj_'hj8hhh}rf'(h]h]h]h]h]uhM_h]rg'hXnorflashStress_TESTrh'ri'}rj'(hje'hjc'ubaubahjJubj=)rk'}rl'(hUh}rm'(h]h]h]h]h]uhj['h]rn'h)ro'}rp'(hXcTests reading and writing to NOR flash memory. Entire NOR flash memory is accessed during the test.rq'hjk'hj8hhh}rr'(h]h]h]h]h]uhM^h]rs'hXcTests reading and writing to NOR flash memory. Entire NOR flash memory is accessed during the test.rt'ru'}rv'(hjq'hjo'ubaubahjJubj=)rw'}rx'(hUh}ry'(h]h]h]h]h]uhj['h]rz'h)r{'}r|'(hXxhjw'hj8hhh}r}'(h]h]h]h]h]uhM_h]r~'hXxr'}r'(hXxhj{'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]r'h)r'}r'(hXxhj'hj8hhh}r'(h]h]h]h]h]uhM_h]r'hXxr'}r'(hXxhj'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj['h]hjJubehjubj8)r'}r'(hUh}r'(h]h]h]h]h]uhjVh]r'(j=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]r'h)r'}r'(hX oled_TESTr'hj'hj8hhh}r'(h]h]h]h]h]uhMgh]r'hX oled_TESTr'r'}r'(hj'hj'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]r'h)r'}r'(hX1Light up the OLED display to verify functionalityr'hj'hj8hhh}r'(h]h]h]h]h]uhMfh]r'hX1Light up the OLED display to verify functionalityr'r'}r'(hj'hj'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]r'h)r'}r'(hXxhj'hj8hhh}r'(h]h]h]h]h]uhMgh]r'hXxr'}r'(hXxhj'ubaubahjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r'(hUh}r'(h]h]h]h]h]uhj'h]hjJubj=)r'}r((hUh}r((h]h]h]h]h]uhj'h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj'h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj'h]hjJubehjubj8)r(}r ((hUh}r ((h]h]h]h]h]uhjVh]r ((j=)r (}r ((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hX pmic_TESTr(hj (hj8hhh}r((h]h]h]h]h]uhMlh]r(hX pmic_TESTr(r(}r((hj(hj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXWrites and reads to the PMIC controller. This is to verify ability to use I2C to control PMIC. Test passes on successful read and write.r(hj(hj8hhh}r((h]h]h]h]h]uhMkh]r (hXWrites and reads to the PMIC controller. This is to verify ability to use I2C to control PMIC. Test passes on successful read and write.r!(r"(}r#((hj(hj(ubaubahjJubj=)r$(}r%((hUh}r&((h]h]h]h]h]uhj(h]hjJubj=)r'(}r(((hUh}r)((h]h]h]h]h]uhj(h]hjJubj=)r*(}r+((hUh}r,((h]h]h]h]h]uhj(h]r-(h)r.(}r/((hXxhj*(hj8hhh}r0((h]h]h]h]h]uhMlh]r1(hXxr2(}r3((hXxhj.(ubaubahjJubj=)r4(}r5((hUh}r6((h]h]h]h]h]uhj(h]r7(h)r8(}r9((hXxhj4(hj8hhh}r:((h]h]h]h]h]uhMlh]r;(hXxr<(}r=((hXxhj8(ubaubahjJubj=)r>(}r?((hUh}r@((h]h]h]h]h]uhj(h]rA(h)rB(}rC((hXxhj>(hj8hhh}rD((h]h]h]h]h]uhMlh]rE(hXxrF(}rG((hXxhjB(ubaubahjJubj=)rH(}rI((hUh}rJ((h]h]h]h]h]uhj(h]hjJubj=)rK(}rL((hUh}rM((h]h]h]h]h]uhj(h]hjJubj=)rN(}rO((hUh}rP((h]h]h]h]h]uhj(h]rQ(h)rR(}rS((hXxhjN(hj8hhh}rT((h]h]h]h]h]uhMlh]rU(hXxrV(}rW((hXxhjR(ubaubahjJubj=)rX(}rY((hUh}rZ((h]h]h]h]h]uhj(h]r[(h)r\(}r]((hXxhjX(hj8hhh}r^((h]h]h]h]h]uhMlh]r_(hXxr`(}ra((hXxhj\(ubaubahjJubj=)rb(}rc((hUh}rd((h]h]h]h]h]uhj(h]re(h)rf(}rg((hXxhjb(hj8hhh}rh((h]h]h]h]h]uhMlh]ri(hXxrj(}rk((hXxhjf(ubaubahjJubj=)rl(}rm((hUh}rn((h]h]h]h]h]uhj(h]ro(h)rp(}rq((hXxhjl(hj8hhh}rr((h]h]h]h]h]uhMlh]rs(hXxrt(}ru((hXxhjp(ubaubahjJubj=)rv(}rw((hUh}rx((h]h]h]h]h]uhj(h]ry(h)rz(}r{((hXxhjv(hj8hhh}r|((h]h]h]h]h]uhMlh]r}(hXxr~(}r((hXxhjz(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMlh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubehjubj8)r(}r((hUh}r((h]h]h]h]h]uhjVh]r((j=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hX qspi_TESTr(hj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hX qspi_TESTr(r(}r((hj(hj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXrTests the Quad SPI by writing and reading back the value written to memory. Test passes on correct data read back.r(hj(hj8hhh}r((h]h]h]h]h]uhMvh]r(hXrTests the Quad SPI by writing and reading back the value written to memory. Test passes on correct data read back.r(r(}r((hj(hj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]r(h)r(}r((hXxhj(hj8hhh}r((h]h]h]h]h]uhMwh]r(hXxr(}r((hXxhj(ubaubahjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r((hUh}r((h]h]h]h]h]uhj(h]hjJubj=)r(}r)(hUh}r)(h]h]h]h]h]uhj(h]hjJubehjubj8)r)}r)(hUh}r)(h]h]h]h]h]uhjVh]r)(j=)r)}r)(hUh}r)(h]h]h]h]h]uhj)h]r )h)r )}r )(hXrotarySwitch_TESTr )hj)hj8hhh}r )(h]h]h]h]h]uhMh]r)hXrotarySwitch_TESTr)r)}r)(hj )hj )ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj)h]r)h)r)}r)(hX4Tests the rotary switch at the 10 possible positionsr)hj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hX4Tests the rotary switch at the 10 possible positionsr)r)}r)(hj)hj)ubaubahjJubj=)r)}r)(hUh}r )(h]h]h]h]h]uhj)h]hjJubj=)r!)}r")(hUh}r#)(h]h]h]h]h]uhj)h]r$)h)r%)}r&)(hXxhj!)hj8hhh}r')(h]h]h]h]h]uhMh]r()hXxr))}r*)(hXxhj%)ubaubahjJubj=)r+)}r,)(hUh}r-)(h]h]h]h]h]uhj)h]hjJubj=)r.)}r/)(hUh}r0)(h]h]h]h]h]uhj)h]hjJubj=)r1)}r2)(hUh}r3)(h]h]h]h]h]uhj)h]hjJubj=)r4)}r5)(hUh}r6)(h]h]h]h]h]uhj)h]hjJubj=)r7)}r8)(hUh}r9)(h]h]h]h]h]uhj)h]r:)h)r;)}r<)(hXxhj7)hj8hhh}r=)(h]h]h]h]h]uhMh]r>)hXxr?)}r@)(hXxhj;)ubaubahjJubj=)rA)}rB)(hUh}rC)(h]h]h]h]h]uhj)h]hjJubj=)rD)}rE)(hUh}rF)(h]h]h]h]h]uhj)h]hjJubj=)rG)}rH)(hUh}rI)(h]h]h]h]h]uhj)h]hjJubj=)rJ)}rK)(hUh}rL)(h]h]h]h]h]uhj)h]hjJubj=)rM)}rN)(hUh}rO)(h]h]h]h]h]uhj)h]hjJubj=)rP)}rQ)(hUh}rR)(h]h]h]h]h]uhj)h]hjJubj=)rS)}rT)(hUh}rU)(h]h]h]h]h]uhj)h]hjJubj=)rV)}rW)(hUh}rX)(h]h]h]h]h]uhj)h]hjJubj=)rY)}rZ)(hUh}r[)(h]h]h]h]h]uhj)h]hjJubehjubj8)r\)}r])(hUh}r^)(h]h]h]h]h]uhjVh]r_)(j=)r`)}ra)(hUh}rb)(h]h]h]h]h]uhj\)h]rc)h)rd)}re)(hXrtc_TESTrf)hj`)hj8hhh}rg)(h]h]h]h]h]uhMh]rh)hXrtc_TESTri)rj)}rk)(hjf)hjd)ubaubahjJubj=)rl)}rm)(hUh}rn)(h]h]h]h]h]uhj\)h]ro)h)rp)}rq)(hXETest for setting date and time to RTC registers and running the clockrr)hjl)hj8hhh}rs)(h]h]h]h]h]uhMh]rt)hXETest for setting date and time to RTC registers and running the clockru)rv)}rw)(hjr)hjp)ubaubahjJubj=)rx)}ry)(hUh}rz)(h]h]h]h]h]uhj\)h]hjJubj=)r{)}r|)(hUh}r})(h]h]h]h]h]uhj\)h]hjJubj=)r~)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj\)h]hjJubehjubj8)r)}r)(hUh}r)(h]h]h]h]h]uhjVh]r)(j=)r)}r)(hUh}r)(h]h]h]h]h]uhj)h]r)h)r)}r)(hXtemperature_TESTr)hj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXtemperature_TESTr)r)}r)(hj)hj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj)h]r)h)r)}r)(hXXTests reading back from temperature sensor via I2C. Test passes on successful I2C reads.r)hj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXXTests reading back from temperature sensor via I2C. Test passes on successful I2C reads.r)r)}r)(hj)hj)ubaubahjJubj=)r)}r)(hUh}r)(h]h]h]h]h]uhj)h]r)h)r)}r)(hXxhj)hj8hhh}r)(h]h]h]h]h]uhMh]r)hXxr)}r)(hXxhj)ubaubahjJubj=)r)}r*(hUh}r*(h]h]h]h]h]uhj)h]r*h)r*}r*(hXxhj)hj8hhh}r*(h]h]h]h]h]uhMh]r*hXxr*}r*(hXxhj*ubaubahjJubj=)r *}r *(hUh}r *(h]h]h]h]h]uhj)h]r *h)r *}r*(hXxhj *hj8hhh}r*(h]h]h]h]h]uhMh]r*hXxr*}r*(hXxhj *ubaubahjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj)h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj)h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj)h]r*h)r*}r*(hXxhj*hj8hhh}r*(h]h]h]h]h]uhMh]r *hXxr!*}r"*(hXxhj*ubaubahjJubj=)r#*}r$*(hUh}r%*(h]h]h]h]h]uhj)h]hjJubj=)r&*}r'*(hUh}r(*(h]h]h]h]h]uhj)h]r)*h)r**}r+*(hXxhj&*hj8hhh}r,*(h]h]h]h]h]uhMh]r-*hXxr.*}r/*(hXxhj**ubaubahjJubj=)r0*}r1*(hUh}r2*(h]h]h]h]h]uhj)h]hjJubj=)r3*}r4*(hUh}r5*(h]h]h]h]h]uhj)h]hjJubj=)r6*}r7*(hUh}r8*(h]h]h]h]h]uhj)h]hjJubj=)r9*}r:*(hUh}r;*(h]h]h]h]h]uhj)h]r<*h)r=*}r>*(hXxhj9*hj8hhh}r?*(h]h]h]h]h]uhMh]r@*hXxrA*}rB*(hXxhj=*ubaubahjJubj=)rC*}rD*(hUh}rE*(h]h]h]h]h]uhj)h]hjJubj=)rF*}rG*(hUh}rH*(h]h]h]h]h]uhj)h]hjJubj=)rI*}rJ*(hUh}rK*(h]h]h]h]h]uhj)h]hjJubj=)rL*}rM*(hUh}rN*(h]h]h]h]h]uhj)h]hjJubehjubj8)rO*}rP*(hUh}rQ*(h]h]h]h]h]uhjVh]rR*(j=)rS*}rT*(hUh}rU*(h]h]h]h]h]uhjO*h]rV*h)rW*}rX*(hXtemperatureStress_TESTrY*hjS*hj8hhh}rZ*(h]h]h]h]h]uhMh]r[*hXtemperatureStress_TESTr\*r]*}r^*(hjY*hjW*ubaubahjJubj=)r_*}r`*(hUh}ra*(h]h]h]h]h]uhjO*h]rb*h)rc*}rd*(hXTests reading back from temperature sensor via I2C. Test passes on successful I2C reads. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.re*hj_*hj8hhh}rf*(h]h]h]h]h]uhMh]rg*hXTests reading back from temperature sensor via I2C. Test passes on successful I2C reads. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.rh*ri*}rj*(hje*hjc*ubaubahjJubj=)rk*}rl*(hUh}rm*(h]h]h]h]h]uhjO*h]rn*h)ro*}rp*(hXxhjk*hj8hhh}rq*(h]h]h]h]h]uhMh]rr*hXxrs*}rt*(hXxhjo*ubaubahjJubj=)ru*}rv*(hUh}rw*(h]h]h]h]h]uhjO*h]rx*h)ry*}rz*(hXxhju*hj8hhh}r{*(h]h]h]h]h]uhMh]r|*hXxr}*}r~*(hXxhjy*ubaubahjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhjO*h]hjJubehjubj8)r*}r*(hUh}r*(h]h]h]h]h]uhjVh]r*(j=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]r*h)r*}r*(hX uart2usb_TESTr*hj*hj8hhh}r*(h]h]h]h]h]uhMh]r*hX uart2usb_TESTr*r*}r*(hj*hj*ubaubahjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]r*h)r*}r*(hX"Tests uart messages over usb port.r*hj*hj8hhh}r*(h]h]h]h]h]uhMh]r*hX"Tests uart messages over usb port.r*r*}r*(hj*hj*ubaubahjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]r*h)r*}r*(hXxhj*hj8hhh}r*(h]h]h]h]h]uhMh]r*hXxr*}r*(hXxhj*ubaubahjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubj=)r*}r*(hUh}r*(h]h]h]h]h]uhj*h]hjJubehjubj8)r*}r*(hUh}r*(h]h]h]h]h]uhjVh]r*(j=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hX uart_TESTr+hj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hX uart_TESTr +r +}r +(hj+hj+ubaubahjJubj=)r +}r +(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXeData Path continuity test for UART output. Requires user to verify that outputs do appear on console.r+hj +hj8hhh}r+(h]h]h]h]h]uhMh]r+hXeData Path continuity test for UART output. Requires user to verify that outputs do appear on console.r+r+}r+(hj+hj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr +}r!+(hXxhj+ubaubahjJubj=)r"+}r#+(hUh}r$+(h]h]h]h]h]uhj*h]r%+h)r&+}r'+(hXxhj"+hj8hhh}r(+(h]h]h]h]h]uhMh]r)+hXxr*+}r++(hXxhj&+ubaubahjJubj=)r,+}r-+(hUh}r.+(h]h]h]h]h]uhj*h]r/+h)r0+}r1+(hXxhj,+hj8hhh}r2+(h]h]h]h]h]uhMh]r3+hXxr4+}r5+(hXxhj0+ubaubahjJubj=)r6+}r7+(hUh}r8+(h]h]h]h]h]uhj*h]r9+h)r:+}r;+(hXxhj6+hj8hhh}r<+(h]h]h]h]h]uhMh]r=+hXxr>+}r?+(hXxhj:+ubaubahjJubj=)r@+}rA+(hUh}rB+(h]h]h]h]h]uhj*h]rC+h)rD+}rE+(hXxhj@+hj8hhh}rF+(h]h]h]h]h]uhMh]rG+hXxrH+}rI+(hXxhjD+ubaubahjJubj=)rJ+}rK+(hUh}rL+(h]h]h]h]h]uhj*h]rM+h)rN+}rO+(hXxhjJ+hj8hhh}rP+(h]h]h]h]h]uhMh]rQ+hXxrR+}rS+(hXxhjN+ubaubahjJubj=)rT+}rU+(hUh}rV+(h]h]h]h]h]uhj*h]rW+h)rX+}rY+(hXxhjT+hj8hhh}rZ+(h]h]h]h]h]uhMh]r[+hXxr\+}r]+(hXxhjX+ubaubahjJubj=)r^+}r_+(hUh}r`+(h]h]h]h]h]uhj*h]ra+h)rb+}rc+(hXxhj^+hj8hhh}rd+(h]h]h]h]h]uhMh]re+hXxrf+}rg+(hXxhjb+ubaubahjJubj=)rh+}ri+(hUh}rj+(h]h]h]h]h]uhj*h]rk+h)rl+}rm+(hXxhjh+hj8hhh}rn+(h]h]h]h]h]uhMh]ro+hXxrp+}rq+(hXxhjl+ubaubahjJubj=)rr+}rs+(hUh}rt+(h]h]h]h]h]uhj*h]ru+h)rv+}rw+(hXxhjr+hj8hhh}rx+(h]h]h]h]h]uhMh]ry+hXxrz+}r{+(hXxhjv+ubaubahjJubj=)r|+}r}+(hUh}r~+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXxhj|+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj*h]hjJubehjubj8)r+}r+(hUh}r+(h]h]h]h]h]uhjVh]r+(j=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]r+h)r+}r+(hXuartStress_TESTr+hj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXuartStress_TESTr+r+}r+(hj+hj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]r+(h)r+}r+(hX Verifies UART port with large block of data transfer. Sends 10MB of data from the board to serial console. Teraterm script loops the data back to the board. Data recieved on the board and verified. RS485 to RS232 coverter is needed to run the test on AM65xx platform.r+hj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hX Verifies UART port with large block of data transfer. Sends 10MB of data from the board to serial console. Teraterm script loops the data back to the board. Data recieved on the board and verified. RS485 to RS232 coverter is needed to run the test on AM65xx platform.r+r+}r+(hj+hj+ubaubh)r+}r+(hXANeed to run this test from CCS. SD boot support is not available.r+hj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXANeed to run this test from CCS. SD boot support is not available.r+r+}r+(hj+hj+ubaubehjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]r+h)r+}r+(hXxhj+hj8hhh}r+(h]h]h]h]h]uhMh]r+hXxr+}r+(hXxhj+ubaubahjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r+}r+(hUh}r+(h]h]h]h]h]uhj+h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj+h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj+h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj+h]hjJubj=)r ,}r ,(hUh}r ,(h]h]h]h]h]uhj+h]hjJubehjubj8)r ,}r ,(hUh}r,(h]h]h]h]h]uhjVh]r,(j=)r,}r,(hUh}r,(h]h]h]h]h]uhj ,h]r,h)r,}r,(hX mcasp_TESTr,hj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hX mcasp_TESTr,r,}r,(hj,hj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj ,h]r,h)r ,}r!,(hX>On-board audio codec functionality is exercised by this test. Audio supplied at EVM audio input port will loopback to audio output port. This test is intended to demonstrate baremetal functionality of mcasp, edma3 and i2c CSL modules without depending on the LLD libraries. No console output is supported by this test.r",hj,hj8hhh}r#,(h]h]h]h]h]uhMh]r$,hX>On-board audio codec functionality is exercised by this test. Audio supplied at EVM audio input port will loopback to audio output port. This test is intended to demonstrate baremetal functionality of mcasp, edma3 and i2c CSL modules without depending on the LLD libraries. No console output is supported by this test.r%,r&,}r',(hj",hj ,ubaubahjJubj=)r(,}r),(hUh}r*,(h]h]h]h]h]uhj ,h]hjJubj=)r+,}r,,(hUh}r-,(h]h]h]h]h]uhj ,h]hjJubj=)r.,}r/,(hUh}r0,(h]h]h]h]h]uhj ,h]hjJubj=)r1,}r2,(hUh}r3,(h]h]h]h]h]uhj ,h]hjJubj=)r4,}r5,(hUh}r6,(h]h]h]h]h]uhj ,h]hjJubj=)r7,}r8,(hUh}r9,(h]h]h]h]h]uhj ,h]r:,h)r;,}r<,(hXxhj7,hj8hhh}r=,(h]h]h]h]h]uhMh]r>,hXxr?,}r@,(hXxhj;,ubaubahjJubj=)rA,}rB,(hUh}rC,(h]h]h]h]h]uhj ,h]hjJubj=)rD,}rE,(hUh}rF,(h]h]h]h]h]uhj ,h]hjJubj=)rG,}rH,(hUh}rI,(h]h]h]h]h]uhj ,h]hjJubj=)rJ,}rK,(hUh}rL,(h]h]h]h]h]uhj ,h]hjJubj=)rM,}rN,(hUh}rO,(h]h]h]h]h]uhj ,h]hjJubj=)rP,}rQ,(hUh}rR,(h]h]h]h]h]uhj ,h]hjJubj=)rS,}rT,(hUh}rU,(h]h]h]h]h]uhj ,h]hjJubj=)rV,}rW,(hUh}rX,(h]h]h]h]h]uhj ,h]hjJubj=)rY,}rZ,(hUh}r[,(h]h]h]h]h]uhj ,h]r\,h)r],}r^,(hXxhjY,hj8hhh}r_,(h]h]h]h]h]uhMh]r`,hXxra,}rb,(hXxhj],ubaubahjJubj=)rc,}rd,(hUh}re,(h]h]h]h]h]uhj ,h]hjJubehjubj8)rf,}rg,(hUh}rh,(h]h]h]h]h]uhjVh]ri,(j=)rj,}rk,(hUh}rl,(h]h]h]h]h]uhjf,h]rm,h)rn,}ro,(hXmcaspAudioDC_TESTrp,hjj,hj8hhh}rq,(h]h]h]h]h]uhMh]rr,hXmcaspAudioDC_TESTrs,rt,}ru,(hjp,hjn,ubaubahjJubj=)rv,}rw,(hUh}rx,(h]h]h]h]h]uhjf,h]ry,h)rz,}r{,(hXPMulti-channel audio daughter card functionality is exercised by this test. Audio supplied at audio DC input ports will loopback to audio DC output ports. This test is intended to demonstrate bare metal functionality of mcasp, edma3 and spi CSL modules without depending on the LLD libraries. No console output is supported by this test.r|,hjv,hj8hhh}r},(h]h]h]h]h]uhMh]r~,hXPMulti-channel audio daughter card functionality is exercised by this test. Audio supplied at audio DC input ports will loopback to audio DC output ports. This test is intended to demonstrate bare metal functionality of mcasp, edma3 and spi CSL modules without depending on the LLD libraries. No console output is supported by this test.r,r,}r,(hj|,hjz,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]r,h)r,}r,(hXxhj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXxr,}r,(hXxhj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhjf,h]hjJubehjubj8)r,}r,(hUh}r,(h]h]h]h]h]uhjVh]r,(j=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]r,h)r,}r,(hXpwm_TESTr,hj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXpwm_TESTr,r,}r,(hj,hj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]r,h)r,}r,(hXDemonstrates the usage of PWM CSL FL APIs by configuring the PWM module to generate a pulse of 1KHz with different duty cycle - 25, 50 and 75%.r,hj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXDemonstrates the usage of PWM CSL FL APIs by configuring the PWM module to generate a pulse of 1KHz with different duty cycle - 25, 50 and 75%.r,r,}r,(hj,hj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]r,h)r,}r,(hXxhj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXxr,}r,(hXxhj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]r,h)r,}r,(hXxhj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXxr,}r,(hXxhj,ubaubahjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]hjJubj=)r,}r,(hUh}r,(h]h]h]h]h]uhj,h]r,h)r,}r,(hXxhj,hj8hhh}r,(h]h]h]h]h]uhMh]r,hXxr-}r-(hXxhj,ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj,h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj,h]hjJubj=)r-}r -(hUh}r -(h]h]h]h]h]uhj,h]hjJubj=)r -}r -(hUh}r -(h]h]h]h]h]uhj,h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj,h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj,h]r-h)r-}r-(hXxhj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hXxr-}r-(hXxhj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj,h]hjJubj=)r-}r-(hUh}r -(h]h]h]h]h]uhj,h]hjJubehjubj8)r!-}r"-(hUh}r#-(h]h]h]h]h]uhjVh]r$-(j=)r%-}r&-(hUh}r'-(h]h]h]h]h]uhj!-h]r(-h)r)-}r*-(hXusbDevice_TESTr+-hj%-hj8hhh}r,-(h]h]h]h]h]uhMh]r--hXusbDevice_TESTr.-r/-}r0-(hj+-hj)-ubaubahjJubj=)r1-}r2-(hUh}r3-(h]h]h]h]h]uhj!-h]r4-h)r5-}r6-(hXVerifies the USB device mode operation of board under test. USB modules operates at high speed (2.0) Board is exposed as USB MSC device to host PC during the test.r7-hj1-hj8hhh}r8-(h]h]h]h]h]uhMh]r9-hXVerifies the USB device mode operation of board under test. USB modules operates at high speed (2.0) Board is exposed as USB MSC device to host PC during the test.r:-r;-}r<-(hj7-hj5-ubaubahjJubj=)r=-}r>-(hUh}r?-(h]h]h]h]h]uhj!-h]r@-h)rA-}rB-(hXxhj=-hj8hhh}rC-(h]h]h]h]h]uhMh]rD-hXxrE-}rF-(hXxhjA-ubaubahjJubj=)rG-}rH-(hUh}rI-(h]h]h]h]h]uhj!-h]rJ-h)rK-}rL-(hXxhjG-hj8hhh}rM-(h]h]h]h]h]uhMh]rN-hXxrO-}rP-(hXxhjK-ubaubahjJubj=)rQ-}rR-(hUh}rS-(h]h]h]h]h]uhj!-h]hjJubj=)rT-}rU-(hUh}rV-(h]h]h]h]h]uhj!-h]hjJubj=)rW-}rX-(hUh}rY-(h]h]h]h]h]uhj!-h]hjJubj=)rZ-}r[-(hUh}r\-(h]h]h]h]h]uhj!-h]hjJubj=)r]-}r^-(hUh}r_-(h]h]h]h]h]uhj!-h]hjJubj=)r`-}ra-(hUh}rb-(h]h]h]h]h]uhj!-h]hjJubj=)rc-}rd-(hUh}re-(h]h]h]h]h]uhj!-h]hjJubj=)rf-}rg-(hUh}rh-(h]h]h]h]h]uhj!-h]hjJubj=)ri-}rj-(hUh}rk-(h]h]h]h]h]uhj!-h]hjJubj=)rl-}rm-(hUh}rn-(h]h]h]h]h]uhj!-h]hjJubj=)ro-}rp-(hUh}rq-(h]h]h]h]h]uhj!-h]hjJubj=)rr-}rs-(hUh}rt-(h]h]h]h]h]uhj!-h]hjJubj=)ru-}rv-(hUh}rw-(h]h]h]h]h]uhj!-h]hjJubj=)rx-}ry-(hUh}rz-(h]h]h]h]h]uhj!-h]hjJubehjubj8)r{-}r|-(hUh}r}-(h]h]h]h]h]uhjVh]r~-(j=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]r-h)r-}r-(hX usbHost_TESTr-hj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hX usbHost_TESTr-r-}r-(hj-hj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]r-h)r-}r-(hXVerifies the USB host mode operation of boardf under test. USB modules operates at high speed (2.0) during the test. File write/read and data verification on the connected USB device is done during the testr-hj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hXVerifies the USB host mode operation of boardf under test. USB modules operates at high speed (2.0) during the test. File write/read and data verification on the connected USB device is done during the testr-r-}r-(hj-hj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]r-h)r-}r-(hXxhj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hXxr-}r-(hXxhj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]r-h)r-}r-(hXxhj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hXxr-}r-(hXxhj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj{-h]hjJubehjubj8)r-}r-(hUh}r-(h]h]h]h]h]uhjVh]r-(j=)r-}r-(hUh}r-(h]h]h]h]h]uhj-h]r-h)r-}r-(hXusbHostStress_TESTr-hj-hj8hhh}r-(h]h]h]h]h]uhM h]r-hXusbHostStress_TESTr-r-}r-(hj-hj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj-h]r-h)r-}r-(hX)Verifies the USB host mode operation of boardf under test. USB modules operates at high speed (2.0) during the test. File write/read and data verification on the connected USB device is done during the test Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r-hj-hj8hhh}r-(h]h]h]h]h]uhMh]r-hX)Verifies the USB host mode operation of boardf under test. USB modules operates at high speed (2.0) during the test. File write/read and data verification on the connected USB device is done during the test Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r-r-}r-(hj-hj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj-h]r-h)r-}r-(hXxhj-hj8hhh}r-(h]h]h]h]h]uhM h]r-hXxr-}r-(hXxhj-ubaubahjJubj=)r-}r-(hUh}r-(h]h]h]h]h]uhj-h]r-h)r-}r.(hXxhj-hj8hhh}r.(h]h]h]h]h]uhM h]r.hXxr.}r.(hXxhj-ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r .(hUh}r .(h]h]h]h]h]uhj-h]hjJubj=)r .}r .(hUh}r .(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj-h]hjJubj=)r .}r!.(hUh}r".(h]h]h]h]h]uhj-h]hjJubj=)r#.}r$.(hUh}r%.(h]h]h]h]h]uhj-h]hjJubj=)r&.}r'.(hUh}r(.(h]h]h]h]h]uhj-h]hjJubj=)r).}r*.(hUh}r+.(h]h]h]h]h]uhj-h]hjJubj=)r,.}r-.(hUh}r..(h]h]h]h]h]uhj-h]hjJubehjubj8)r/.}r0.(hUh}r1.(h]h]h]h]h]uhjVh]r2.(j=)r3.}r4.(hUh}r5.(h]h]h]h]h]uhj/.h]r6.h)r7.}r8.(hX ospi_TESTr9.hj3.hj8hhh}r:.(h]h]h]h]h]uhM5h]r;.hX ospi_TESTr<.r=.}r>.(hj9.hj7.ubaubahjJubj=)r?.}r@.(hUh}rA.(h]h]h]h]h]uhj/.h]rB.h)rC.}rD.(hXsTests the Octal SPI by writing and reading back the value written to memory. Test passes on correct data read back.rE.hj?.hj8hhh}rF.(h]h]h]h]h]uhM4h]rG.hXsTests the Octal SPI by writing and reading back the value written to memory. Test passes on correct data read back.rH.rI.}rJ.(hjE.hjC.ubaubahjJubj=)rK.}rL.(hUh}rM.(h]h]h]h]h]uhj/.h]rN.h)rO.}rP.(hXxhjK.hj8hhh}rQ.(h]h]h]h]h]uhM5h]rR.hXxrS.}rT.(hXxhjO.ubaubahjJubj=)rU.}rV.(hUh}rW.(h]h]h]h]h]uhj/.h]rX.h)rY.}rZ.(hXxhjU.hj8hhh}r[.(h]h]h]h]h]uhM5h]r\.hXxr].}r^.(hXxhjY.ubaubahjJubj=)r_.}r`.(hUh}ra.(h]h]h]h]h]uhj/.h]hjJubj=)rb.}rc.(hUh}rd.(h]h]h]h]h]uhj/.h]hjJubj=)re.}rf.(hUh}rg.(h]h]h]h]h]uhj/.h]hjJubj=)rh.}ri.(hUh}rj.(h]h]h]h]h]uhj/.h]hjJubj=)rk.}rl.(hUh}rm.(h]h]h]h]h]uhj/.h]hjJubj=)rn.}ro.(hUh}rp.(h]h]h]h]h]uhj/.h]hjJubj=)rq.}rr.(hUh}rs.(h]h]h]h]h]uhj/.h]hjJubj=)rt.}ru.(hUh}rv.(h]h]h]h]h]uhj/.h]hjJubj=)rw.}rx.(hUh}ry.(h]h]h]h]h]uhj/.h]hjJubj=)rz.}r{.(hUh}r|.(h]h]h]h]h]uhj/.h]hjJubj=)r}.}r~.(hUh}r.(h]h]h]h]h]uhj/.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj/.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj/.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj/.h]hjJubehjubj8)r.}r.(hUh}r.(h]h]h]h]h]uhjVh]r.(j=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hXospiStress_TESTr.hj.hj8hhh}r.(h]h]h]h]h]uhM>h]r.hXospiStress_TESTr.r.}r.(hj.hj.ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hXTests the Octal SPI by writing and reading back the value written to memory. Test passes on correct data read back. Entire OSPI flash memory is accessed during the test.r.hj.hj8hhh}r.(h]h]h]h]h]uhM=h]r.hXTests the Octal SPI by writing and reading back the value written to memory. Test passes on correct data read back. Entire OSPI flash memory is accessed during the test.r.r.}r.(hj.hj.ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hXxhj.hj8hhh}r.(h]h]h]h]h]uhM>h]r.hXxr.}r.(hXxhj.ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hXxhj.hj8hhh}r.(h]h]h]h]h]uhM>h]r.hXxr.}r.(hXxhj.ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]hjJubehjubj8)r.}r.(hUh}r.(h]h]h]h]h]uhjVh]r.(j=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hX pcie_TESTr.hj.hj8hhh}r.(h]h]h]h]h]uhMJh]r.hX pcie_TESTr.r.}r.(hj.hj.ubaubahjJubj=)r.}r.(hUh}r.(h]h]h]h]h]uhj.h]r.h)r.}r.(hXTests the PCIe interface in end point and rootcomplex mode using two boards. Data is sent from one board to other and sent it back to the first board for verification.r.hj.hj8hhh}r.(h]h]h]h]h]uhMIh]r.hXTests the PCIe interface in end point and rootcomplex mode using two boards. Data is sent from one board to other and sent it back to the first board for verification.r.r.}r.(hj.hj.ubaubahjJubj=)r.}r/(hUh}r/(h]h]h]h]h]uhj.h]r/h)r/}r/(hXxhj.hj8hhh}r/(h]h]h]h]h]uhMJh]r/hXxr/}r/(hXxhj/ubaubahjJubj=)r /}r /(hUh}r /(h]h]h]h]h]uhj.h]r /h)r /}r/(hXxhj /hj8hhh}r/(h]h]h]h]h]uhMJh]r/hXxr/}r/(hXxhj /ubaubahjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj.h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj.h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj.h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj.h]hjJubj=)r/}r /(hUh}r!/(h]h]h]h]h]uhj.h]hjJubj=)r"/}r#/(hUh}r$/(h]h]h]h]h]uhj.h]hjJubj=)r%/}r&/(hUh}r'/(h]h]h]h]h]uhj.h]hjJubj=)r(/}r)/(hUh}r*/(h]h]h]h]h]uhj.h]hjJubj=)r+/}r,/(hUh}r-/(h]h]h]h]h]uhj.h]hjJubj=)r./}r//(hUh}r0/(h]h]h]h]h]uhj.h]hjJubj=)r1/}r2/(hUh}r3/(h]h]h]h]h]uhj.h]hjJubj=)r4/}r5/(hUh}r6/(h]h]h]h]h]uhj.h]hjJubj=)r7/}r8/(hUh}r9/(h]h]h]h]h]uhj.h]hjJubj=)r:/}r;/(hUh}r/(hUh}r?/(h]h]h]h]h]uhjVh]r@/(j=)rA/}rB/(hUh}rC/(h]h]h]h]h]uhj=/h]rD/h)rE/}rF/(hXbootEeprom_TESTrG/hjA/hj8hhh}rH/(h]h]h]h]h]uhMUh]rI/hXbootEeprom_TESTrJ/rK/}rL/(hjG/hjE/ubaubahjJubj=)rM/}rN/(hUh}rO/(h]h]h]h]h]uhj=/h]rP/h)rQ/}rR/(hX[Verifies boot EEPROM by writing a block of data, reading back written data for correctness.rS/hjM/hj8hhh}rT/(h]h]h]h]h]uhMTh]rU/hX[Verifies boot EEPROM by writing a block of data, reading back written data for correctness.rV/rW/}rX/(hjS/hjQ/ubaubahjJubj=)rY/}rZ/(hUh}r[/(h]h]h]h]h]uhj=/h]r\/h)r]/}r^/(hXxhjY/hj8hhh}r_/(h]h]h]h]h]uhMUh]r`/hXxra/}rb/(hXxhj]/ubaubahjJubj=)rc/}rd/(hUh}re/(h]h]h]h]h]uhj=/h]rf/h)rg/}rh/(hXxhjc/hj8hhh}ri/(h]h]h]h]h]uhMUh]rj/hXxrk/}rl/(hXxhjg/ubaubahjJubj=)rm/}rn/(hUh}ro/(h]h]h]h]h]uhj=/h]hjJubj=)rp/}rq/(hUh}rr/(h]h]h]h]h]uhj=/h]hjJubj=)rs/}rt/(hUh}ru/(h]h]h]h]h]uhj=/h]hjJubj=)rv/}rw/(hUh}rx/(h]h]h]h]h]uhj=/h]hjJubj=)ry/}rz/(hUh}r{/(h]h]h]h]h]uhj=/h]hjJubj=)r|/}r}/(hUh}r~/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj=/h]hjJubehjubj8)r/}r/(hUh}r/(h]h]h]h]h]uhjVh]r/(j=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]r/h)r/}r/(hXbootEepromStress_TESTr/hj/hj8hhh}r/(h]h]h]h]h]uhM\h]r/hXbootEepromStress_TESTr/r/}r/(hj/hj/ubaubahjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]r/h)r/}r/(hX7Verifies boot EEPROM read/write covering entire memory.r/hj/hj8hhh}r/(h]h]h]h]h]uhM[h]r/hX7Verifies boot EEPROM read/write covering entire memory.r/r/}r/(hj/hj/ubaubahjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]r/h)r/}r/(hXxhj/hj8hhh}r/(h]h]h]h]h]uhM\h]r/hXxr/}r/(hXxhj/ubaubahjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]r/h)r/}r/(hXxhj/hj8hhh}r/(h]h]h]h]h]uhM\h]r/hXxr/}r/(hXxhj/ubaubahjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubj=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]hjJubehjubj8)r/}r/(hUh}r/(h]h]h]h]h]uhjVh]r/(j=)r/}r/(hUh}r/(h]h]h]h]h]uhj/h]r/h)r/}r/(hX extRtc_TESTr/hj/hj8hhh}r/(h]h]h]h]h]uhMah]r/hX extRtc_TESTr/r/}r0(hj/hj/ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj/h]r0h)r0}r0(hXDTest for setting date and time to external RTC and running the clockr0hj0hj8hhh}r0(h]h]h]h]h]uhM`h]r 0hXDTest for setting date and time to external RTC and running the clockr 0r 0}r 0(hj0hj0ubaubahjJubj=)r 0}r0(hUh}r0(h]h]h]h]h]uhj/h]r0h)r0}r0(hXxhj 0hj8hhh}r0(h]h]h]h]h]uhMbh]r0hXxr0}r0(hXxhj0ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj/h]r0h)r0}r0(hXxhj0hj8hhh}r0(h]h]h]h]h]uhMbh]r0hXxr0}r 0(hXxhj0ubaubahjJubj=)r!0}r"0(hUh}r#0(h]h]h]h]h]uhj/h]hjJubj=)r$0}r%0(hUh}r&0(h]h]h]h]h]uhj/h]hjJubj=)r'0}r(0(hUh}r)0(h]h]h]h]h]uhj/h]hjJubj=)r*0}r+0(hUh}r,0(h]h]h]h]h]uhj/h]hjJubj=)r-0}r.0(hUh}r/0(h]h]h]h]h]uhj/h]hjJubj=)r00}r10(hUh}r20(h]h]h]h]h]uhj/h]hjJubj=)r30}r40(hUh}r50(h]h]h]h]h]uhj/h]hjJubj=)r60}r70(hUh}r80(h]h]h]h]h]uhj/h]hjJubj=)r90}r:0(hUh}r;0(h]h]h]h]h]uhj/h]hjJubj=)r<0}r=0(hUh}r>0(h]h]h]h]h]uhj/h]hjJubj=)r?0}r@0(hUh}rA0(h]h]h]h]h]uhj/h]hjJubj=)rB0}rC0(hUh}rD0(h]h]h]h]h]uhj/h]hjJubj=)rE0}rF0(hUh}rG0(h]h]h]h]h]uhj/h]hjJubj=)rH0}rI0(hUh}rJ0(h]h]h]h]h]uhj/h]hjJubehjubj8)rK0}rL0(hUh}rM0(h]h]h]h]h]uhjVh]rN0(j=)rO0}rP0(hUh}rQ0(h]h]h]h]h]uhjK0h]rR0h)rS0}rT0(hXextRtcStress_TESTrU0hjO0hj8hhh}rV0(h]h]h]h]h]uhMgh]rW0hXextRtcStress_TESTrX0rY0}rZ0(hjU0hjS0ubaubahjJubj=)r[0}r\0(hUh}r]0(h]h]h]h]h]uhjK0h]r^0h)r_0}r`0(hXTest for setting date and time to external RTC and running the clock. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.ra0hj[0hj8hhh}rb0(h]h]h]h]h]uhMfh]rc0hXTest for setting date and time to external RTC and running the clock. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.rd0re0}rf0(hja0hj_0ubaubahjJubj=)rg0}rh0(hUh}ri0(h]h]h]h]h]uhjK0h]rj0h)rk0}rl0(hXxhjg0hj8hhh}rm0(h]h]h]h]h]uhMhh]rn0hXxro0}rp0(hXxhjk0ubaubahjJubj=)rq0}rr0(hUh}rs0(h]h]h]h]h]uhjK0h]rt0h)ru0}rv0(hXxhjq0hj8hhh}rw0(h]h]h]h]h]uhMhh]rx0hXxry0}rz0(hXxhju0ubaubahjJubj=)r{0}r|0(hUh}r}0(h]h]h]h]h]uhjK0h]hjJubj=)r~0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhjK0h]hjJubehjubj8)r0}r0(hUh}r0(h]h]h]h]h]uhjVh]r0(j=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]r0h)r0}r0(hXicssgEmac_TESTr0hj0hj8hhh}r0(h]h]h]h]h]uhMrh]r0hXicssgEmac_TESTr0r0}r0(hj0hj0ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]r0h)r0}r0(hXVerifies ICSSG EMAC ports in loopback with one port connected to another port. 10 packets are sent and received during the test.r0hj0hj8hhh}r0(h]h]h]h]h]uhMqh]r0hXVerifies ICSSG EMAC ports in loopback with one port connected to another port. 10 packets are sent and received during the test.r0r0}r0(hj0hj0ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]r0h)r0}r0(hXxhj0hj8hhh}r0(h]h]h]h]h]uhMrh]r0hXxr0}r0(hXxhj0ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]r0h)r0}r0(hXxhj0hj8hhh}r0(h]h]h]h]h]uhMrh]r0hXxr0}r0(hXxhj0ubaubahjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubj=)r0}r0(hUh}r0(h]h]h]h]h]uhj0h]hjJubehjubj8)r0}r1(hUh}r1(h]h]h]h]h]uhjVh]r1(j=)r1}r1(hUh}r1(h]h]h]h]h]uhj0h]r1h)r1}r1(hXicssgEmacStress_TESTr 1hj1hj8hhh}r 1(h]h]h]h]h]uhM{h]r 1hXicssgEmacStress_TESTr 1r 1}r1(hj 1hj1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj0h]r1h)r1}r1(hXVerifies ICSSG EMAC ports in loopback with one port connected to another port. 10240 packets are sent and received during the test.r1hj1hj8hhh}r1(h]h]h]h]h]uhMzh]r1hXVerifies ICSSG EMAC ports in loopback with one port connected to another port. 10240 packets are sent and received during the test.r1r1}r1(hj1hj1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj0h]r1h)r1}r 1(hXxhj1hj8hhh}r!1(h]h]h]h]h]uhM{h]r"1hXxr#1}r$1(hXxhj1ubaubahjJubj=)r%1}r&1(hUh}r'1(h]h]h]h]h]uhj0h]r(1h)r)1}r*1(hXxhj%1hj8hhh}r+1(h]h]h]h]h]uhM{h]r,1hXxr-1}r.1(hXxhj)1ubaubahjJubj=)r/1}r01(hUh}r11(h]h]h]h]h]uhj0h]hjJubj=)r21}r31(hUh}r41(h]h]h]h]h]uhj0h]hjJubj=)r51}r61(hUh}r71(h]h]h]h]h]uhj0h]hjJubj=)r81}r91(hUh}r:1(h]h]h]h]h]uhj0h]hjJubj=)r;1}r<1(hUh}r=1(h]h]h]h]h]uhj0h]hjJubj=)r>1}r?1(hUh}r@1(h]h]h]h]h]uhj0h]hjJubj=)rA1}rB1(hUh}rC1(h]h]h]h]h]uhj0h]hjJubj=)rD1}rE1(hUh}rF1(h]h]h]h]h]uhj0h]hjJubj=)rG1}rH1(hUh}rI1(h]h]h]h]h]uhj0h]hjJubj=)rJ1}rK1(hUh}rL1(h]h]h]h]h]uhj0h]hjJubj=)rM1}rN1(hUh}rO1(h]h]h]h]h]uhj0h]hjJubj=)rP1}rQ1(hUh}rR1(h]h]h]h]h]uhj0h]hjJubj=)rS1}rT1(hUh}rU1(h]h]h]h]h]uhj0h]hjJubj=)rV1}rW1(hUh}rX1(h]h]h]h]h]uhj0h]hjJubehjubj8)rY1}rZ1(hUh}r[1(h]h]h]h]h]uhjVh]r\1(j=)r]1}r^1(hUh}r_1(h]h]h]h]h]uhjY1h]r`1h)ra1}rb1(hX icssgLed_TESTrc1hj]1hj8hhh}rd1(h]h]h]h]h]uhMh]re1hX icssgLed_TESTrf1rg1}rh1(hjc1hja1ubaubahjJubj=)ri1}rj1(hUh}rk1(h]h]h]h]h]uhjY1h]rl1h)rm1}rn1(hX1Cycles through LEDs on the IDK application board.ro1hji1hj8hhh}rp1(h]h]h]h]h]uhMh]rq1hX1Cycles through LEDs on the IDK application board.rr1rs1}rt1(hjo1hjm1ubaubahjJubj=)ru1}rv1(hUh}rw1(h]h]h]h]h]uhjY1h]hjJubj=)rx1}ry1(hUh}rz1(h]h]h]h]h]uhjY1h]r{1h)r|1}r}1(hXxhjx1hj8hhh}r~1(h]h]h]h]h]uhMh]r1hXxr1}r1(hXxhj|1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhjY1h]hjJubehjubj8)r1}r1(hUh}r1(h]h]h]h]h]uhjVh]r1(j=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]r1h)r1}r1(hXicssgLedStress_TESTr1hj1hj8hhh}r1(h]h]h]h]h]uhMh]r1hXicssgLedStress_TESTr1r1}r1(hj1hj1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]r1h)r1}r1(hXCycles through LEDs on the IDK application board. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r1hj1hj8hhh}r1(h]h]h]h]h]uhMh]r1hXCycles through LEDs on the IDK application board. Test is repeated for 100 cycles. Press 'b' to stop the test before completing test cycles.r1r1}r1(hj1hj1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]r1h)r1}r1(hXxhj1hj8hhh}r1(h]h]h]h]h]uhMh]r1hXxr1}r1(hXxhj1ubaubahjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubj=)r1}r1(hUh}r1(h]h]h]h]h]uhj1h]hjJubehjubj8)r1}r2(hUh}r2(h]h]h]h]h]uhjVh]r2(j=)r2}r2(hUh}r2(h]h]h]h]h]uhj1h]r2h)r2}r2(hXbootSwitch_TESTr 2hj2hj8hhh}r 2(h]h]h]h]h]uhMh]r 2hXbootSwitch_TESTr 2r 2}r2(hj 2hj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj1h]r2h)r2}r2(hXVerifies boot mode switch by configuring boot strap pins as GPIOs and reading the pin state with boot switch set in different patternsr2hj2hj8hhh}r2(h]h]h]h]h]uhMh]r2hXVerifies boot mode switch by configuring boot strap pins as GPIOs and reading the pin state with boot switch set in different patternsr2r2}r2(hj2hj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj1h]r2h)r2}r 2(hXxhj2hj8hhh}r!2(h]h]h]h]h]uhMh]r"2hXxr#2}r$2(hXxhj2ubaubahjJubj=)r%2}r&2(hUh}r'2(h]h]h]h]h]uhj1h]r(2h)r)2}r*2(hXxhj%2hj8hhh}r+2(h]h]h]h]h]uhMh]r,2hXxr-2}r.2(hXxhj)2ubaubahjJubj=)r/2}r02(hUh}r12(h]h]h]h]h]uhj1h]hjJubj=)r22}r32(hUh}r42(h]h]h]h]h]uhj1h]hjJubj=)r52}r62(hUh}r72(h]h]h]h]h]uhj1h]hjJubj=)r82}r92(hUh}r:2(h]h]h]h]h]uhj1h]hjJubj=)r;2}r<2(hUh}r=2(h]h]h]h]h]uhj1h]hjJubj=)r>2}r?2(hUh}r@2(h]h]h]h]h]uhj1h]hjJubj=)rA2}rB2(hUh}rC2(h]h]h]h]h]uhj1h]hjJubj=)rD2}rE2(hUh}rF2(h]h]h]h]h]uhj1h]hjJubj=)rG2}rH2(hUh}rI2(h]h]h]h]h]uhj1h]hjJubj=)rJ2}rK2(hUh}rL2(h]h]h]h]h]uhj1h]hjJubj=)rM2}rN2(hUh}rO2(h]h]h]h]h]uhj1h]hjJubj=)rP2}rQ2(hUh}rR2(h]h]h]h]h]uhj1h]hjJubj=)rS2}rT2(hUh}rU2(h]h]h]h]h]uhj1h]hjJubj=)rV2}rW2(hUh}rX2(h]h]h]h]h]uhj1h]hjJubehjubj8)rY2}rZ2(hUh}r[2(h]h]h]h]h]uhjVh]r\2(j=)r]2}r^2(hUh}r_2(h]h]h]h]h]uhjY2h]r`2h)ra2}rb2(hX button_TESTrc2hj]2hj8hhh}rd2(h]h]h]h]h]uhMh]re2hX button_TESTrf2rg2}rh2(hjc2hja2ubaubahjJubj=)ri2}rj2(hUh}rk2(h]h]h]h]h]uhjY2h]rl2h)rm2}rn2(hXsVerifies push buttons on the board. Test prompts for pressing a specific button which will be detected by the test.ro2hji2hj8hhh}rp2(h]h]h]h]h]uhMh]rq2hXsVerifies push buttons on the board. Test prompts for pressing a specific button which will be detected by the test.rr2rs2}rt2(hjo2hjm2ubaubahjJubj=)ru2}rv2(hUh}rw2(h]h]h]h]h]uhjY2h]rx2h)ry2}rz2(hXxhju2hj8hhh}r{2(h]h]h]h]h]uhMh]r|2hXxr}2}r~2(hXxhjy2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]r2h)r2}r2(hXxhj2hj8hhh}r2(h]h]h]h]h]uhMh]r2hXxr2}r2(hXxhj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhjY2h]hjJubehjubj8)r2}r2(hUh}r2(h]h]h]h]h]uhjVh]r2(j=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]r2h)r2}r2(hX mcan_TESTr2hj2hj8hhh}r2(h]h]h]h]h]uhMh]r2hX mcan_TESTr2r2}r2(hj2hj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]r2h)r2}r2(hXVerifies MCAN ports on the board with two ports connected with each other. Data is sent from one port and received on another port. Both ports are veirified for Tx and Rxr2hj2hj8hhh}r2(h]h]h]h]h]uhMh]r2hXVerifies MCAN ports on the board with two ports connected with each other. Data is sent from one port and received on another port. Both ports are veirified for Tx and Rxr2r2}r2(hj2hj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]r2h)r2}r2(hXxhj2hj8hhh}r2(h]h]h]h]h]uhMh]r2hXxr2}r2(hXxhj2ubaubahjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r2}r2(hUh}r2(h]h]h]h]h]uhj2h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj2h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj2h]hjJubehjubj8)r3}r3(hUh}r3(h]h]h]h]h]uhjVh]r 3(j=)r 3}r 3(hUh}r 3(h]h]h]h]h]uhj3h]r 3h)r3}r3(hXmcanStress_TESTr3hj 3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXmcanStress_TESTr3r3}r3(hj3hj3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]r3h)r3}r3(hXVerifies MCAN ports on the board with two ports connected with each other. 10240 packets are sent from one port and received on another port. Both ports are veirified for Tx and Rxr3hj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXVerifies MCAN ports on the board with two ports connected with each other. 10240 packets are sent from one port and received on another port. Both ports are veirified for Tx and Rxr3r 3}r!3(hj3hj3ubaubahjJubj=)r"3}r#3(hUh}r$3(h]h]h]h]h]uhj3h]hjJubj=)r%3}r&3(hUh}r'3(h]h]h]h]h]uhj3h]r(3h)r)3}r*3(hXxhj%3hj8hhh}r+3(h]h]h]h]h]uhMh]r,3hXxr-3}r.3(hXxhj)3ubaubahjJubj=)r/3}r03(hUh}r13(h]h]h]h]h]uhj3h]hjJubj=)r23}r33(hUh}r43(h]h]h]h]h]uhj3h]hjJubj=)r53}r63(hUh}r73(h]h]h]h]h]uhj3h]hjJubj=)r83}r93(hUh}r:3(h]h]h]h]h]uhj3h]hjJubj=)r;3}r<3(hUh}r=3(h]h]h]h]h]uhj3h]hjJubj=)r>3}r?3(hUh}r@3(h]h]h]h]h]uhj3h]hjJubj=)rA3}rB3(hUh}rC3(h]h]h]h]h]uhj3h]hjJubj=)rD3}rE3(hUh}rF3(h]h]h]h]h]uhj3h]hjJubj=)rG3}rH3(hUh}rI3(h]h]h]h]h]uhj3h]hjJubj=)rJ3}rK3(hUh}rL3(h]h]h]h]h]uhj3h]hjJubj=)rM3}rN3(hUh}rO3(h]h]h]h]h]uhj3h]hjJubj=)rP3}rQ3(hUh}rR3(h]h]h]h]h]uhj3h]hjJubj=)rS3}rT3(hUh}rU3(h]h]h]h]h]uhj3h]hjJubj=)rV3}rW3(hUh}rX3(h]h]h]h]h]uhj3h]hjJubehjubj8)rY3}rZ3(hUh}r[3(h]h]h]h]h]uhjVh]r\3(j=)r]3}r^3(hUh}r_3(h]h]h]h]h]uhjY3h]r`3h)ra3}rb3(hX rs485_TESTrc3hj]3hj8hhh}rd3(h]h]h]h]h]uhMh]re3hX rs485_TESTrf3rg3}rh3(hjc3hja3ubaubahjJubj=)ri3}rj3(hUh}rk3(h]h]h]h]h]uhjY3h]rl3h)rm3}rn3(hXVerifies PRU UART port on the board. Supports board to board test and single board test. RS485 to RS232 coverter is needed to run the test on AM65xx platformro3hji3hj8hhh}rp3(h]h]h]h]h]uhMh]rq3hXVerifies PRU UART port on the board. Supports board to board test and single board test. RS485 to RS232 coverter is needed to run the test on AM65xx platformrr3rs3}rt3(hjo3hjm3ubaubahjJubj=)ru3}rv3(hUh}rw3(h]h]h]h]h]uhjY3h]hjJubj=)rx3}ry3(hUh}rz3(h]h]h]h]h]uhjY3h]r{3h)r|3}r}3(hXxhjx3hj8hhh}r~3(h]h]h]h]h]uhMh]r3hXxr3}r3(hXxhj|3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]r3h)r3}r3(hXxhj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXxr3}r3(hXxhj3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]r3h)r3}r3(hXxhj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXxr3}r3(hXxhj3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhjY3h]hjJubehjubj8)r3}r3(hUh}r3(h]h]h]h]h]uhjVh]r3(j=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]r3h)r3}r3(hXrs485Stress_TESTr3hj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXrs485Stress_TESTr3r3}r3(hj3hj3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]r3(h)r3}r3(hXVerifies PRU UART port on the board. Sends 10MB of data from the board to serial console. Teraterm script loops the data back to the board. Data recieved on the board and verified. RS485 to RS232 coverter is needed to run the test on AM65xx platform.r3hj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXVerifies PRU UART port on the board. Sends 10MB of data from the board to serial console. Teraterm script loops the data back to the board. Data recieved on the board and verified. RS485 to RS232 coverter is needed to run the test on AM65xx platform.r3r3}r3(hj3hj3ubaubh)r3}r3(hXANeed to run this test from CCS. SD boot support is not available.r3hj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXANeed to run this test from CCS. SD boot support is not available.r3r3}r3(hj3hj3ubaubehjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]r3h)r3}r3(hXxhj3hj8hhh}r3(h]h]h]h]h]uhMh]r3hXxr3}r3(hXxhj3ubaubahjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r3}r3(hUh}r3(h]h]h]h]h]uhj3h]hjJubj=)r4}r4(hUh}r4(h]h]h]h]h]uhj3h]hjJubj=)r4}r4(hUh}r4(h]h]h]h]h]uhj3h]hjJubj=)r4}r4(hUh}r4(h]h]h]h]h]uhj3h]hjJubj=)r 4}r 4(hUh}r 4(h]h]h]h]h]uhj3h]hjJubj=)r 4}r 4(hUh}r4(h]h]h]h]h]uhj3h]hjJubj=)r4}r4(hUh}r4(h]h]h]h]h]uhj3h]hjJubj=)r4}r4(hUh}r4(h]h]h]h]h]uhj3h]hjJubehjubj8)r4}r4(hUh}r4(h]h]h]h]h]uhjVh]r4(j=)r4}r4(hUh}r4(h]h]h]h]h]uhj4h]r4h)r4}r4(hXPower On Self Testr4hj4hj8hhh}r 4(h]h]h]h]h]uhMh]r!4hXPower On Self Testr"4r#4}r$4(hj4hj4ubaubahjJubj=)r%4}r&4(hUh}r'4(h]h]h]h]h]uhj4h]r(4h)r)4}r*4(hXVerifies basic memory devices on the board and displays the board ID details. Executed on boot automatically before displaying diag main menu. Can be skipped by entering 'b' in the serial console within 5 secs of diag boot.r+4hj%4hj8hhh}r,4(h]h]h]h]h]uhMh]r-4hXVerifies basic memory devices on the board and displays the board ID details. Executed on boot automatically before displaying diag main menu. Can be skipped by entering 'b' in the serial console within 5 secs of diag boot.r.4r/4}r04(hj+4hj)4ubaubahjJubj=)r14}r24(hUh}r34(h]h]h]h]h]uhj4h]r44h)r54}r64(hXxhj14hj8hhh}r74(h]h]h]h]h]uhMh]r84hXxr94}r:4(hXxhj54ubaubahjJubj=)r;4}r<4(hUh}r=4(h]h]h]h]h]uhj4h]r>4h)r?4}r@4(hXxhj;4hj8hhh}rA4(h]h]h]h]h]uhMh]rB4hXxrC4}rD4(hXxhj?4ubaubahjJubj=)rE4}rF4(hUh}rG4(h]h]h]h]h]uhj4h]hjJubj=)rH4}rI4(hUh}rJ4(h]h]h]h]h]uhj4h]hjJubj=)rK4}rL4(hUh}rM4(h]h]h]h]h]uhj4h]hjJubj=)rN4}rO4(hUh}rP4(h]h]h]h]h]uhj4h]hjJubj=)rQ4}rR4(hUh}rS4(h]h]h]h]h]uhj4h]hjJubj=)rT4}rU4(hUh}rV4(h]h]h]h]h]uhj4h]hjJubj=)rW4}rX4(hUh}rY4(h]h]h]h]h]uhj4h]hjJubj=)rZ4}r[4(hUh}r\4(h]h]h]h]h]uhj4h]hjJubj=)r]4}r^4(hUh}r_4(h]h]h]h]h]uhj4h]hjJubj=)r`4}ra4(hUh}rb4(h]h]h]h]h]uhj4h]hjJubj=)rc4}rd4(hUh}re4(h]h]h]h]h]uhj4h]hjJubj=)rf4}rg4(hUh}rh4(h]h]h]h]h]uhj4h]hjJubj=)ri4}rj4(hUh}rk4(h]h]h]h]h]uhj4h]hjJubj=)rl4}rm4(hUh}rn4(h]h]h]h]h]uhj4h]hjJubehjubehjUubehjVubaubj1)ro4}rp4(hUhj(hj8hj4h}rq4(h]h]h]h]h]uhMhhh]rr4j7)rs4}rt4(hXpSome diagnostic applications expect additional jumpers or hardware settings to complete. Refer to below section.ru4j:Khjo4hj8hhh}rv4(h]h]h]h]h]uhMhhh]rw4hXpSome diagnostic applications expect additional jumpers or hardware settings to complete. Refer to below section.rx4ry4}rz4(hju4hjs4ubaubaubeubj$eubhj8hhh}r{4(h]h]h]h]r|4U&additional-jumper-or-hardware-settingsr}4ah]r~4h-auhMhhh]r4(h)r4}r4(hX&Additional Jumper or Hardware Settingsr4hj$hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hX&Additional Jumper or Hardware Settingsr4r4}r4(hj4hj4ubaubh)r4}r4(hUhj$hj8hhh}r4(h]h]h]h]r4Ucurrent-monitorr4ah]r4hauhMhhh]r4(h)r4}r4(hXCurrent Monitorr4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXCurrent Monitorr4r4}r4(hj4hj4ubaubh)r4}r4(hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.r4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.r4r4}r4(hj4hj4ubaubeubh)r4}r4(hUhj$hj8hhh}r4(h]h]h]h]r4Ugmacr4ah]r4hIauhMhhh]r4(h)r4}r4(hXGMACr4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXGMACr4r4}r4(hj4hj4ubaubh)r4}r4(hX For idkAM572x, idkAM571x, idkAM574x and evmAM572x, this test expects loopback plugs to be used on both Ethernet ports. These loopback plugs will loopback the TX lines back to the RX lines. The Ethernet ports are the RJ-45 connectors labeled "Ethernet" on the board.r4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hX For idkAM572x, idkAM571x, idkAM574x and evmAM572x, this test expects loopback plugs to be used on both Ethernet ports. These loopback plugs will loopback the TX lines back to the RX lines. The Ethernet ports are the RJ-45 connectors labeled "Ethernet" on the board.r4r4}r4(hj4hj4ubaubeubh)r4}r4(hUhj$hj8hhh}r4(h]h]h]h]r4U icss-emacr4ah]r4h7auhM hhh]r4(h)r4}r4(hX ICSS EMACr4hj4hj8hhh}r4(h]h]h]h]h]uhM hhh]r4hX ICSS EMACr4r4}r4(hj4hj4ubaubh)r4}r4(hXFor idkAM572x, idkAM574x and idkAM571x, this test expects loopback plug to be used on J6. These loopback plugs will loopback the TX lines back to the RX lines. For iceK2G, this test expects loopback plugs to be used on all four ICSS EMAC ports.r4hj4hj8hhh}r4(h]h]h]h]h]uhM hhh]r4hXFor idkAM572x, idkAM574x and idkAM571x, this test expects loopback plug to be used on J6. These loopback plugs will loopback the TX lines back to the RX lines. For iceK2G, this test expects loopback plugs to be used on all four ICSS EMAC ports.r4r4}r4(hj4hj4ubaubeubh)r4}r4(hUhj$hj8hhh}r4(h]h]h]h]r4Ulcd-touchscreenr4ah]r4hhauhMhhh]r4(h)r4}r4(hXLCD Touchscreenr4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXLCD Touchscreenr4r4}r4(hj4hj4ubaubh)r4}r4(hXFor idkAM572x, idkAM574x and idkAM571x, this test expects the LCD module to be connected. This requires the two ribbon cables (one for display, one for the capacitive-touch IC) to be connected.r4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXFor idkAM572x, idkAM574x and idkAM571x, this test expects the LCD module to be connected. This requires the two ribbon cables (one for display, one for the capacitive-touch IC) to be connected.r4r4}r4(hj4hj4ubaubeubh)r4}r4(hUhj$hj8hhh}r4(h]h]h]h]r4Umcspir4ah]r4hauhMhhh]r4(h)r4}r4(hXMcSPIr4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXMcSPIr4r4}r4(hj4hj4ubaubh)r4}r4(hXFor idkAM572x, idkAM574x and idkAM571x, this test expects pins to be connected to the Industrial I/O header. The Industrial I/O header, J37, has two columns in parallel, one of which is the McSPI input and the other being VDD. Thus, connecting any row with a jumper will yield a '1' read on that McSPI input. By connecting the first, second, third, and forth row with jumpers would yield 0x1, 0x2, 0x4, and 0x8 being read respectively.r4hj4hj8hhh}r4(h]h]h]h]h]uhMhhh]r4hXFor idkAM572x, idkAM574x and idkAM571x, this test expects pins to be connected to the Industrial I/O header. The Industrial I/O header, J37, has two columns in parallel, one of which is the McSPI input and the other being VDD. Thus, connecting any row with a jumper will yield a '1' read on that McSPI input. By connecting the first, second, third, and forth row with jumpers would yield 0x1, 0x2, 0x4, and 0x8 being read respectively.r4r4}r4(hj4hj4ubaubeubj"eubhj8hhh}r4(h]h]h]h]r4Upwmr4ah]r4hrauhM#hhh]r4(h)r5}r5(hXPWMr5hj"hj8hhh}r5(h]h]h]h]h]uhM#hhh]r5hXPWMr5r5}r5(hj5hj5ubaubh)r5}r 5(hXUPWM output generated while running the diagnostic test can be verified at below pins.r 5hj"hj8hhh}r 5(h]h]h]h]h]uhM%hhh]r 5hXUPWM output generated while running the diagnostic test can be verified at below pins.r 5r5}r5(hj 5hj5ubaubh)r5}r5(hXevmK2G - J12 pin 33r5hj"hj8hhh}r5(h]h]h]h]h]uhM(hhh]r5hXevmK2G - J12 pin 33r5r5}r5(hj5hj5ubaubh)r5}r5(hXevmAM572x - P17 pin 5r5hj"hj8hhh}r5(h]h]h]h]h]uhM*hhh]r5hXevmAM572x - P17 pin 5r5r5}r5(hj5hj5ubaubh)r 5}r!5(hXidkAM437x - J16 pin 14r"5hj"hj8hhh}r#5(h]h]h]h]h]uhM,hhh]r$5hXidkAM437x - J16 pin 14r%5r&5}r'5(hj"5hj 5ubaubh)r(5}r)5(hXevmAM335x - J5 pin 13r*5hj"hj8hhh}r+5(h]h]h]h]h]uhM.hhh]r,5hXevmAM335x - J5 pin 13r-5r.5}r/5(hj*5hj(5ubaubeubhXlinternal padding after source/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Diagnostics.rst.incr05hjYh}r15(h]UlevelKh]h]Usourcej8h]h]UlineM0UtypejuhM2hhh]r25(h)r35}r45(hX;Content block expected for the "raw" directive; none found.h}r55(h]h]h]h]h]uhj h]r65hX;Content block expected for the "raw" directive; none found.r75r85}r95(hUhj35ubahhubj()r:5}r;5(hX.. raw:: html h}r<5(hhh]h]h]h]h]uhj h]r=5hX.. raw:: html r>5r?5}r@5(hUhj:5ubahj+ubeubh)rA5}rB5(hUhh)rC5}rD5(hUhKhh)rE5}rF5(hUhhhhhhh}rG5(h]h]h]h]rH5Udiagnostics-executionrI5ah]rJ5hauhK hhh]rK5(h)rL5}rM5(hXDiagnostics ExecutionrN5hjE5hhhhh}rO5(h]h]h]h]h]uhK hhh]rP5hXDiagnostics ExecutionrQ5rR5}rS5(hjN5hjL5ubaubjC5h)rT5}rU5(hUhjE5hhX_source/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Diagnostics_Execution.rst.incrV5rW5}rX5bhhh}rY5(h]h]h]h]rZ5Ufunctional-testsr[5ah]r\5h!auhKhhh]r]5(h)r^5}r_5(hXFunctional Testsr`5hjT5hjW5hhh}ra5(h]h]h]h]h]uhKhhh]rb5hXFunctional Testsrc5rd5}re5(hj`5hj^5ubaubh)rf5}rg5(hXTThis section describes the test procedure and setup for diagnostic functional tests.rh5hjT5hjW5hhh}ri5(h]h]h]h]h]uhKhhh]rj5hXTThis section describes the test procedure and setup for diagnostic functional tests.rk5rl5}rm5(hjh5hjf5ubaubh)rn5}ro5(hUhjT5hjW5hhh}rp5(h]h]h]h]rq5Uaccelerometer-testrr5ah]rs5hauhKhhh]rt5(h)ru5}rv5(hXAccelerometer Testrw5hjn5hjW5hhh}rx5(h]h]h]h]h]uhKhhh]ry5hXAccelerometer Testrz5r{5}r|5(hjw5hju5ubaubh)r}5}r~5(hXJThis test verifies the Accelerometer sensor on the HW platform under test.r5hjn5hjW5hhh}r5(h]h]h]h]h]uhKhhh]r5hXJThis test verifies the Accelerometer sensor on the HW platform under test.r5r5}r5(hj5hj}5ubaubh)r5}r5(hUhKhjn5hjW5hhh}r5(h]r5Xtest accessoriesr5ah]h]h]r5Utest-accessoriesr5ah]uhKhhh]r5(h)r5}r5(hXTest Accessoriesr5hj5hjW5hhh}r5(h]h]h]h]h]uhKhhh]r5hXTest Accessoriesr5r5}r5(hj5hj5ubaubh)r5}r5(hX=No additional accessories are required for running this test.r5hj5hjW5hhh}r5(h]h]h]h]h]uhKhhh]r5hX=No additional accessories are required for running this test.r5r5}r5(hj5hj5ubaubeubh)r5}r5(hUhKhjn5hjW5hhh}r5(h]r5X test setupr5ah]h]h]r5U test-setupr5ah]uhKhhh]r5(h)r5}r5(hX Test Setupr5hj5hjW5hhh}r5(h]h]h]h]h]uhKhhh]r5hX Test Setupr5r5}r5(hj5hj5ubaubh)r5}r5(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r5hj5hjW5hhh}r5(h]h]h]h]h]uhKhhh]r5hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r5r5}r5(hj5hj5ubaubeubh)r5}r5(hUhKhjn5hjW5hhh}r5(h]r5Xtest executionr5ah]h]h]r5Utest-executionr5ah]uhK!hhh]r5(h)r5}r5(hXTest Executionr5hj5hjW5hhh}r5(h]h]h]h]h]uhK!hhh]r5hXTest Executionr5r5}r5(hj5hj5ubaubj[)r5}r5(hUhj5hNhj^h}r5(h]h]h]h]h]uhNhhh]r5j)r5}r5(hUh}r5(jX-h]h]h]h]h]uhj5h]r5(j)r5}r5(hX6Select the menu option to run ‘accelerometer_TEST’r5h}r5(h]h]h]h]h]uhj5h]r5h)r5}r5(hj5hj5hjW5hhh}r5(h]h]h]h]h]uhK"h]r5hX6Select the menu option to run ‘accelerometer_TEST’r5r5}r5(hj5hj5ubaubahjubj)r5}r5(hX&Verify the test log on serial console h}r5(h]h]h]h]h]uhj5h]r5h)r5}r5(hX%Verify the test log on serial consoler5hj5hjW5hhh}r5(h]h]h]h]h]uhK#h]r5hX%Verify the test log on serial consoler5r5}r5(hj5hj5ubaubahjubehjubaubeubh)r5}r5(hUhKhjn5hjW5hhh}r5(h]r5Xtest logr5ah]h]h]r5Utest-logr5ah]uhK&hhh]r5(h)r5}r5(hXTest Logr5hj5hjW5hhh}r5(h]h]h]h]h]uhK&hhh]r5hXTest Logr5r5}r5(hj5hj5ubaubh)r5}r5(hX0Sample log for Accelerometer test is shown belowr5hj5hjW5hhh}r5(h]h]h]h]h]uhK'hhh]r5hX0Sample log for Accelerometer test is shown belowr5r5}r5(hj5hj5ubaubj()r5}r5(hX********************************************* * Accelerometer Test * ********************************************* Test: Expected Result: Actual Result: Result: ---------------- ---------------- -------------- ------- 0x32 PASS Self-Test(X Axis) 120-550 247 PASS Self-Test(Y axis) 120-550 192 PASS Self-Test(Z Axis) 140-750 349 PASS Exitinghj5hjW5hj+h}r5(hhh]h]h]h]h]uhM!hhh]r6hX********************************************* * Accelerometer Test * ********************************************* Test: Expected Result: Actual Result: Result: ---------------- ---------------- -------------- ------- 0x32 PASS Self-Test(X Axis) 120-550 247 PASS Self-Test(Y axis) 120-550 192 PASS Self-Test(Z Axis) 140-750 349 PASS Exitingr6r6}r6(hUhj5ubaubj1)r6}r6(hUhj5hjW5hj4h}r6(h]h]h]h]h]uhK7hhh]r6j7)r6}r 6(hUj:Khj6hjW5hhh}r 6(h]h]h]h]h]uhKhhh]ubaubeubeubh)r 6}r 6(hUhjT5hjW5hhh}r 6(h]h]h]h]r6Uadc-testr6ah]r6h.auhK:hhh]r6(h)r6}r6(hXADC Testr6hj 6hjW5hhh}r6(h]h]h]h]h]uhK:hhh]r6hXADC Testr6r6}r6(hj6hj6ubaubh)r6}r6(hX?This test verifies ADC interface on the HW platform under test.r6hj 6hjW5hhh}r6(h]h]h]h]h]uhK;hhh]r6hX?This test verifies ADC interface on the HW platform under test.r6r 6}r!6(hj6hj6ubaubh)r"6}r#6(hUhKhj 6hjW5hhh}r$6(h]r%6j5ah]h]h]r&6Uid13r'6ah]uhK>hhh]r(6(h)r)6}r*6(hXTest Accessoriesr+6hj"6hjW5hhh}r,6(h]h]h]h]h]uhK>hhh]r-6hXTest Accessoriesr.6r/6}r06(hj+6hj)6ubaubh)r16}r26(hX=No additional accessories are required for running this test.r36hj"6hjW5hhh}r46(h]h]h]h]h]uhK?hhh]r56hX=No additional accessories are required for running this test.r66r76}r86(hj36hj16ubaubeubh)r96}r:6(hUhKhj 6hjW5hhh}r;6(h]r<6j5ah]h]h]r=6Uid14r>6ah]uhKBhhh]r?6(h)r@6}rA6(hX Test SetuprB6hj96hjW5hhh}rC6(h]h]h]h]h]uhKBhhh]rD6hX Test SetuprE6rF6}rG6(hjB6hj@6ubaubh)rH6}rI6(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rJ6hj96hjW5hhh}rK6(h]h]h]h]h]uhKChhh]rL6hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rM6rN6}rO6(hjJ6hjH6ubaubeubh)rP6}rQ6(hUhKhj 6hjW5hhh}rR6(h]rS6j5ah]h]h]rT6Uid15rU6ah]uhKFhhh]rV6(h)rW6}rX6(hXTest ExecutionrY6hjP6hjW5hhh}rZ6(h]h]h]h]h]uhKFhhh]r[6hXTest Executionr\6r]6}r^6(hjY6hjW6ubaubj[)r_6}r`6(hUhjP6hNhj^h}ra6(h]h]h]h]h]uhNhhh]rb6j)rc6}rd6(hUh}re6(jX-h]h]h]h]h]uhj_6h]rf6(j)rg6}rh6(hX,Select the menu option to run ‘adc_TEST’ri6h}rj6(h]h]h]h]h]uhjc6h]rk6h)rl6}rm6(hji6hjg6hjW5hhh}rn6(h]h]h]h]h]uhKGh]ro6hX,Select the menu option to run ‘adc_TEST’rp6rq6}rr6(hji6hjl6ubaubahjubj)rs6}rt6(hX&Verify the test log on serial console h}ru6(h]h]h]h]h]uhjc6h]rv6h)rw6}rx6(hX%Verify the test log on serial consolery6hjs6hjW5hhh}rz6(h]h]h]h]h]uhKHh]r{6hX%Verify the test log on serial consoler|6r}6}r~6(hjy6hjw6ubaubahjubehjubaubeubh)r6}r6(hUhKhj 6hjW5hhh}r6(h]r6j5ah]h]h]r6Uid16r6ah]uhKKhhh]r6(h)r6}r6(hXTest Logr6hj6hjW5hhh}r6(h]h]h]h]h]uhKKhhh]r6hXTest Logr6r6}r6(hj6hj6ubaubh)r6}r6(hX&Sample log for ADC test is shown belowr6hj6hjW5hhh}r6(h]h]h]h]h]uhKLhhh]r6hX&Sample log for ADC test is shown belowr6r6}r6(hj6hj6ubaubj()r6}r6(hX********************************************* * ADC Test * ********************************************* Voltage sensed on the AN0 line : 846mV Voltage sensed on the AN1 line : 1156mv Test PASSED!hj6hjW5hj+h}r6(hhh]h]h]h]h]uhMFhhh]r6hX********************************************* * ADC Test * ********************************************* Voltage sensed on the AN0 line : 846mV Voltage sensed on the AN1 line : 1156mv Test PASSED!r6r6}r6(hUhj6ubaubj1)r6}r6(hUhj6hjW5hj4h}r6(h]h]h]h]h]uhKYhhh]r6j7)r6}r6(hUj:Khj6hjW5hhh}r6(h]h]h]h]h]uhKhhh]ubaubeubeubh)r6}r6(hUhjT5hjW5hhh}r6(h]h]h]h]r6Uboot-eeprom-testr6ah]r6hauhK\hhh]r6(h)r6}r6(hXBoot EEPROM Testr6hj6hjW5hhh}r6(h]h]h]h]h]uhK\hhh]r6hXBoot EEPROM Testr6r6}r6(hj6hj6ubaubh)r6}r6(hXThis test verifies Boot EEPROM memory. First and last page of the EEPROM are written with a test pattern and read back for data verification.r6hj6hjW5hhh}r6(h]h]h]h]h]uhK]hhh]r6hXThis test verifies Boot EEPROM memory. First and last page of the EEPROM are written with a test pattern and read back for data verification.r6r6}r6(hj6hj6ubaubh)r6}r6(hUhKhj6hjW5hhh}r6(h]r6Xtest accessoriesr6ah]h]h]r6Uid17r6ah]uhKahhh]r6(h)r6}r6(hXTest Accessoriesr6hj6hjW5hhh}r6(h]h]h]h]h]uhKahhh]r6hXTest Accessoriesr6r6}r6(hj6hj6ubaubh)r6}r6(hX=No additional accessories are required for running this test.r6hj6hjW5hhh}r6(h]h]h]h]h]uhKbhhh]r6hX=No additional accessories are required for running this test.r6r6}r6(hj6hj6ubaubeubh)r6}r6(hUhKhj6hjW5hhh}r6(h]r6X test setupr6ah]h]h]r6Uid18r6ah]uhKehhh]r6(h)r6}r6(hX Test Setupr6hj6hjW5hhh}r6(h]h]h]h]h]uhKehhh]r6hX Test Setupr6r6}r6(hj6hj6ubaubh)r6}r6(hXGMake sure pins 2-3 of J44 and J45 headers on AM65x CP board are shortedr6hj6hjW5hhh}r6(h]h]h]h]h]uhKfhhh]r6hXGMake sure pins 2-3 of J44 and J45 headers on AM65x CP board are shortedr6r6}r6(hj6hj6ubaubeubh)r6}r6(hUhKhj6hjW5hhh}r6(h]r6Xtest executionr6ah]h]h]r6Uid19r6ah]uhKihhh]r6(h)r6}r6(hXTest Executionr6hj6hjW5hhh}r6(h]h]h]h]h]uhKihhh]r6hXTest Executionr6r6}r6(hj6hj6ubaubj[)r6}r6(hUhj6hNhj^h}r6(h]h]h]h]h]uhNhhh]r6j)r6}r7(hUh}r7(jX-h]h]h]h]h]uhj6h]r7(j)r7}r7(hX3Select the menu option to run ‘bootEeprom_TEST’r7h}r7(h]h]h]h]h]uhj6h]r7h)r7}r 7(hj7hj7hjW5hhh}r 7(h]h]h]h]h]uhKjh]r 7hX3Select the menu option to run ‘bootEeprom_TEST’r 7r 7}r7(hj7hj7ubaubahjubj)r7}r7(hX&Verify the test log on serial console h}r7(h]h]h]h]h]uhj6h]r7h)r7}r7(hX%Verify the test log on serial consoler7hj7hjW5hhh}r7(h]h]h]h]h]uhKkh]r7hX%Verify the test log on serial consoler7r7}r7(hj7hj7ubaubahjubehjubaubeubh)r7}r7(hUhKhj6hjW5hhh}r7(h]r7Xtest logr7ah]h]h]r 7Uid20r!7ah]uhKnhhh]r"7(h)r#7}r$7(hXTest Logr%7hj7hjW5hhh}r&7(h]h]h]h]h]uhKnhhh]r'7hXTest Logr(7r)7}r*7(hj%7hj#7ubaubh)r+7}r,7(hX.Sample log for boot EEPROM test is shown belowr-7hj7hjW5hhh}r.7(h]h]h]h]h]uhKohhh]r/7hX.Sample log for boot EEPROM test is shown belowr07r17}r27(hj-7hj+7ubaubj()r37}r47(hX********************************************* * Boot EEPROM Test * ********************************************* Running Boot EEPROM test Detecting the Boot EEPROM device... Boot EEPROM device detection successful Boot EEPROM boundary verification test... Verifying the Boot EEPROM first page... Verifying the Boot EEPROM last page... Boot EEPROM boundary verification test successful Boot EEPROM test Passedhj7hjW5hj+h}r57(hhh]h]h]h]h]uhMihhh]r67hX********************************************* * Boot EEPROM Test * ********************************************* Running Boot EEPROM test Detecting the Boot EEPROM device... Boot EEPROM device detection successful Boot EEPROM boundary verification test... Verifying the Boot EEPROM first page... Verifying the Boot EEPROM last page... Boot EEPROM boundary verification test successful Boot EEPROM test Passedr77r87}r97(hUhj37ubaubj1)r:7}r;7(hUhj7hjW5hj4h}r<7(h]h]h]h]h]uhKhhh]r=7j7)r>7}r?7(hUj:Khj:7hjW5hhh}r@7(h]h]h]h]h]uhKhhh]ubaubeubeubh)rA7}rB7(hUhjT5hjW5hhh}rC7(h]h]h]h]rD7Uboot-switch-testrE7ah]rF7hauhKhhh]rG7(h)rH7}rI7(hXBoot Switch TestrJ7hjA7hjW5hhh}rK7(h]h]h]h]h]uhKhhh]rL7hXBoot Switch TestrM7rN7}rO7(hjJ7hjH7ubaubh)rP7}rQ7(hXCTest verifies boot mode switch by configuring boot strap pins as GPIOs and reading the pin state with boot switch set in different patterns. Test prompts to set the boot switch with a specific pattern and waits for user confirmation of the setting. ON-OFF-ON... sequence indicated by the test starts from switch position 1.rR7hjA7hjW5hhh}rS7(h]h]h]h]h]uhKhhh]rT7hXCTest verifies boot mode switch by configuring boot strap pins as GPIOs and reading the pin state with boot switch set in different patterns. Test prompts to set the boot switch with a specific pattern and waits for user confirmation of the setting. ON-OFF-ON... sequence indicated by the test starts from switch position 1.rU7rV7}rW7(hjR7hjP7ubaubh)rX7}rY7(hUhKhjA7hjW5hhh}rZ7(h]r[7Xtest accessoriesr\7ah]h]h]r]7Uid21r^7ah]uhKhhh]r_7(h)r`7}ra7(hXTest Accessoriesrb7hjX7hjW5hhh}rc7(h]h]h]h]h]uhKhhh]rd7hXTest Accessoriesre7rf7}rg7(hjb7hj`7ubaubh)rh7}ri7(hX=No additional accessories are required for running this test.rj7hjX7hjW5hhh}rk7(h]h]h]h]h]uhKhhh]rl7hX=No additional accessories are required for running this test.rm7rn7}ro7(hjj7hjh7ubaubeubh)rp7}rq7(hUhKhjA7hjW5hhh}rr7(h]rs7X test setuprt7ah]h]h]ru7Uid22rv7ah]uhKhhh]rw7(h)rx7}ry7(hX Test Setuprz7hjp7hjW5hhh}r{7(h]h]h]h]h]uhKhhh]r|7hX Test Setupr}7r~7}r7(hjz7hjx7ubaubh)r7}r7(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r7hjp7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r7r7}r7(hj7hj7ubaubeubh)r7}r7(hUhKhjA7hjW5hhh}r7(h]r7Xtest executionr7ah]h]h]r7Uid23r7ah]uhKhhh]r7(h)r7}r7(hXTest Executionr7hj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hXTest Executionr7r7}r7(hj7hj7ubaubj[)r7}r7(hUhj7hNhj^h}r7(h]h]h]h]h]uhNhhh]r7j)r7}r7(hUh}r7(jX-h]h]h]h]h]uhj7h]r7(j)r7}r7(hX3Select the menu option to run ‘bootSwitch_TEST’r7h}r7(h]h]h]h]h]uhj7h]r7h)r7}r7(hj7hj7hjW5hhh}r7(h]h]h]h]h]uhKh]r7hX3Select the menu option to run ‘bootSwitch_TEST’r7r7}r7(hj7hj7ubaubahjubj)r7}r7(hX=Setup the boot switch as instructed by the serial console logr7h}r7(h]h]h]h]h]uhj7h]r7h)r7}r7(hj7hj7hjW5hhh}r7(h]h]h]h]h]uhKh]r7hX=Setup the boot switch as instructed by the serial console logr7r7}r7(hj7hj7ubaubahjubj)r7}r7(hX&Verify the test log on serial console h}r7(h]h]h]h]h]uhj7h]r7h)r7}r7(hX%Verify the test log on serial consoler7hj7hjW5hhh}r7(h]h]h]h]h]uhKh]r7hX%Verify the test log on serial consoler7r7}r7(hj7hj7ubaubahjubehjubaubeubh)r7}r7(hUhKhjA7hjW5hhh}r7(h]r7Xtest logr7ah]h]h]r7Uid24r7ah]uhKhhh]r7(h)r7}r7(hXTest Logr7hj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hXTest Logr7r7}r7(hj7hj7ubaubh)r7}r7(hX.Sample log for boot switch test is shown belowr7hj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hX.Sample log for boot switch test is shown belowr7r7}r7(hj7hj7ubaubj()r7}r7(hX********************************************* * Boot Switch Test * ********************************************* Set All switches to OFF Press Enter after setting the switches Set the Switches to ON-OFF-ON-OFF... Press Enter after setting the switches Set the Switches to OFF-ON-OFF-ON... Press Enter after setting the switches Set All switches to ON Press Enter after setting the switches Test Passedhj7hjW5hj+h}r7(hhh]h]h]h]h]uhMhhh]r7hX********************************************* * Boot Switch Test * ********************************************* Set All switches to OFF Press Enter after setting the switches Set the Switches to ON-OFF-ON-OFF... Press Enter after setting the switches Set the Switches to OFF-ON-OFF-ON... Press Enter after setting the switches Set All switches to ON Press Enter after setting the switches Test Passedr7r7}r7(hUhj7ubaubj1)r7}r7(hUhj7hjW5hj4h}r7(h]h]h]h]h]uhKhhh]r7j7)r7}r7(hUj:Khj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]ubaubeubeubh)r7}r7(hUhjT5hjW5hhh}r7(h]h]h]h]r7U button-testr7ah]r7hauhKhhh]r7(h)r7}r7(hX Button Testr7hj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hX Button Testr7r7}r7(hj7hj7ubaubh)r7}r7(hXVerifies push buttons on the board. Test prompts for pressing a specific button which should be detected by the test and displayed on the console.r7hj7hjW5hhh}r7(h]h]h]h]h]uhKhhh]r7hXVerifies push buttons on the board. Test prompts for pressing a specific button which should be detected by the test and displayed on the console.r7r7}r8(hj7hj7ubaubh)r8}r8(hUhKhj7hjW5hhh}r8(h]r8Xtest accessoriesr8ah]h]h]r8Uid25r8ah]uhKhhh]r8(h)r 8}r 8(hXTest Accessoriesr 8hj8hjW5hhh}r 8(h]h]h]h]h]uhKhhh]r 8hXTest Accessoriesr8r8}r8(hj 8hj 8ubaubh)r8}r8(hX=No additional accessories are required for running this test.r8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hX=No additional accessories are required for running this test.r8r8}r8(hj8hj8ubaubeubh)r8}r8(hUhKhj7hjW5hhh}r8(h]r8X test setupr8ah]h]h]r8Uid26r8ah]uhKhhh]r 8(h)r!8}r"8(hX Test Setupr#8hj8hjW5hhh}r$8(h]h]h]h]h]uhKhhh]r%8hX Test Setupr&8r'8}r(8(hj#8hj!8ubaubh)r)8}r*8(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r+8hj8hjW5hhh}r,8(h]h]h]h]h]uhKhhh]r-8hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r.8r/8}r08(hj+8hj)8ubaubeubh)r18}r28(hUhKhj7hjW5hhh}r38(h]r48Xtest executionr58ah]h]h]r68Uid27r78ah]uhKhhh]r88(h)r98}r:8(hXTest Executionr;8hj18hjW5hhh}r<8(h]h]h]h]h]uhKhhh]r=8hXTest Executionr>8r?8}r@8(hj;8hj98ubaubj[)rA8}rB8(hUhj18hNhj^h}rC8(h]h]h]h]h]uhNhhh]rD8j)rE8}rF8(hUh}rG8(jX-h]h]h]h]h]uhjA8h]rH8(j)rI8}rJ8(hX/Select the menu option to run ‘button_TEST’rK8h}rL8(h]h]h]h]h]uhjE8h]rM8h)rN8}rO8(hjK8hjI8hjW5hhh}rP8(h]h]h]h]h]uhKh]rQ8hX/Select the menu option to run ‘button_TEST’rR8rS8}rT8(hjK8hjN8ubaubahjubj)rU8}rV8(hXJPress the button as instructed by the test messages on the serial console.rW8h}rX8(h]h]h]h]h]uhjE8h]rY8h)rZ8}r[8(hjW8hjU8hjW5hhh}r\8(h]h]h]h]h]uhKh]r]8hXJPress the button as instructed by the test messages on the serial console.r^8r_8}r`8(hjW8hjZ8ubaubahjubj)ra8}rb8(hXXVerify the test log on serial console. Make sure the button press is detected properly. h}rc8(h]h]h]h]h]uhjE8h]rd8h)re8}rf8(hXWVerify the test log on serial console. Make sure the button press is detected properly.rg8hja8hjW5hhh}rh8(h]h]h]h]h]uhKh]ri8hXWVerify the test log on serial console. Make sure the button press is detected properly.rj8rk8}rl8(hjg8hje8ubaubahjubehjubaubj)rm8}rn8(hX>Button release detection is supported only on AM65xx platform.ro8hj18hjW5hjh}rp8(h]h]h]h]h]uhNhhh]rq8h)rr8}rs8(hjo8hjm8hjW5hhh}rt8(h]h]h]h]h]uhKh]ru8hX>Button release detection is supported only on AM65xx platform.rv8rw8}rx8(hjo8hjr8ubaubaubeubh)ry8}rz8(hUhKhj7hjW5hhh}r{8(h]r|8Xtest logr}8ah]h]h]r~8Uid28r8ah]uhKhhh]r8(h)r8}r8(hXTest Logr8hjy8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hXTest Logr8r8}r8(hj8hj8ubaubh)r8}r8(hX.Sample log for push button test is shown belowr8hjy8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hX.Sample log for push button test is shown belowr8r8}r8(hj8hj8ubaubj()r8}r8(hX********************************************* * Button Test * ********************************************* Running button test... Button SW 5 WAIT Waiting for button press Button Pressed Button SW 5 WAIT Waiting for button release Button released Button SW 5 PASS Button SW 6 WAIT Waiting for button press Button Pressed Button SW 6 WAIT Waiting for button release Button released Button SW 6 PASS Test PASSED!hjy8hjW5hj+h}r8(hhh]h]h]h]h]uhMhhh]r8hX********************************************* * Button Test * ********************************************* Running button test... Button SW 5 WAIT Waiting for button press Button Pressed Button SW 5 WAIT Waiting for button release Button released Button SW 5 PASS Button SW 6 WAIT Waiting for button press Button Pressed Button SW 6 WAIT Waiting for button release Button released Button SW 6 PASS Test PASSED!r8r8}r8(hUhj8ubaubj1)r8}r8(hUhjy8hjW5hj4h}r8(h]h]h]h]h]uhKhhh]r8j7)r8}r8(hUj:Khj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]ubaubeubeubh)r8}r8(hUhjT5hjW5hhh}r8(h]h]h]h]r8U buzzer-testr8ah]r8hauhKhhh]r8(h)r8}r8(hX Buzzer Testr8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hX Buzzer Testr8r8}r8(hj8hj8ubaubh)r8}r8(hXFThis test verifies the Buzzer interface on the HW platform under test.r8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hXFThis test verifies the Buzzer interface on the HW platform under test.r8r8}r8(hj8hj8ubaubh)r8}r8(hUhKhj8hjW5hhh}r8(h]r8Xtest accessoriesr8ah]h]h]r8Uid29r8ah]uhKhhh]r8(h)r8}r8(hXTest Accessoriesr8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hXTest Accessoriesr8r8}r8(hj8hj8ubaubh)r8}r8(hX=No additional accessories are required for running this test.r8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hX=No additional accessories are required for running this test.r8r8}r8(hj8hj8ubaubeubh)r8}r8(hUhKhj8hjW5hhh}r8(h]r8X test setupr8ah]h]h]r8Uid30r8ah]uhKhhh]r8(h)r8}r8(hX Test Setupr8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hX Test Setupr8r8}r8(hj8hj8ubaubh)r8}r8(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r8r8}r8(hj8hj8ubaubeubh)r8}r8(hUhKhj8hjW5hhh}r8(h]r8Xtest executionr8ah]h]h]r8Uid31r8ah]uhKhhh]r8(h)r8}r8(hXTest Executionr8hj8hjW5hhh}r8(h]h]h]h]h]uhKhhh]r8hXTest Executionr8r8}r8(hj8hj8ubaubj[)r8}r8(hUhj8hNhj^h}r8(h]h]h]h]h]uhNhhh]r8j)r8}r8(hUh}r8(jX-h]h]h]h]h]uhj8h]r8(j)r8}r8(hX/Select the menu option to run ‘buzzer_TEST’r9h}r9(h]h]h]h]h]uhj8h]r9h)r9}r9(hj9hj8hjW5hhh}r9(h]h]h]h]h]uhKh]r9hX/Select the menu option to run ‘buzzer_TEST’r9r9}r 9(hj9hj9ubaubahjubj)r 9}r 9(hX*Verify the Buzzer sound on the HW platformr 9h}r 9(h]h]h]h]h]uhj8h]r9h)r9}r9(hj 9hj 9hjW5hhh}r9(h]h]h]h]h]uhKh]r9hX*Verify the Buzzer sound on the HW platformr9r9}r9(hj 9hj9ubaubahjubj)r9}r9(hX%Verify the test log on serial consoler9h}r9(h]h]h]h]h]uhj8h]r9h)r9}r9(hj9hj9hjW5hhh}r9(h]h]h]h]h]uhKh]r9hX%Verify the test log on serial consoler9r 9}r!9(hj9hj9ubaubahjubj)r"9}r#9(hXOPress 'y' to confirm proper buzzer output or any other key to indicate failure h}r$9(h]h]h]h]h]uhj8h]r%9h)r&9}r'9(hXNPress 'y' to confirm proper buzzer output or any other key to indicate failurer(9hj"9hjW5hhh}r)9(h]h]h]h]h]uhKh]r*9hXNPress 'y' to confirm proper buzzer output or any other key to indicate failurer+9r,9}r-9(hj(9hj&9ubaubahjubehjubaubeubh)r.9}r/9(hUhKhj8hjW5hhh}r09(h]r19Xtest logr29ah]h]h]r39Uid32r49ah]uhKhhh]r59(h)r69}r79(hXTest Logr89hj.9hjW5hhh}r99(h]h]h]h]h]uhKhhh]r:9hXTest Logr;9r<9}r=9(hj89hj69ubaubh)r>9}r?9(hX)Sample log for buzzer test is shown belowr@9hj.9hjW5hhh}rA9(h]h]h]h]h]uhKhhh]rB9hX)Sample log for buzzer test is shown belowrC9rD9}rE9(hj@9hj>9ubaubj()rF9}rG9(hX********************************************* * Buzzer Test * ********************************************* Testing Buzzer sound Press 'y' to verify pass: y Received: y Test PASSED!hj.9hjW5hj+h}rH9(hhh]h]h]h]h]uhMhhh]rI9hX********************************************* * Buzzer Test * ********************************************* Testing Buzzer sound Press 'y' to verify pass: y Received: y Test PASSED!rJ9rK9}rL9(hUhjF9ubaubj1)rM9}rN9(hUhj.9hjW5hj4h}rO9(h]h]h]h]h]uhMhhh]rP9j7)rQ9}rR9(hUj:KhjM9hjW5hhh}rS9(h]h]h]h]h]uhKhhh]ubaubeubeubh)rT9}rU9(hUhjT5hjW5hhh}rV9(h]h]h]h]rW9Uclock-generator-testrX9ah]rY9hauhMhhh]rZ9(h)r[9}r\9(hXClock Generator Testr]9hjT9hjW5hhh}r^9(h]h]h]h]h]uhMhhh]r_9hXClock Generator Testr`9ra9}rb9(hj]9hj[9ubaubh)rc9}rd9(hXThis test verifies clock generator interface on the HW platform under test. Need to probe and confirm the clocks during the test.re9hjT9hjW5hhh}rf9(h]h]h]h]h]uhMhhh]rg9hXThis test verifies clock generator interface on the HW platform under test. Need to probe and confirm the clocks during the test.rh9ri9}rj9(hje9hjc9ubaubh)rk9}rl9(hUhKhjT9hjW5hhh}rm9(h]rn9Xtest accessoriesro9ah]h]h]rp9Uid33rq9ah]uhM hhh]rr9(h)rs9}rt9(hXTest Accessoriesru9hjk9hjW5hhh}rv9(h]h]h]h]h]uhM hhh]rw9hXTest Accessoriesrx9ry9}rz9(hju9hjs9ubaubh)r{9}r|9(hX(Oscilloscope to verify the clock outputsr}9hjk9hjW5hhh}r~9(h]h]h]h]h]uhM hhh]r9hX(Oscilloscope to verify the clock outputsr9r9}r9(hj}9hj{9ubaubeubh)r9}r9(hUhKhjT9hjW5hhh}r9(h]r9X test setupr9ah]h]h]r9Uid34r9ah]uhMhhh]r9(h)r9}r9(hX Test Setupr9hj9hjW5hhh}r9(h]h]h]h]h]uhMhhh]r9hX Test Setupr9r9}r9(hj9hj9ubaubh)r9}r9(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r9hj9hjW5hhh}r9(h]h]h]h]h]uhMhhh]r9hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r9r9}r9(hj9hj9ubaubeubh)r9}r9(hUhKhjT9hjW5hhh}r9(h]r9Xtest executionr9ah]h]h]r9Uid35r9ah]uhMhhh]r9(h)r9}r9(hXTest Executionr9hj9hjW5hhh}r9(h]h]h]h]h]uhMhhh]r9hXTest Executionr9r9}r9(hj9hj9ubaubj[)r9}r9(hUhj9hNhj^h}r9(h]h]h]h]h]uhNhhh]r9j)r9}r9(hUh}r9(jX-h]h]h]h]h]uhj9h]r9(j)r9}r9(hX.Select the menu option to run ‘clock_TEST’r9h}r9(h]h]h]h]h]uhj9h]r9h)r9}r9(hj9hj9hjW5hhh}r9(h]h]h]h]h]uhMh]r9hX.Select the menu option to run ‘clock_TEST’r9r9}r9(hj9hj9ubaubahjubj)r9}r9(hX%Verify the test log on serial consoler9h}r9(h]h]h]h]h]uhj9h]r9h)r9}r9(hj9hj9hjW5hhh}r9(h]h]h]h]h]uhMh]r9hX%Verify the test log on serial consoler9r9}r9(hj9hj9ubaubahjubj)r9}r9(hXVVerify the clock generator output clocks and confirm the result on the serial console h}r9(h]h]h]h]h]uhj9h]r9h)r9}r9(hXUVerify the clock generator output clocks and confirm the result on the serial consoler9hj9hjW5hhh}r9(h]h]h]h]h]uhMh]r9hXUVerify the clock generator output clocks and confirm the result on the serial consoler9r9}r9(hj9hj9ubaubahjubehjubaubeubh)r9}r9(hUhKhjT9hjW5hhh}r9(h]r9Xtest logr9ah]h]h]r9Uid36r9ah]uhMhhh]r9(h)r9}r9(hXTest Logr9hj9hjW5hhh}r9(h]h]h]h]h]uhMhhh]r9hXTest Logr9r9}r9(hj9hj9ubaubh)r9}r9(hX2Sample log for clock generator test is shown belowr9hj9hjW5hhh}r9(h]h]h]h]h]uhMhhh]r9hX2Sample log for clock generator test is shown belowr9r9}r9(hj9hj9ubaubj()r9}r9(hX********************************** CLOCK GENERATOR Test ********************************** Running Clock generator Detect Test Clock generator Detection Successful! Clock generator Detect Test Passed! Running Clock generator probe Test Probe the clock generator clock outputs Are the signals generated properly ? Press 'Y' to confirm, any other key to deny y Clock generator probe Test Passed! Clock generator Test Passed! Clock generator Tests Completed!! -----------------X-----------------hj9hjW5hj+h}r9(hhh]h]h]h]h]uhM hhh]r9hX********************************** CLOCK GENERATOR Test ********************************** Running Clock generator Detect Test Clock generator Detection Successful! Clock generator Detect Test Passed! Running Clock generator probe Test Probe the clock generator clock outputs Are the signals generated properly ? Press 'Y' to confirm, any other key to deny y Clock generator probe Test Passed! Clock generator Test Passed! Clock generator Tests Completed!! -----------------X-----------------r9r9}r9(hUhj9ubaubj1)r9}r9(hUhj9hjW5hj4h}r9(h]h]h]h]h]uhM9hhh]r9j7)r9}r9(hUj:Khj9hjW5hhh}r9(h]h]h]h]h]uhKhhh]ubaubeubeubh)r9}r9(hUhjT5hjW5hhh}r9(h]h]h]h]r:Ucurrent-monitor-testr:ah]r:hjauhM<hhh]r:(h)r:}r:(hXCurrent Monitor Testr:hj9hjW5hhh}r:(h]h]h]h]h]uhM<hhh]r:hXCurrent Monitor Testr :r :}r :(hj:hj:ubaubh)r :}r :(hXTest reads the voltage and current values from different current monitor devices available on the board. All the current monitor devices available on the board are verified during the test.r:hj9hjW5hhh}r:(h]h]h]h]h]uhM=hhh]r:hXTest reads the voltage and current values from different current monitor devices available on the board. All the current monitor devices available on the board are verified during the test.r:r:}r:(hj:hj :ubaubh)r:}r:(hUhKhj9hjW5hhh}r:(h]r:Xtest accessoriesr:ah]h]h]r:Uid37r:ah]uhMAhhh]r:(h)r:}r:(hXTest Accessoriesr:hj:hjW5hhh}r:(h]h]h]h]h]uhMAhhh]r :hXTest Accessoriesr!:r":}r#:(hj:hj:ubaubh)r$:}r%:(hX=No additional accessories are required for running this test.r&:hj:hjW5hhh}r':(h]h]h]h]h]uhMBhhh]r(:hX=No additional accessories are required for running this test.r):r*:}r+:(hj&:hj$:ubaubeubh)r,:}r-:(hUhKhj9hjW5hhh}r.:(h]r/:X test setupr0:ah]h]h]r1:Uid38r2:ah]uhMEhhh]r3:(h)r4:}r5:(hX Test Setupr6:hj,:hjW5hhh}r7:(h]h]h]h]h]uhMEhhh]r8:hX Test Setupr9:r::}r;:(hj6:hj4:ubaubh)r<:}r=:(hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.r>:hj,:hjW5hhh}r?:(h]h]h]h]h]uhMFhhh]r@:hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.rA:rB:}rC:(hj>:hj<:ubaubeubh)rD:}rE:(hUhKhj9hjW5hhh}rF:(h]rG:Xtest executionrH:ah]h]h]rI:Uid39rJ:ah]uhMJhhh]rK:(h)rL:}rM:(hXTest ExecutionrN:hjD:hjW5hhh}rO:(h]h]h]h]h]uhMJhhh]rP:hXTest ExecutionrQ:rR:}rS:(hjN:hjL:ubaubj[)rT:}rU:(hUhjD:hNhj^h}rV:(h]h]h]h]h]uhNhhh]rW:j)rX:}rY:(hUh}rZ:(jX-h]h]h]h]h]uhjT:h]r[:(j)r\:}r]:(hX7Select the menu option to run ‘currentMonitor_TEST’r^:h}r_:(h]h]h]h]h]uhjX:h]r`:h)ra:}rb:(hj^:hj\:hjW5hhh}rc:(h]h]h]h]h]uhMKh]rd:hX7Select the menu option to run ‘currentMonitor_TEST’re:rf:}rg:(hj^:hja:ubaubahjubj)rh:}ri:(hX&Verify the test log on serial console h}rj:(h]h]h]h]h]uhjX:h]rk:h)rl:}rm:(hX%Verify the test log on serial consolern:hjh:hjW5hhh}ro:(h]h]h]h]h]uhMLh]rp:hX%Verify the test log on serial consolerq:rr:}rs:(hjn:hjl:ubaubahjubehjubaubeubh)rt:}ru:(hUhKhj9hjW5hhh}rv:(h]rw:Xtest logrx:ah]h]h]ry:Uid40rz:ah]uhMOhhh]r{:(h)r|:}r}:(hXTest Logr~:hjt:hjW5hhh}r:(h]h]h]h]h]uhMOhhh]r:hXTest Logr:r:}r:(hj~:hj|:ubaubh)r:}r:(hX2Sample log for current monitor test is shown belowr:hjt:hjW5hhh}r:(h]h]h]h]h]uhMPhhh]r:hX2Sample log for current monitor test is shown belowr:r:}r:(hj:hj:ubaubj()r:}r:(hX********************************************** * Current Monitor Test * ********************************************** Running Current Monitor Test... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Calibration Value = 16777 Reading the Shunt Voltage register... Shunt Voltage Register Value = 9 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 800 Bus Voltage = 1000mV Reading the Power register... Power Register Value = 3 Power = 915mW Reading the Current register... Current Register Value = 74 Current = 11mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Calibration Value = 16777 Reading the Shunt Voltage register... Shunt Voltage Register Value = 1534 Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage Register Value = 797 Bus Voltage = 996mV Reading the Power register... Power Register Value = 501 Power = 19108mW Reading the Current register... Current Register Value = 12566 Current = 383mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Calibration Value = 27962 Reading the Shunt Voltage register... Shunt Voltage Register Value = 6 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 802 Bus Voltage = 1002mV Reading the Power register... Power Register Value = 3 Power = 503mW Reading the Current register... Current Register Value = 82 Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Calibration Value = 27962 Reading the Shunt Voltage register... Shunt Voltage Register Value = 15 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 2665 Bus Voltage = 3331mV Reading the Power register... Power Register Value = 28 Power = 2670mW Reading the Current register... Current Register Value = 205 Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Calibration Value = 5592 Reading the Shunt Voltage register... Shunt Voltage Register Value = 108 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 1442 Bus Voltage = 1802mV Reading the Power register... Power Register Value = 21 Power = 3204mW Reading the Current register... Current Register Value = 295 Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Calibration Value = 41943 Reading the Shunt Voltage register... Shunt Voltage Register Value = 1196 Shunt Voltage = 2mV Reading the Bus Voltage register... Bus Voltage Register Value = 1442 Bus Voltage = 1802mV Reading the Power register... Power Register Value = 387 Power = 14760mW Reading the Current register... Current Register Value = 5358 Current = 65mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Calibration Value = 8388 Reading the Shunt Voltage register... Shunt Voltage Register Value = 256 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 956 Bus Voltage = 1195mV Reading the Power register... Power Register Value = 50 Power = 1335mW Reading the Current register... Current Register Value = 1049 Current = 63mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Calibration Value = 8388 Reading the Shunt Voltage register... Shunt Voltage Register Value = 38 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 957 Bus Voltage = 1196mV Reading the Power register... Power Register Value = 8 Power = 689mW Reading the Current register... Current Register Value = 156 Current = 9mAhjt:hjW5hj+h}r:(hhh]h]h]h]h]uhMJ hhh]r:hX********************************************** * Current Monitor Test * ********************************************** Running Current Monitor Test... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Calibration Value = 16777 Reading the Shunt Voltage register... Shunt Voltage Register Value = 9 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 800 Bus Voltage = 1000mV Reading the Power register... Power Register Value = 3 Power = 915mW Reading the Current register... Current Register Value = 74 Current = 11mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Calibration Value = 16777 Reading the Shunt Voltage register... Shunt Voltage Register Value = 1534 Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage Register Value = 797 Bus Voltage = 996mV Reading the Power register... Power Register Value = 501 Power = 19108mW Reading the Current register... Current Register Value = 12566 Current = 383mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Calibration Value = 27962 Reading the Shunt Voltage register... Shunt Voltage Register Value = 6 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 802 Bus Voltage = 1002mV Reading the Power register... Power Register Value = 3 Power = 503mW Reading the Current register... Current Register Value = 82 Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Calibration Value = 27962 Reading the Shunt Voltage register... Shunt Voltage Register Value = 15 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 2665 Bus Voltage = 3331mV Reading the Power register... Power Register Value = 28 Power = 2670mW Reading the Current register... Current Register Value = 205 Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Calibration Value = 5592 Reading the Shunt Voltage register... Shunt Voltage Register Value = 108 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 1442 Bus Voltage = 1802mV Reading the Power register... Power Register Value = 21 Power = 3204mW Reading the Current register... Current Register Value = 295 Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Calibration Value = 41943 Reading the Shunt Voltage register... Shunt Voltage Register Value = 1196 Shunt Voltage = 2mV Reading the Bus Voltage register... Bus Voltage Register Value = 1442 Bus Voltage = 1802mV Reading the Power register... Power Register Value = 387 Power = 14760mW Reading the Current register... Current Register Value = 5358 Current = 65mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Calibration Value = 8388 Reading the Shunt Voltage register... Shunt Voltage Register Value = 256 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 956 Bus Voltage = 1195mV Reading the Power register... Power Register Value = 50 Power = 1335mW Reading the Current register... Current Register Value = 1049 Current = 63mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Calibration Value = 8388 Reading the Shunt Voltage register... Shunt Voltage Register Value = 38 Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage Register Value = 957 Bus Voltage = 1196mV Reading the Power register... Power Register Value = 8 Power = 689mW Reading the Current register... Current Register Value = 156 Current = 9mAr:r:}r:(hUhj:ubaubj1)r:}r:(hUhjt:hjW5hj4h}r:(h]h]h]h]h]uhMhhh]r:j7)r:}r:(hUj:Khj:hjW5hhh}r:(h]h]h]h]h]uhKhhh]ubaubeubeubh)r:}r:(hUhjT5hjW5hhh}r:(h]h]h]h]r:U dcan-testr:ah]r:hauhMhhh]r:(h)r:}r:(hX DCAN Testr:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hX DCAN Testr:r:}r:(hj:hj:ubaubh)r:}r:(hXThis test verifies the DCAN ports on the HW platform under test. Test supports verifying the DCAN interface in internal and external loopback modes.r:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hXThis test verifies the DCAN ports on the HW platform under test. Test supports verifying the DCAN interface in internal and external loopback modes.r:r:}r:(hj:hj:ubaubh)r:}r:(hUhKhj:hjW5hhh}r:(h]r:Xtest accessoriesr:ah]h]h]r:Uid41r:ah]uhMhhh]r:(h)r:}r:(hXTest Accessoriesr:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hXTest Accessoriesr:r:}r:(hj:hj:ubaubh)r:}r:(hX DCAN loopback cable (for evmK2G)r:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hX DCAN loopback cable (for evmK2G)r:r:}r:(hj:hj:ubaubeubh)r:}r:(hUhKhj:hjW5hhh}r:(h]r:X test setupr:ah]h]h]r:Uid42r:ah]uhMhhh]r:(h)r:}r:(hX Test Setupr:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hX Test Setupr:r:}r:(hj:hj:ubaubh)r:}r:(hXLConnect two DCAN ports (P2 and P3) with DCAN loopback cable - only on evmK2Gr:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hXLConnect two DCAN ports (P2 and P3) with DCAN loopback cable - only on evmK2Gr:r:}r:(hj:hj:ubaubeubh)r:}r:(hUhKhj:hjW5hhh}r:(h]r:Xtest executionr:ah]h]h]r:Uid43r:ah]uhMhhh]r:(h)r:}r:(hXTest Executionr:hj:hjW5hhh}r:(h]h]h]h]h]uhMhhh]r:hXTest Executionr:r:}r:(hj:hj:ubaubj[)r:}r:(hUhj:hNhj^h}r:(h]h]h]h]h]uhNhhh]r:j)r:}r:(hUh}r:(jX-h]h]h]h]h]uhj:h]r:(j)r:}r:(hX-Select the menu option to run ‘dcan_TEST’r:h}r:(h]h]h]h]h]uhj:h]r:h)r:}r:(hj:hj:hjW5hhh}r;(h]h]h]h]h]uhMh]r;hX-Select the menu option to run ‘dcan_TEST’r;r;}r;(hj:hj:ubaubahjubj)r;}r;(hXEFollow the instructions on serial console to select the DCAN instancer;h}r;(h]h]h]h]h]uhj:h]r ;h)r ;}r ;(hj;hj;hjW5hhh}r ;(h]h]h]h]h]uhMh]r ;hXEFollow the instructions on serial console to select the DCAN instancer;r;}r;(hj;hj ;ubaubahjubj)r;}r;(hX&Verify the test log on serial console h}r;(h]h]h]h]h]uhj:h]r;h)r;}r;(hX%Verify the test log on serial consoler;hj;hjW5hhh}r;(h]h]h]h]h]uhMh]r;hX%Verify the test log on serial consoler;r;}r;(hj;hj;ubaubahjubehjubaubeubh)r;}r;(hUhKhj:hjW5hhh}r;(h]r ;Xtest logr!;ah]h]h]r";Uid44r#;ah]uhMhhh]r$;(h)r%;}r&;(hXTest Logr';hj;hjW5hhh}r(;(h]h]h]h]h]uhMhhh]r);hXTest Logr*;r+;}r,;(hj';hj%;ubaubh)r-;}r.;(hX'Sample log for DCAN test is shown belowr/;hj;hjW5hhh}r0;(h]h]h]h]h]uhMhhh]r1;hX'Sample log for DCAN test is shown belowr2;r3;}r4;(hj/;hj-;ubaubj()r5;}r6;(hX********************************************* * DCAN Test * ********************************************* **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : 1 DCAN External Loopback Test App: DCAN1 MSG OBJ 1 (TX) to DCAN1 MSG OBJ 2 (RX) DCAN -- External Loopback Testmode test Passed!! **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : 2 DCAN Internal Loopback Test App: DCAN2 MSG OBJ 1 (TX) to DCAN2 MSG OBJ 2 (RX) DCAN -- Internal Loopback Testmode test Passed!! **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : x DCAN Application Test exiting...hj;hjW5hj+h}r7;(hhh]h]h]h]h]uhM hhh]r8;hX********************************************* * DCAN Test * ********************************************* **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : 1 DCAN External Loopback Test App: DCAN1 MSG OBJ 1 (TX) to DCAN1 MSG OBJ 2 (RX) DCAN -- External Loopback Testmode test Passed!! **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : 2 DCAN Internal Loopback Test App: DCAN2 MSG OBJ 1 (TX) to DCAN2 MSG OBJ 2 (RX) DCAN -- Internal Loopback Testmode test Passed!! **** DCAN APPLICATION TEST **** Menu: 1. DCAN External Loopback test - DCAN1 Instance 2. DCAN Internal Loopback test - DCAN2 Instance x. Exit Select DCAN APPLICATION TEST : x DCAN Application Test exiting...r9;r:;}r;;(hUhj5;ubaubj1)r<;}r=;(hUhj;hjW5hj4h}r>;(h]h]h]h]h]uhM*hhh]r?;j7)r@;}rA;(hUj:Khj<;hjW5hhh}rB;(h]h]h]h]h]uhKhhh]ubaubeubeubh)rC;}rD;(hUhjT5hjW5hhh}rE;(h]h]h]h]rF;U eeprom-testrG;ah]rH;hGauhM-hhh]rI;(h)rJ;}rK;(hX EEPROM TestrL;hjC;hjW5hhh}rM;(h]h]h]h]h]uhM-hhh]rN;hX EEPROM TestrO;rP;}rQ;(hjL;hjJ;ubaubh)rR;}rS;(hXIThis test reads and displays the board ID details from the EEPROM memory.rT;hjC;hjW5hhh}rU;(h]h]h]h]h]uhM.hhh]rV;hXIThis test reads and displays the board ID details from the EEPROM memory.rW;rX;}rY;(hjT;hjR;ubaubh)rZ;}r[;(hUhKhjC;hjW5hhh}r\;(h]r];Xtest accessoriesr^;ah]h]h]r_;Uid45r`;ah]uhM1hhh]ra;(h)rb;}rc;(hXTest Accessoriesrd;hjZ;hjW5hhh}re;(h]h]h]h]h]uhM1hhh]rf;hXTest Accessoriesrg;rh;}ri;(hjd;hjb;ubaubh)rj;}rk;(hX=No additional accessories are required for running this test.rl;hjZ;hjW5hhh}rm;(h]h]h]h]h]uhM2hhh]rn;hX=No additional accessories are required for running this test.ro;rp;}rq;(hjl;hjj;ubaubeubh)rr;}rs;(hUhKhjC;hjW5hhh}rt;(h]ru;X test setuprv;ah]h]h]rw;Uid46rx;ah]uhM5hhh]ry;(h)rz;}r{;(hX Test Setupr|;hjr;hjW5hhh}r};(h]h]h]h]h]uhM5hhh]r~;hX Test Setupr;r;}r;(hj|;hjz;ubaubh)r;}r;(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r;hjr;hjW5hhh}r;(h]h]h]h]h]uhM6hhh]r;hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r;r;}r;(hj;hj;ubaubeubh)r;}r;(hUhKhjC;hjW5hhh}r;(h]r;Xtest executionr;ah]h]h]r;Uid47r;ah]uhM9hhh]r;(h)r;}r;(hXTest Executionr;hj;hjW5hhh}r;(h]h]h]h]h]uhM9hhh]r;hXTest Executionr;r;}r;(hj;hj;ubaubj[)r;}r;(hUhj;hNhj^h}r;(h]h]h]h]h]uhNhhh]r;j)r;}r;(hUh}r;(jX-h]h]h]h]h]uhj;h]r;(j)r;}r;(hX/Select the menu option to run ‘eeprom_TEST’r;h}r;(h]h]h]h]h]uhj;h]r;h)r;}r;(hj;hj;hjW5hhh}r;(h]h]h]h]h]uhM:h]r;hX/Select the menu option to run ‘eeprom_TEST’r;r;}r;(hj;hj;ubaubahjubj)r;}r;(hX<Verify the board ID details displayed on the serial console h}r;(h]h]h]h]h]uhj;h]r;h)r;}r;(hX;Verify the board ID details displayed on the serial consoler;hj;hjW5hhh}r;(h]h]h]h]h]uhM;h]r;hX;Verify the board ID details displayed on the serial consoler;r;}r;(hj;hj;ubaubahjubehjubaubeubh)r;}r;(hUhKhjC;hjW5hhh}r;(h]r;Xtest logr;ah]h]h]r;Uid48r;ah]uhM>hhh]r;(h)r;}r;(hXTest Logr;hj;hjW5hhh}r;(h]h]h]h]h]uhM>hhh]r;hXTest Logr;r;}r;(hj;hj;ubaubh)r;}r;(hX2Sample log for Board ID EEPROM test is shown belowr;hj;hjW5hhh}r;(h]h]h]h]h]uhM?hhh]r;hX2Sample log for Board ID EEPROM test is shown belowr;r;}r;(hj;hj;ubaubj()r;}r;(hX********************************************* * EEPROM Test * ********************************************* header: aa5533ee boardName: 66AK2GICE version: 1.0A serialNum: 09164P540001 Test PASSED!hj;hjW5hj+h}r;(hhh]h]h]h]h]uhM9 hhh]r;hX********************************************* * EEPROM Test * ********************************************* header: aa5533ee boardName: 66AK2GICE version: 1.0A serialNum: 09164P540001 Test PASSED!r;r;}r;(hUhj;ubaubj1)r;}r;(hUhj;hjW5hj4h}r;(h]h]h]h]h]uhMLhhh]r;j7)r;}r;(hUj:Khj;hjW5hhh}r;(h]h]h]h]h]uhKhhh]ubaubj)r;}r;(hXJBoard ID content shown in the above log changes from platform to platform.r;hj;hjW5hjh}r;(h]h]h]h]h]uhNhhh]r;h)r;}r;(hj;hj;hjW5hhh}r;(h]h]h]h]h]uhMOh]r;hXJBoard ID content shown in the above log changes from platform to platform.r;r;}r;(hj;hj;ubaubaubeubeubh)r;}r;(hUhjT5hjW5hhh}r;(h]h]h]h]r;U emac-testr;ah]r;hKauhMShhh]r;(h)r;}r;(hX EMAC Testr;hj;hjW5hhh}r;(h]h]h]h]h]uhMShhh]r;hX EMAC Testr;r;}r;(hj;hj;ubaubh)r;}r;(hX_This test verifies the EMAC Ethernet port on HW platform under test. Ethernet link and data transmit/receive are verified during this test. Ethernet interface is configured for 100mbps speed and 10 packets are sent/received during the test. Ethernet cable disconnect/reconnect and data transfer after cable connection is also verified during the test.r;hj;hjW5hhh}r;(h]h]h]h]h]uhMThhh]r;hX_This test verifies the EMAC Ethernet port on HW platform under test. Ethernet link and data transmit/receive are verified during this test. Ethernet interface is configured for 100mbps speed and 10 packets are sent/received during the test. Ethernet cable disconnect/reconnect and data transfer after cable connection is also verified during the test.r<r<}r<(hj;hj;ubaubh)r<}r<(hUhKhj;hjW5hhh}r<(h]r<Xtest accessoriesr<ah]h]h]r<Uid49r <ah]uhMZhhh]r <(h)r <}r <(hXTest Accessoriesr <hj<hjW5hhh}r<(h]h]h]h]h]uhMZhhh]r<hXTest Accessoriesr<r<}r<(hj <hj <ubaubh)r<}r<(hXEthernet loopback cables/plugsr<hj<hjW5hhh}r<(h]h]h]h]h]uhM[hhh]r<hXEthernet loopback cables/plugsr<r<}r<(hj<hj<ubaubeubh)r<}r<(hUhKhj;hjW5hhh}r<(h]r<X test setupr<ah]h]h]r <Uid50r!<ah]uhM^hhh]r"<(h)r#<}r$<(hX Test Setupr%<hj<hjW5hhh}r&<(h]h]h]h]h]uhM^hhh]r'<hX Test Setupr(<r)<}r*<(hj%<hj#<ubaubh)r+<}r,<(hXConnect the Ethernet loopback cables to the EMAC Ethernet port (RJ-45) on the board. Check below table for the details of EMAC Ethernet ports used by the test on different platforms.r-<hj<hjW5hhh}r.<(h]h]h]h]h]uhM_hhh]r/<hXConnect the Ethernet loopback cables to the EMAC Ethernet port (RJ-45) on the board. Check below table for the details of EMAC Ethernet ports used by the test on different platforms.r0<r1<}r2<(hj-<hj+<ubaubj)r3<}r4<(hUhj<hjW5hj h}r5<(h]h]h]h]h]uhNhhh]r6<j)r7<}r8<(hUh}r9<(h]h]h]h]h]UcolsKuhj3<h]r:<(j)r;<}r<<(hUh}r=<(h]h]h]h]h]UcolwidthKuhj7<h]hjubj)r><}r?<(hUh}r@<(h]h]h]h]h]UcolwidthKuhj7<h]hjubj3)rA<}rB<(hUh}rC<(h]h]h]h]h]uhj7<h]rD<j8)rE<}rF<(hUh}rG<(h]h]h]h]h]uhjA<h]rH<(j=)rI<}rJ<(hUh}rK<(h]h]h]h]h]uhjE<h]rL<h)rM<}rN<(hX HW PlatformrO<hjI<hjW5hhh}rP<(h]h]h]h]h]uhMch]rQ<hX HW PlatformrR<rS<}rT<(hjO<hjM<ubaubahjJubj=)rU<}rV<(hUh}rW<(h]h]h]h]h]uhjE<h]rX<h)rY<}rZ<(hX Ethernet Portr[<hjU<hjW5hhh}r\<(h]h]h]h]h]uhMch]r]<hX Ethernet Portr^<r_<}r`<(hj[<hjY<ubaubahjJubehjubahjubj)ra<}rb<(hUh}rc<(h]h]h]h]h]uhj7<h]rd<(j8)re<}rf<(hUh}rg<(h]h]h]h]h]uhja<h]rh<(j=)ri<}rj<(hUh}rk<(h]h]h]h]h]uhje<h]rl<h)rm<}rn<(hXiceK2Gro<hji<hjW5hhh}rp<(h]h]h]h]h]uhMeh]rq<hXiceK2Grr<rs<}rt<(hjo<hjm<ubaubahjJubj=)ru<}rv<(hUh}rw<(h]h]h]h]h]uhje<h]rx<h)ry<}rz<(hXJ10r{<hju<hjW5hhh}r|<(h]h]h]h]h]uhMeh]r}<hXJ10r~<r<}r<(hj{<hjy<ubaubahjJubehjubj8)r<}r<(hUh}r<(h]h]h]h]h]uhja<h]r<(j=)r<}r<(hUh}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hX am65xx_evmr<hj<hjW5hhh}r<(h]h]h]h]h]uhMgh]r<hX am65xx_evmr<r<}r<(hj<hj<ubaubahjJubj=)r<}r<(hUh}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hXJ12 on CP boardr<hj<hjW5hhh}r<(h]h]h]h]h]uhMgh]r<hXJ12 on CP boardr<r<}r<(hj<hj<ubaubahjJubehjubj8)r<}r<(hUh}r<(h]h]h]h]h]uhja<h]r<(j=)r<}r<(hUh}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hX am65xx_idkr<hj<hjW5hhh}r<(h]h]h]h]h]uhMih]r<hX am65xx_idkr<r<}r<(hj<hj<ubaubahjJubj=)r<}r<(hUh}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hXJ12 on CP boardr<hj<hjW5hhh}r<(h]h]h]h]h]uhMih]r<hXJ12 on CP boardr<r<}r<(hj<hj<ubaubahjJubehjubehjUubehjVubaubeubh)r<}r<(hUhKhj;hjW5hhh}r<(h]r<Xtest executionr<ah]h]h]r<Uid51r<ah]uhMmhhh]r<(h)r<}r<(hXTest Executionr<hj<hjW5hhh}r<(h]h]h]h]h]uhMmhhh]r<hXTest Executionr<r<}r<(hj<hj<ubaubj[)r<}r<(hUhj<hNhj^h}r<(h]h]h]h]h]uhNhhh]r<j)r<}r<(hUh}r<(jX-h]h]h]h]h]uhj<h]r<(j)r<}r<(hX-Select the menu option to run ‘emac_TEST’r<h}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hj<hj<hjW5hhh}r<(h]h]h]h]h]uhMnh]r<hX-Select the menu option to run ‘emac_TEST’r<r<}r<(hj<hj<ubaubahjubj)r<}r<(hXeFollow the instructions on serial console for disconnecting and connecting the cable during the test.r<h}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hj<hj<hjW5hhh}r<(h]h]h]h]h]uhMoh]r<hXeFollow the instructions on serial console for disconnecting and connecting the cable during the test.r<r<}r<(hj<hj<ubaubahjubj)r<}r<(hX'Verify the test log on serial console h}r<(h]h]h]h]h]uhj<h]r<h)r<}r<(hX%Verify the test log on serial consoler<hj<hjW5hhh}r<(h]h]h]h]h]uhMph]r<hX%Verify the test log on serial consoler<r<}r<(hj<hj<ubaubahjubehjubaubeubh)r<}r<(hUhKhj;hjW5hhh}r<(h]r<Xtest logr<ah]h]h]r<Uid52r<ah]uhMthhh]r<(h)r<}r<(hXTest Logr<hj<hjW5hhh}r=(h]h]h]h]h]uhMthhh]r=hXTest Logr=r=}r=(hj<hj<ubaubh)r=}r=(hX4Sample log for Ethernet loopback test is shown belowr=hj<hjW5hhh}r=(h]h]h]h]h]uhMvhhh]r =hX4Sample log for Ethernet loopback test is shown belowr =r =}r =(hj=hj=ubaubj()r =}r=(hX ************************************************ * ETHERNET LOOPBACK Test * ************************************************ Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x7949 PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x8c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Sending Packet: 6 Sending Packet: 7 Sending Packet: 8 Sending Packet: 9 Sending Packet: 10 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Received Packet: 6 Received Packet: 7 Received Packet: 8 Received Packet: 9 Received Packet: 10 Packets sent: 10, Packets received: 10 Ethernet Loopback test passed All tests completed Please disconnect the loopback cable Link is Down Please reconnect the loopback cable Link is UP Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1000 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4006 PHY Register 0x0009 - 0x1000 PHY Register 0x000a - 0x0000 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Sending Packet: 6 Sending Packet: 7 Sending Packet: 8 Sending Packet: 9 Sending Packet: 10 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Received Packet: 6 Received Packet: 7 Received Packet: 8 Received Packet: 9 Received Packet: 10 Packets sent: 10, Packets received: 10 Ethernet Loopback test passed All tests completedhj<hjW5hj+h}r=(hhh]h]h]h]h]uhMp hhh]r=hX ************************************************ * ETHERNET LOOPBACK Test * ************************************************ Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x7949 PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x8c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Sending Packet: 6 Sending Packet: 7 Sending Packet: 8 Sending Packet: 9 Sending Packet: 10 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Received Packet: 6 Received Packet: 7 Received Packet: 8 Received Packet: 9 Received Packet: 10 Packets sent: 10, Packets received: 10 Ethernet Loopback test passed All tests completed Please disconnect the loopback cable Link is Down Please reconnect the loopback cable Link is UP Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1000 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4006 PHY Register 0x0009 - 0x1000 PHY Register 0x000a - 0x0000 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Sending Packet: 6 Sending Packet: 7 Sending Packet: 8 Sending Packet: 9 Sending Packet: 10 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Received Packet: 6 Received Packet: 7 Received Packet: 8 Received Packet: 9 Received Packet: 10 Packets sent: 10, Packets received: 10 Ethernet Loopback test passed All tests completedr=r=}r=(hUhj =ubaubj1)r=}r=(hUhj<hjW5hj4h}r=(h]h]h]h]h]uhMhhh]r=j7)r=}r=(hUj:Khj=hjW5hhh}r=(h]h]h]h]h]uhKhhh]ubaubeubeubh)r=}r=(hUhjT5hjW5hhh}r=(h]h]h]h]r=U emmc-testr=ah]r =h$auhMhhh]r!=(h)r"=}r#=(hX eMMC Testr$=hj=hjW5hhh}r%=(h]h]h]h]h]uhMhhh]r&=hX eMMC Testr'=r(=}r)=(hj$=hj"=ubaubh)r*=}r+=(hXyThis test verifies eMMC memory interface on the HW platform under test. 16KB of data is written and read during the test.r,=hj=hjW5hhh}r-=(h]h]h]h]h]uhMhhh]r.=hXyThis test verifies eMMC memory interface on the HW platform under test. 16KB of data is written and read during the test.r/=r0=}r1=(hj,=hj*=ubaubh)r2=}r3=(hUhKhj=hjW5hhh}r4=(h]r5=Xtest accessoriesr6=ah]h]h]r7=Uid53r8=ah]uhMhhh]r9=(h)r:=}r;=(hXTest Accessoriesr<=hj2=hjW5hhh}r==(h]h]h]h]h]uhMhhh]r>=hXTest Accessoriesr?=r@=}rA=(hj<=hj:=ubaubh)rB=}rC=(hX=No additional accessories are required for running this test.rD=hj2=hjW5hhh}rE=(h]h]h]h]h]uhMhhh]rF=hX=No additional accessories are required for running this test.rG=rH=}rI=(hjD=hjB=ubaubeubh)rJ=}rK=(hUhKhj=hjW5hhh}rL=(h]rM=X test setuprN=ah]h]h]rO=Uid54rP=ah]uhMhhh]rQ=(h)rR=}rS=(hX Test SetuprT=hjJ=hjW5hhh}rU=(h]h]h]h]h]uhMhhh]rV=hX Test SetuprW=rX=}rY=(hjT=hjR=ubaubh)rZ=}r[=(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r\=hjJ=hjW5hhh}r]=(h]h]h]h]h]uhMhhh]r^=hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r_=r`=}ra=(hj\=hjZ=ubaubeubh)rb=}rc=(hUhKhj=hjW5hhh}rd=(h]re=Xtest executionrf=ah]h]h]rg=Uid55rh=ah]uhMhhh]ri=(h)rj=}rk=(hXTest Executionrl=hjb=hjW5hhh}rm=(h]h]h]h]h]uhMhhh]rn=hXTest Executionro=rp=}rq=(hjl=hjj=ubaubj[)rr=}rs=(hUhjb=hNhj^h}rt=(h]h]h]h]h]uhNhhh]ru=j)rv=}rw=(hUh}rx=(jX-h]h]h]h]h]uhjr=h]ry=(j)rz=}r{=(hX-Select the menu option to run ‘emmc_TEST’r|=h}r}=(h]h]h]h]h]uhjv=h]r~=h)r=}r=(hj|=hjz=hjW5hhh}r=(h]h]h]h]h]uhMh]r=hX-Select the menu option to run ‘emmc_TEST’r=r=}r=(hj|=hj=ubaubahjubj)r=}r=(hX&Verify the test log on serial console h}r=(h]h]h]h]h]uhjv=h]r=h)r=}r=(hX%Verify the test log on serial consoler=hj=hjW5hhh}r=(h]h]h]h]h]uhMh]r=hX%Verify the test log on serial consoler=r=}r=(hj=hj=ubaubahjubehjubaubeubh)r=}r=(hUhKhj=hjW5hhh}r=(h]r=Xtest logr=ah]h]h]r=Uid56r=ah]uhMhhh]r=(h)r=}r=(hXTest Logr=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hXTest Logr=r=}r=(hj=hj=ubaubh)r=}r=(hX'Sample log for eMMC test is shown belowr=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hX'Sample log for eMMC test is shown belowr=r=}r=(hj=hj=ubaubj()r=}r=(hX********************************************* * eMMC Test * ********************************************* PASS: Read/Write Success for this patternhj=hjW5hj+h}r=(hhh]h]h]h]h]uhM hhh]r=hX********************************************* * eMMC Test * ********************************************* PASS: Read/Write Success for this patternr=r=}r=(hUhj=ubaubj1)r=}r=(hUhj=hjW5hj4h}r=(h]h]h]h]h]uhMhhh]r=j7)r=}r=(hUj:Khj=hjW5hhh}r=(h]h]h]h]h]uhKhhh]ubaubeubeubh)r=}r=(hUhjT5hjW5hhh}r=(h]h]h]h]r=Uexternal-rtc-testr=ah]r=h"auhMhhh]r=(h)r=}r=(hXExternal RTC Testr=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hXExternal RTC Testr=r=}r=(hj=hj=ubaubh)r=}r=(hXThis test verifies setting the time, date and running the clock for on-board RTC interface. RTC configuration is done through I2C interface. Time and date are read for 5 times for every 5secs during the test to demonstrate operation of the RTC clock.r=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hXThis test verifies setting the time, date and running the clock for on-board RTC interface. RTC configuration is done through I2C interface. Time and date are read for 5 times for every 5secs during the test to demonstrate operation of the RTC clock.r=r=}r=(hj=hj=ubaubh)r=}r=(hUhKhj=hjW5hhh}r=(h]r=Xtest accessoriesr=ah]h]h]r=Uid57r=ah]uhMhhh]r=(h)r=}r=(hXTest Accessoriesr=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hXTest Accessoriesr=r=}r=(hj=hj=ubaubh)r=}r=(hX=No additional accessories are required for running this test.r=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hX=No additional accessories are required for running this test.r=r=}r=(hj=hj=ubaubeubh)r=}r=(hUhKhj=hjW5hhh}r=(h]r=X test setupr=ah]h]h]r=Uid58r=ah]uhMhhh]r=(h)r=}r=(hX Test Setupr=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hX Test Setupr=r=}r=(hj=hj=ubaubh)r=}r=(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r=hj=hjW5hhh}r=(h]h]h]h]h]uhMhhh]r=hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r=r=}r=(hj=hj=ubaubeubh)r=}r>(hUhKhj=hjW5hhh}r>(h]r>Xtest executionr>ah]h]h]r>Uid59r>ah]uhM"hhh]r>(h)r>}r>(hXTest Executionr >hj=hjW5hhh}r >(h]h]h]h]h]uhM"hhh]r >hXTest Executionr >r >}r>(hj >hj>ubaubj[)r>}r>(hUhj=hNhj^h}r>(h]h]h]h]h]uhNhhh]r>j)r>}r>(hUh}r>(jX-h]h]h]h]h]uhj>h]r>(j)r>}r>(hX/Select the menu option to run ‘extRtc_TEST’r>h}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hj>hj>hjW5hhh}r>(h]h]h]h]h]uhM#h]r>hX/Select the menu option to run ‘extRtc_TEST’r >r!>}r">(hj>hj>ubaubahjubj)r#>}r$>(hX%Verify the test log on serial consoler%>h}r&>(h]h]h]h]h]uhj>h]r'>h)r(>}r)>(hj%>hj#>hjW5hhh}r*>(h]h]h]h]h]uhM$h]r+>hX%Verify the test log on serial consoler,>r->}r.>(hj%>hj(>ubaubahjubj)r/>}r0>(hXgConfirm the test result by pressing 'y' if RTC time/date changes properly or press any key for failure h}r1>(h]h]h]h]h]uhj>h]r2>h)r3>}r4>(hXfConfirm the test result by pressing 'y' if RTC time/date changes properly or press any key for failurer5>hj/>hjW5hhh}r6>(h]h]h]h]h]uhM%h]r7>hXfConfirm the test result by pressing 'y' if RTC time/date changes properly or press any key for failurer8>r9>}r:>(hj5>hj3>ubaubahjubehjubaubeubh)r;>}r<>(hUhKhj=hjW5hhh}r=>(h]r>>Xtest logr?>ah]h]h]r@>Uid60rA>ah]uhM(hhh]rB>(h)rC>}rD>(hXTest LogrE>hj;>hjW5hhh}rF>(h]h]h]h]h]uhM(hhh]rG>hXTest LogrH>rI>}rJ>(hjE>hjC>ubaubh)rK>}rL>(hX/Sample log for external RTC test is shown belowrM>hj;>hjW5hhh}rN>(h]h]h]h]h]uhM)hhh]rO>hX/Sample log for external RTC test is shown belowrP>rQ>}rR>(hjM>hjK>ubaubj()rS>}rT>(hX********************************************* * RTC Test * ********************************************* Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:57 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:2 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:7 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:12 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:17 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure y RTC test passed...hj;>hjW5hj+h}rU>(hhh]h]h]h]h]uhM# hhh]rV>hX********************************************* * RTC Test * ********************************************* Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:57 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:2 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:7 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:12 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:17 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure y RTC test passed...rW>rX>}rY>(hUhjS>ubaubj1)rZ>}r[>(hUhj;>hjW5hj4h}r\>(h]h]h]h]h]uhMVhhh]r]>j7)r^>}r_>(hUj:KhjZ>hjW5hhh}r`>(h]h]h]h]h]uhKhhh]ubaubeubeubh)ra>}rb>(hUhjT5hjW5hhh}rc>(h]h]h]h]rd>U gmac-testre>ah]rf>hauhMYhhh]rg>(h)rh>}ri>(hX GMAC Testrj>hja>hjW5hhh}rk>(h]h]h]h]h]uhMYhhh]rl>hX GMAC Testrm>rn>}ro>(hjj>hjh>ubaubh)rp>}rq>(hXIThis test verifies the GMAC Ethernet ports of the HW platform under test.rr>hja>hjW5hhh}rs>(h]h]h]h]h]uhMZhhh]rt>hXIThis test verifies the GMAC Ethernet ports of the HW platform under test.ru>rv>}rw>(hjr>hjp>ubaubh)rx>}ry>(hUhKhja>hjW5hhh}rz>(h]r{>Xtest accessoriesr|>ah]h]h]r}>Uid61r~>ah]uhM]hhh]r>(h)r>}r>(hXTest Accessoriesr>hjx>hjW5hhh}r>(h]h]h]h]h]uhM]hhh]r>hXTest Accessoriesr>r>}r>(hj>hj>ubaubh)r>}r>(hXEthernet loopback cables/plugsr>hjx>hjW5hhh}r>(h]h]h]h]h]uhM^hhh]r>hXEthernet loopback cables/plugsr>r>}r>(hj>hj>ubaubeubh)r>}r>(hUhKhja>hjW5hhh}r>(h]r>X test setupr>ah]h]h]r>Uid62r>ah]uhMahhh]r>(h)r>}r>(hX Test Setupr>hj>hjW5hhh}r>(h]h]h]h]h]uhMahhh]r>hX Test Setupr>r>}r>(hj>hj>ubaubh)r>}r>(hXConnect the Ethernet loopback cables to the GMAC Ethernet port (RJ-45) on the board. Check below table for the details of GMAC Ethernet ports used by the test on different platforms.r>hj>hjW5hhh}r>(h]h]h]h]h]uhMbhhh]r>hXConnect the Ethernet loopback cables to the GMAC Ethernet port (RJ-45) on the board. Check below table for the details of GMAC Ethernet ports used by the test on different platforms.r>r>}r>(hj>hj>ubaubj)r>}r>(hUhj>hjW5hj h}r>(h]h]h]h]h]uhNhhh]r>j)r>}r>(hUh}r>(h]h]h]h]h]UcolsKuhj>h]r>(j)r>}r>(hUh}r>(h]h]h]h]h]UcolwidthKuhj>h]hjubj)r>}r>(hUh}r>(h]h]h]h]h]UcolwidthKuhj>h]hjubj3)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>j8)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>(j=)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hX HW Platformr>hj>hjW5hhh}r>(h]h]h]h]h]uhMfh]r>hX HW Platformr>r>}r>(hj>hj>ubaubahjJubj=)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hX Ethernet Portr>hj>hjW5hhh}r>(h]h]h]h]h]uhMfh]r>hX Ethernet Portr>r>}r>(hj>hj>ubaubahjJubehjubahjubj)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>(j8)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>(j=)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hX idkAM571xr>hj>hjW5hhh}r>(h]h]h]h]h]uhMhh]r>hX idkAM571xr>r>}r>(hj>hj>ubaubahjJubj=)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hX J10 & J12r>hj>hjW5hhh}r>(h]h]h]h]h]uhMhh]r>hX J10 & J12r>r>}r>(hj>hj>ubaubahjJubehjubj8)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>(j=)r>}r>(hUh}r>(h]h]h]h]h]uhj>h]r>h)r>}r>(hX idkAM572xr?hj>hjW5hhh}r?(h]h]h]h]h]uhMjh]r?hX idkAM572xr?r?}r?(hj?hj>ubaubahjJubj=)r?}r?(hUh}r?(h]h]h]h]h]uhj>h]r ?h)r ?}r ?(hX J10 & J12r ?hj?hjW5hhh}r ?(h]h]h]h]h]uhMjh]r?hX J10 & J12r?r?}r?(hj ?hj ?ubaubahjJubehjubj8)r?}r?(hUh}r?(h]h]h]h]h]uhj>h]r?(j=)r?}r?(hUh}r?(h]h]h]h]h]uhj?h]r?h)r?}r?(hX idkAM574xr?hj?hjW5hhh}r?(h]h]h]h]h]uhMlh]r?hX idkAM574xr?r ?}r!?(hj?hj?ubaubahjJubj=)r"?}r#?(hUh}r$?(h]h]h]h]h]uhj?h]r%?h)r&?}r'?(hX J10 & J12r(?hj"?hjW5hhh}r)?(h]h]h]h]h]uhMlh]r*?hX J10 & J12r+?r,?}r-?(hj(?hj&?ubaubahjJubehjubj8)r.?}r/?(hUh}r0?(h]h]h]h]h]uhj>h]r1?(j=)r2?}r3?(hUh}r4?(h]h]h]h]h]uhj.?h]r5?h)r6?}r7?(hX evmAM572xr8?hj2?hjW5hhh}r9?(h]h]h]h]h]uhMnh]r:?hX evmAM572xr;?r?}r??(hUh}r@?(h]h]h]h]h]uhj.?h]rA?h)rB?}rC?(hXBoth ports of P5rD?hj>?hjW5hhh}rE?(h]h]h]h]h]uhMnh]rF?hXBoth ports of P5rG?rH?}rI?(hjD?hjB?ubaubahjJubehjubehjUubehjVubaubeubh)rJ?}rK?(hUhKhja>hjW5hhh}rL?(h]rM?Xtest executionrN?ah]h]h]rO?Uid63rP?ah]uhMrhhh]rQ?(h)rR?}rS?(hXTest ExecutionrT?hjJ?hjW5hhh}rU?(h]h]h]h]h]uhMrhhh]rV?hXTest ExecutionrW?rX?}rY?(hjT?hjR?ubaubj[)rZ?}r[?(hUhjJ?hNhj^h}r\?(h]h]h]h]h]uhNhhh]r]?j)r^?}r_?(hUh}r`?(jX-h]h]h]h]h]uhjZ?h]ra?(j)rb?}rc?(hX-Select the menu option to run ‘gmac_TEST’rd?h}re?(h]h]h]h]h]uhj^?h]rf?h)rg?}rh?(hjd?hjb?hjW5hhh}ri?(h]h]h]h]h]uhMsh]rj?hX-Select the menu option to run ‘gmac_TEST’rk?rl?}rm?(hjd?hjg?ubaubahjubj)rn?}ro?(hX&Verify the test log on serial console h}rp?(h]h]h]h]h]uhj^?h]rq?h)rr?}rs?(hX%Verify the test log on serial consolert?hjn?hjW5hhh}ru?(h]h]h]h]h]uhMth]rv?hX%Verify the test log on serial consolerw?rx?}ry?(hjt?hjr?ubaubahjubehjubaubeubh)rz?}r{?(hUhKhja>hjW5hhh}r|?(h]r}?Xtest logr~?ah]h]h]r?Uid64r?ah]uhMwhhh]r?(h)r?}r?(hXTest Logr?hjz?hjW5hhh}r?(h]h]h]h]h]uhMwhhh]r?hXTest Logr?r?}r?(hj?hj?ubaubh)r?}r?(hX'Sample log for GMAC test is shown belowr?hjz?hjW5hhh}r?(h]h]h]h]h]uhMxhhh]r?hX'Sample log for GMAC test is shown belowr?r?}r?(hj?hj?ubaubj()r?}r?(hX_********************************************* * GMAC Test * ********************************************* Test Port Link Link-Speed Status Error -------------------- ---- ---- -------------------- ------ --------------------------- Phy Loopback 1 Up Phy Loopback PASS 10Mbps Full-Duplex 1 Up 10Mbps Full duplex PASS 100Mbps Half-Duplex 1 Up 100Mbps Half duplex PASS 100Mbps Full-Duplex 1 Up 100Mbps Full duplex PASS Phy Loopback 2 Up Phy Loopback PASS 10Mbps Full-Duplex 2 Up 10Mbps Full duplex PASS 100Mbps Half-Duplex 2 Up 100Mbps Half duplex PASS 100Mbps Full-Duplex 2 Up 100Mbps Full duplex PASS Exitinghjz?hjW5hj+h}r?(hhh]h]h]h]h]uhMr hhh]r?hX_********************************************* * GMAC Test * ********************************************* Test Port Link Link-Speed Status Error -------------------- ---- ---- -------------------- ------ --------------------------- Phy Loopback 1 Up Phy Loopback PASS 10Mbps Full-Duplex 1 Up 10Mbps Full duplex PASS 100Mbps Half-Duplex 1 Up 100Mbps Half duplex PASS 100Mbps Full-Duplex 1 Up 100Mbps Full duplex PASS Phy Loopback 2 Up Phy Loopback PASS 10Mbps Full-Duplex 2 Up 10Mbps Full duplex PASS 100Mbps Half-Duplex 2 Up 100Mbps Half duplex PASS 100Mbps Full-Duplex 2 Up 100Mbps Full duplex PASS Exitingr?r?}r?(hUhj?ubaubj1)r?}r?(hUhjz?hjW5hj4h}r?(h]h]h]h]h]uhMhhh]r?j7)r?}r?(hUj:Khj?hjW5hhh}r?(h]h]h]h]h]uhKhhh]ubaubeubeubh)r?}r?(hUhjT5hjW5hhh}r?(h]h]h]h]r?U haptics-testr?ah]r?h auhMhhh]r?(h)r?}r?(hX Haptics Testr?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hX Haptics Testr?r?}r?(hj?hj?ubaubh)r?}r?(hXKThis verifies haptics motor using vibrations on the HW platform under test.r?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hXKThis verifies haptics motor using vibrations on the HW platform under test.r?r?}r?(hj?hj?ubaubh)r?}r?(hUhKhj?hjW5hhh}r?(h]r?Xtest accessoriesr?ah]h]h]r?Uid65r?ah]uhMhhh]r?(h)r?}r?(hXTest Accessoriesr?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hXTest Accessoriesr?r?}r?(hj?hj?ubaubh)r?}r?(hX=No additional accessories are required for running this test.r?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hX=No additional accessories are required for running this test.r?r?}r?(hj?hj?ubaubeubh)r?}r?(hUhKhj?hjW5hhh}r?(h]r?X test setupr?ah]h]h]r?Uid66r?ah]uhMhhh]r?(h)r?}r?(hX Test Setupr?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hX Test Setupr?r?}r?(hj?hj?ubaubh)r?}r?(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r?r?}r?(hj?hj?ubaubeubh)r?}r?(hUhKhj?hjW5hhh}r?(h]r?Xtest executionr?ah]h]h]r?Uid67r?ah]uhMhhh]r?(h)r?}r?(hXTest Executionr?hj?hjW5hhh}r?(h]h]h]h]h]uhMhhh]r?hXTest Executionr?r?}r?(hj?hj?ubaubj[)r?}r?(hUhj?hNhj^h}r?(h]h]h]h]h]uhNhhh]r?j)r?}r?(hUh}r?(jX-h]h]h]h]h]uhj?h]r?(j)r?}r@(hX0Select the menu option to run ‘haptics_TEST’r@h}r@(h]h]h]h]h]uhj?h]r@h)r@}r@(hj@hj?hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX0Select the menu option to run ‘haptics_TEST’r@r @}r @(hj@hj@ubaubahjubj)r @}r @(hX%Verify the test log on serial consoler @h}r@(h]h]h]h]h]uhj?h]r@h)r@}r@(hj @hj @hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX%Verify the test log on serial consoler@r@}r@(hj @hj@ubaubahjubj)r@}r@(hX,Check for the vibrations on the HW platform h}r@(h]h]h]h]h]uhj?h]r@h)r@}r@(hX+Check for the vibrations on the HW platformr@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX+Check for the vibrations on the HW platformr @r!@}r"@(hj@hj@ubaubahjubehjubaubeubh)r#@}r$@(hUhKhj?hjW5hhh}r%@(h]r&@Xtest logr'@ah]h]h]r(@Uid68r)@ah]uhMhhh]r*@(h)r+@}r,@(hXTest Logr-@hj#@hjW5hhh}r.@(h]h]h]h]h]uhMhhh]r/@hXTest Logr0@r1@}r2@(hj-@hj+@ubaubh)r3@}r4@(hX*Sample log for Haptics test is shown belowr5@hj#@hjW5hhh}r6@(h]h]h]h]h]uhMhhh]r7@hX*Sample log for Haptics test is shown belowr8@r9@}r:@(hj5@hj3@ubaubj()r;@}r<@(hX********************************************* * Haptics Test * ********************************************* Testing Haptics (vibration) Press 'y' to verify pass: y Received: y Test PASSED!hj#@hjW5hj+h}r=@(hhh]h]h]h]h]uhM hhh]r>@hX********************************************* * Haptics Test * ********************************************* Testing Haptics (vibration) Press 'y' to verify pass: y Received: y Test PASSED!r?@r@@}rA@(hUhj;@ubaubj1)rB@}rC@(hUhj#@hjW5hj4h}rD@(h]h]h]h]h]uhMhhh]rE@j7)rF@}rG@(hUj:KhjB@hjW5hhh}rH@(h]h]h]h]h]uhKhhh]ubaubeubeubh)rI@}rJ@(hUhjT5hjW5hhh}rK@(h]h]h]h]rL@U hdmi-testrM@ah]rN@hauhMhhh]rO@(h)rP@}rQ@(hX HDMI TestrR@hjI@hjW5hhh}rS@(h]h]h]h]h]uhMhhh]rT@hX HDMI TestrU@rV@}rW@(hjR@hjP@ubaubh)rX@}rY@(hXThis test verifies HDMI display port on the HW platform under test. Color bar and different colors are displayed on HDMI monitor during the test.rZ@hjI@hjW5hhh}r[@(h]h]h]h]h]uhMhhh]r\@hXThis test verifies HDMI display port on the HW platform under test. Color bar and different colors are displayed on HDMI monitor during the test.r]@r^@}r_@(hjZ@hjX@ubaubh)r`@}ra@(hUhKhjI@hjW5hhh}rb@(h]rc@Xtest accessoriesrd@ah]h]h]re@Uid69rf@ah]uhMhhh]rg@(h)rh@}ri@(hXTest Accessoriesrj@hj`@hjW5hhh}rk@(h]h]h]h]h]uhMhhh]rl@hXTest Accessoriesrm@rn@}ro@(hjj@hjh@ubaubj[)rp@}rq@(hUhj`@hNhj^h}rr@(h]h]h]h]h]uhNhhh]rs@j)rt@}ru@(hUh}rv@(jX-h]h]h]h]h]uhjp@h]rw@(j)rx@}ry@(hX HDMI Displayrz@h}r{@(h]h]h]h]h]uhjt@h]r|@h)r}@}r~@(hjz@hjx@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX HDMI Displayr@r@}r@(hjz@hj}@ubaubahjubj)r@}r@(hX HDMI cable h}r@(h]h]h]h]h]uhjt@h]r@h)r@}r@(hX HDMI cabler@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX HDMI cabler@r@}r@(hj@hj@ubaubahjubehjubaubeubh)r@}r@(hUhKhjI@hjW5hhh}r@(h]r@X test setupr@ah]h]h]r@Uid70r@ah]uhMhhh]r@(h)r@}r@(hX Test Setupr@hj@hjW5hhh}r@(h]h]h]h]h]uhMhhh]r@hX Test Setupr@r@}r@(hj@hj@ubaubh)r@}r@(hXConnect the HDMI Display to the HDMI port on the board. Check below table for the details of HDMI ports used by the test on different platforms.r@hj@hjW5hhh}r@(h]h]h]h]h]uhMhhh]r@hXConnect the HDMI Display to the HDMI port on the board. Check below table for the details of HDMI ports used by the test on different platforms.r@r@}r@(hj@hj@ubaubj)r@}r@(hUhj@hjW5hj h}r@(h]h]h]h]h]uhNhhh]r@j)r@}r@(hUh}r@(h]h]h]h]h]UcolsKuhj@h]r@(j)r@}r@(hUh}r@(h]h]h]h]h]UcolwidthKuhj@h]hjubj)r@}r@(hUh}r@(h]h]h]h]h]UcolwidthKuhj@h]hjubj3)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@j8)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@(j=)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@h)r@}r@(hX HW Platformr@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX HW Platformr@r@}r@(hj@hj@ubaubahjJubj=)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@h)r@}r@(hX HDMI Portr@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hX HDMI Portr@r@}r@(hj@hj@ubaubahjJubehjubahjubj)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@j8)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@(j=)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@h)r@}r@(hXevmK2Gr@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hXevmK2Gr@r@}r@(hj@hj@ubaubahjJubj=)r@}r@(hUh}r@(h]h]h]h]h]uhj@h]r@h)r@}r@(hXJ36r@hj@hjW5hhh}r@(h]h]h]h]h]uhMh]r@hXJ36r@r@}r@(hj@hj@ubaubahjJubehjubahjUubehjVubaubeubh)r@}r@(hUhKhjI@hjW5hhh}r@(h]r@Xtest executionr@ah]h]h]r@Uid71r@ah]uhMhhh]r@(h)r@}r@(hXTest ExecutionrAhj@hjW5hhh}rA(h]h]h]h]h]uhMhhh]rAhXTest ExecutionrArA}rA(hjAhj@ubaubj[)rA}rA(hUhj@hNhj^h}rA(h]h]h]h]h]uhNhhh]r Aj)r A}r A(hUh}r A(jX-h]h]h]h]h]uhjAh]r A(j)rA}rA(hX-Select the menu option to run ‘hdmi_TEST’rAh}rA(h]h]h]h]h]uhj Ah]rAh)rA}rA(hjAhjAhjW5hhh}rA(h]h]h]h]h]uhMh]rAhX-Select the menu option to run ‘hdmi_TEST’rArA}rA(hjAhjAubaubahjubj)rA}rA(hXHVerify the color bar and different colors displayed on the HDMI Monitor.rAh}rA(h]h]h]h]h]uhj Ah]rAh)rA}r A(hjAhjAhjW5hhh}r!A(h]h]h]h]h]uhMh]r"AhXHVerify the color bar and different colors displayed on the HDMI Monitor.r#Ar$A}r%A(hjAhjAubaubahjubj)r&A}r'A(hX?Verify the test log on serial console and confirm test result. h}r(A(h]h]h]h]h]uhj Ah]r)Ah)r*A}r+A(hX>Verify the test log on serial console and confirm test result.r,Ahj&AhjW5hhh}r-A(h]h]h]h]h]uhMh]r.AhX>Verify the test log on serial console and confirm test result.r/Ar0A}r1A(hj,Ahj*Aubaubahjubehjubaubeubh)r2A}r3A(hUhKhjI@hjW5hhh}r4A(h]r5AXtest logr6Aah]h]h]r7AUid72r8Aah]uhMhhh]r9A(h)r:A}r;A(hXTest LogrAhXTest Logr?Ar@A}rAA(hjBr?B}r@B(hj;Bhj9BubaubahjJubehjubehjUubehjVubaubeubh)rAB}rBB(hUhKhjXAhjW5hhh}rCB(h]rDBXtest executionrEBah]h]h]rFBUid75rGBah]uhM hhh]rHB(h)rIB}rJB(hXTest ExecutionrKBhjABhjW5hhh}rLB(h]h]h]h]h]uhM hhh]rMBhXTest ExecutionrNBrOB}rPB(hjKBhjIBubaubj[)rQB}rRB(hUhjABhNhj^h}rSB(h]h]h]h]h]uhNhhh]rTBj)rUB}rVB(hUh}rWB(jX-h]h]h]h]h]uhjQBh]rXB(j)rYB}rZB(hX1Select the menu option to run ‘icssEmac_TEST’r[Bh}r\B(h]h]h]h]h]uhjUBh]r]Bh)r^B}r_B(hj[BhjYBhjW5hhh}r`B(h]h]h]h]h]uhM h]raBhX1Select the menu option to run ‘icssEmac_TEST’rbBrcB}rdB(hj[Bhj^Bubaubahjubj)reB}rfB(hX&Verify the test log on serial console h}rgB(h]h]h]h]h]uhjUBh]rhBh)riB}rjB(hX%Verify the test log on serial consolerkBhjeBhjW5hhh}rlB(h]h]h]h]h]uhM h]rmBhX%Verify the test log on serial consolernBroB}rpB(hjkBhjiBubaubahjubehjubaubeubh)rqB}rrB(hUhKhjXAhjW5hhh}rsB(h]rtBXtest logruBah]h]h]rvBUid76rwBah]uhMhhh]rxB(h)ryB}rzB(hXTest Logr{BhjqBhjW5hhh}r|B(h]h]h]h]h]uhMhhh]r}BhXTest Logr~BrB}rB(hj{BhjyBubaubh)rB}rB(hX,Sample log for ICSS EMAC test is shown belowrBhjqBhjW5hhh}rB(h]h]h]h]h]uhMhhh]rBhX,Sample log for ICSS EMAC test is shown belowrBrB}rB(hjBhjBubaubj()rB}rB(hXJPRU_ICSS0 Loopback Test Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS0 port 0 LINK IS UP PRU_ICSS0 port 1 LINK IS UP Sending Packets on Port 0 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 Sending Packets on Port 1 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 All tests have passed PRU_ICSS0 Loopback Test Completed! PRU_ICSS1 Loopback Test Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS1 port 0 LINK IS UP PRU_ICSS1 port 1 LINK IS UP Sending Packets on Port 0 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 Sending Packets on Port 1 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 All tests have passed PRU1_ICSS0 Loopback Test Completed!hjqBhjW5hj+h}rB(hhh]h]h]h]h]uhM hhh]rBhXJPRU_ICSS0 Loopback Test Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS0 port 0 LINK IS UP PRU_ICSS0 port 1 LINK IS UP Sending Packets on Port 0 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 Sending Packets on Port 1 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 All tests have passed PRU_ICSS0 Loopback Test Completed! PRU_ICSS1 Loopback Test Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS1 port 0 LINK IS UP PRU_ICSS1 port 1 LINK IS UP Sending Packets on Port 0 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 Sending Packets on Port 1 Sending Pkt 0 Received pkt: 0 Sending Pkt 1 Received pkt: 1 Sending Pkt 2 Received pkt: 2 Sending Pkt 3 Received pkt: 3 Sending Pkt 4 Received pkt: 4 All tests have passed PRU1_ICSS0 Loopback Test Completed!rBrB}rB(hUhjBubaubj1)rB}rB(hUhjqBhjW5hj4h}rB(h]h]h]h]h]uhMVhhh]rBj7)rB}rB(hUj:KhjBhjW5hhh}rB(h]h]h]h]h]uhKhhh]ubaubeubeubh)rB}rB(hUhjT5hjW5hhh}rB(h]h]h]h]rBUicssg-emac-testrBah]rBhauhMYhhh]rB(h)rB}rB(hXICSSG EMAC TestrBhjBhjW5hhh}rB(h]h]h]h]h]uhMYhhh]rBhXICSSG EMAC TestrBrB}rB(hjBhjBubaubh)rB}rB(hXlThis port to port Ethernet test verifies the PRU-ICSS gigabit Ethernet interface on the board under test. During the test, Ethernet interface is configured for 1000mbps speed with one port of an ICSS instance is connected to another port. 5 packets are sent from one port and received by another port. Both the ports are verified for transmit and receive. All the ICSSG EMAC ports available on the board verified during the test. Note that ICSSG EMAC Test can also run on a am65xx_idk with Interposer daughter card. For details of Interposer daughter card, please refer to `Device Drivers `_hjBhjW5hhh}rB(h]h]h]h]h]uhMZhhh]rB(hX>This port to port Ethernet test verifies the PRU-ICSS gigabit Ethernet interface on the board under test. During the test, Ethernet interface is configured for 1000mbps speed with one port of an ICSS instance is connected to another port. 5 packets are sent from one port and received by another port. Both the ports are verified for transmit and receive. All the ICSSG EMAC ports available on the board verified during the test. Note that ICSSG EMAC Test can also run on a am65xx_idk with Interposer daughter card. For details of Interposer daughter card, please refer to rBrB}rB(hX>This port to port Ethernet test verifies the PRU-ICSS gigabit Ethernet interface on the board under test. During the test, Ethernet interface is configured for 1000mbps speed with one port of an ICSS instance is connected to another port. 5 packets are sent from one port and received by another port. Both the ports are verified for transmit and receive. All the ICSSG EMAC ports available on the board verified during the test. Note that ICSSG EMAC Test can also run on a am65xx_idk with Interposer daughter card. For details of Interposer daughter card, please refer to hjBubj)rB}rB(hX.`Device Drivers `_h}rB(UnameXDevice DriversjXindex_device_drv.html#emacrBh]h]h]h]h]uhjBh]rBhXDevice DriversrBrB}rB(hUhjBubahj ubjW)rB}rB(hX hKhjBhjZh}rB(UrefurijBh]rBUdevice-driversrBah]h]h]h]rBhmauh]ubeubh)rB}rB(hUhKhjBhjW5hhh}rB(h]rBXtest accessoriesrBah]h]h]rBUid77rBah]uhMchhh]rB(h)rB}rB(hXTest AccessoriesrBhjBhjW5hhh}rB(h]h]h]h]h]uhMchhh]rBhXTest AccessoriesrBrB}rB(hjBhjBubaubh)rB}rB(hXEthernet cablesrBhjBhjW5hhh}rB(h]h]h]h]h]uhMdhhh]rBhXEthernet cablesrBrB}rB(hjBhjBubaubeubh)rB}rB(hUhKhjBhjW5hhh}rB(h]rBX test setuprBah]h]h]rBUid78rBah]uhMghhh]rB(h)rB}rB(hX Test SetuprBhjBhjW5hhh}rB(h]h]h]h]h]uhMghhh]rBhX Test SetuprBrB}rB(hjBhjBubaubh)rB}rB(hXConnect Ethernet cable between two ports of an PRU-ICSS instance. Make such connections on all the PRU-ICSS ports available Check below table for the detials of ICSSG Ethernet ports used by the test on different platformsrBhjBhjW5hhh}rB(h]h]h]h]h]uhMhhhh]rBhXConnect Ethernet cable between two ports of an PRU-ICSS instance. Make such connections on all the PRU-ICSS ports available Check below table for the detials of ICSSG Ethernet ports used by the test on different platformsrBrB}rB(hjBhjBubaubj)rB}rB(hUhjBhjW5hj h}rB(h]h]h]h]h]uhNhhh]rBj)rB}rB(hUh}rB(h]h]h]h]h]UcolsKuhjBh]rB(j)rB}rB(hUh}rB(h]h]h]h]h]UcolwidthKuhjBh]hjubj)rB}rB(hUh}rB(h]h]h]h]h]UcolwidthKuhjBh]hjubj3)rB}rB(hUh}rB(h]h]h]h]h]uhjBh]rBj8)rB}rB(hUh}rB(h]h]h]h]h]uhjBh]rC(j=)rC}rC(hUh}rC(h]h]h]h]h]uhjBh]rCh)rC}rC(hX HW PlatformrChjChjW5hhh}rC(h]h]h]h]h]uhMlh]r ChX HW Platformr Cr C}r C(hjChjCubaubahjJubj=)r C}rC(hUh}rC(h]h]h]h]h]uhjBh]rCh)rC}rC(hXICSSG Ethernet PortrChj ChjW5hhh}rC(h]h]h]h]h]uhMlh]rChXICSSG Ethernet PortrCrC}rC(hjChjCubaubahjJubehjubahjubj)rC}rC(hUh}rC(h]h]h]h]h]uhjBh]rC(j8)rC}rC(hUh}rC(h]h]h]h]h]uhjCh]r C(j=)r!C}r"C(hUh}r#C(h]h]h]h]h]uhjCh]r$Ch)r%C}r&C(hX am65xx_evmr'Chj!ChjW5hhh}r(C(h]h]h]h]h]uhMnh]r)ChX am65xx_evmr*Cr+C}r,C(hj'Chj%CubaubahjJubj=)r-C}r.C(hUh}r/C(h]h]h]h]h]uhjCh]r0Ch)r1C}r2C(hXTwo ports on J14 of CP board.r3Chj-ChjW5hhh}r4C(h]h]h]h]h]uhMnh]r5ChXTwo ports on J14 of CP board.r6Cr7C}r8C(hj3Chj1CubaubahjJubehjubj8)r9C}r:C(hUh}r;C(h]h]h]h]h]uhjCh]rC(hUh}r?C(h]h]h]h]h]uhj9Ch]r@Ch)rAC}rBC(hX am65xx_idkrCChj=ChjW5hhh}rDC(h]h]h]h]h]uhMqh]rEChX am65xx_idkrFCrGC}rHC(hjCChjACubaubahjJubj=)rIC}rJC(hUh}rKC(h]h]h]h]h]uhj9Ch]rLC(h)rMC}rNC(hXTwo ports on J14 of CP board.rOChjIChjW5hhh}rPC(h]h]h]h]h]uhMqh]rQChXTwo ports on J14 of CP board.rRCrSC}rTC(hjOChjMCubaubh)rUC}rVC(hXTwo ports on J1 of IDK board.rWChjIChjW5hhh}rXC(h]h]h]h]h]uhMth]rYChXTwo ports on J1 of IDK board.rZCr[C}r\C(hjWChjUCubaubh)r]C}r^C(hXTwo ports on J3 of IDK board.r_ChjIChjW5hhh}r`C(h]h]h]h]h]uhMwh]raChXTwo ports on J3 of IDK board.rbCrcC}rdC(hj_Chj]CubaubehjJubehjubj8)reC}rfC(hUh}rgC(h]h]h]h]h]uhjCh]rhC(j=)riC}rjC(hUh}rkC(h]h]h]h]h]uhjeCh]rlCh)rmC}rnC(hXam65xx_idk with Interposer cardroChjiChjW5hhh}rpC(h]h]h]h]h]uhMzh]rqChXam65xx_idk with Interposer cardrrCrsC}rtC(hjoChjmCubaubahjJubj=)ruC}rvC(hUh}rwC(h]h]h]h]h]uhjeCh]rxC(h)ryC}rzC(hXTwo ports on J14 of CP board.r{ChjuChjW5hhh}r|C(h]h]h]h]h]uhMzh]r}ChXTwo ports on J14 of CP board.r~CrC}rC(hj{ChjyCubaubh)rC}rC(hXTwo ports on J3 of IDK board.rChjuChjW5hhh}rC(h]h]h]h]h]uhM~h]rChXTwo ports on J3 of IDK board.rCrC}rC(hjChjCubaubehjJubehjubehjUubehjVubaubeubh)rC}rC(hUhKhjBhjW5hhh}rC(h]rCXtest executionrCah]h]h]rCUid79rCah]uhMhhh]rC(h)rC}rC(hXTest ExecutionrChjChjW5hhh}rC(h]h]h]h]h]uhMhhh]rChXTest ExecutionrCrC}rC(hjChjCubaubj[)rC}rC(hUhjChNhj^h}rC(h]h]h]h]h]uhNhhh]rCj)rC}rC(hUh}rC(jX-h]h]h]h]h]uhjCh]rC(j)rC}rC(hX2Select the menu option to run ‘icssgEmac_TEST’rCh}rC(h]h]h]h]h]uhjCh]rCh)rC}rC(hjChjChjW5hhh}rC(h]h]h]h]h]uhMh]rChX2Select the menu option to run ‘icssgEmac_TEST’rCrC}rC(hjChjCubaubahjubj)rC}rC(hX'Verify the test log on serial console h}rC(h]h]h]h]h]uhjCh]rCh)rC}rC(hX%Verify the test log on serial consolerChjChjW5hhh}rC(h]h]h]h]h]uhMh]rChX%Verify the test log on serial consolerCrC}rC(hjChjCubaubahjubehjubaubeubh)rC}rC(hUhKhjBhjW5hhh}rC(h]rCXtest logrCah]h]h]rCUid80rCah]uhMhhh]rC(h)rC}rC(hXTest LogrChjChjW5hhh}rC(h]h]h]h]h]uhMhhh]rChXTest LogrCrC}rC(hjChjCubaubh)rC}rC(hX1Sample log for ICSGG Ethernet test is shown belowrChjChjW5hhh}rC(h]h]h]h]h]uhMhhh]rChX1Sample log for ICSGG Ethernet test is shown belowrCrC}rC(hjChjCubaubj()rC}rC(hXZ*************************************** * ICSSG EMAC TEST * *************************************** Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 port 0: FW is ready Port 0: FlowId 2 Port 0: Config FW Complete port 1: FW is ready Port 1: FlowId 3 Port 1: Config FW Complete port 2: FW is ready Port 2: FlowId 10 Port 2: Config FW Complete port 3: FW is ready Port 3: FlowId 11 Port 3: Config FW Complete port 4: FW is ready Port 4: FlowId 18 Port 4: Config FW Complete port 5: FW is ready Port 5: FlowId 19 Port 5: Config FW Complete EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 0 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 1 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 2 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 3 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 4 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 5 LINK IS UP! Sending Packets on Port - 0 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 1 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 0 Send to Port 1 Receive Test Passed! Sending Packets on Port - 1 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 0 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 1 Send to Port 0 Receive Test Passed! Sending Packets on Port - 2 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 3 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 2 Send to Port 3 Receive Test Passed! Sending Packets on Port - 3 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 2 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 3 Send to Port 2 Receive Test Passed! Sending Packets on Port - 4 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 5 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 4 Send to Port 5 Receive Test Passed! Sending Packets on Port - 5 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 4 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 5 Send to Port 4 Receive Test Passed! ICSSG Ethernet Port to Port Test Passed! All Tests CompletedhjChjW5hj+h}rC(hhh]h]h]h]h]uhM hhh]rChXZ*************************************** * ICSSG EMAC TEST * *************************************** Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 port 0: FW is ready Port 0: FlowId 2 Port 0: Config FW Complete port 1: FW is ready Port 1: FlowId 3 Port 1: Config FW Complete port 2: FW is ready Port 2: FlowId 10 Port 2: Config FW Complete port 3: FW is ready Port 3: FlowId 11 Port 3: Config FW Complete port 4: FW is ready Port 4: FlowId 18 Port 4: Config FW Complete port 5: FW is ready Port 5: FlowId 19 Port 5: Config FW Complete EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 0 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 1 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 2 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 3 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 4 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 5 LINK IS UP! Sending Packets on Port - 0 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 1 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 0 Send to Port 1 Receive Test Passed! Sending Packets on Port - 1 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 0 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 1 Send to Port 0 Receive Test Passed! Sending Packets on Port - 2 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 3 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 2 Send to Port 3 Receive Test Passed! Sending Packets on Port - 3 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 2 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 3 Send to Port 2 Receive Test Passed! Sending Packets on Port - 4 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 5 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 4 Send to Port 5 Receive Test Passed! Sending Packets on Port - 5 Sending Packet: 1 Sending Packet: 2 Sending Packet: 3 Sending Packet: 4 Sending Packet: 5 Receiving Packets on Port - 4 Received Packet: 1 Received Packet: 2 Received Packet: 3 Received Packet: 4 Received Packet: 5 Packets Sent: 5, Packets Received: 5 Port 5 Send to Port 4 Receive Test Passed! ICSSG Ethernet Port to Port Test Passed! All Tests CompletedrCrC}rC(hUhjCubaubj1)rC}rC(hUhjChjW5hj4h}rC(h]h]h]h]h]uhMhhh]rCj7)rC}rC(hUj:KhjChjW5hhh}rC(h]h]h]h]h]uhKhhh]ubaubeubeubh)rC}rC(hUhjT5hjW5hhh}rC(h]h]h]h]rCUlcd-testrCah]rChauhMhhh]rC(h)rC}rC(hXLCD TestrChjChjW5hhh}rC(h]h]h]h]h]uhMhhh]rChXLCD TestrCrC}rC(hjChjCubaubh)rC}rC(hXThis test verifies LCD display on the HW platform under test. Displaying color bar, LCD backlight control and touch verification is done during the test.rChjChjW5hhh}rC(h]h]h]h]h]uhMhhh]rChXThis test verifies LCD display on the HW platform under test. Displaying color bar, LCD backlight control and touch verification is done during the test.rCrC}rC(hjChjCubaubh)rC}rC(hUhKhjChjW5hhh}rC(h]rCXtest accessoriesrCah]h]h]rCUid81rCah]uhMhhh]rC(h)rC}rC(hXTest AccessoriesrDhjChjW5hhh}rD(h]h]h]h]h]uhMhhh]rDhXTest AccessoriesrDrD}rD(hjDhjCubaubh)rD}rD(hX LCD DisplayrDhjChjW5hhh}r D(h]h]h]h]h]uhMhhh]r DhX LCD Displayr Dr D}r D(hjDhjDubaubeubh)rD}rD(hUhKhjChjW5hhh}rD(h]rDX test setuprDah]h]h]rDUid82rDah]uhMhhh]rD(h)rD}rD(hX Test SetuprDhjDhjW5hhh}rD(h]h]h]h]h]uhMhhh]rDhX Test SetuprDrD}rD(hjDhjDubaubh)rD}rD(hX6Connect the LCD Display to the HW platform under test.r DhjDhjW5hhh}r!D(h]h]h]h]h]uhMhhh]r"DhX6Connect the LCD Display to the HW platform under test.r#Dr$D}r%D(hj DhjDubaubeubh)r&D}r'D(hUhKhjChjW5hhh}r(D(h]r)DXtest executionr*Dah]h]h]r+DUid83r,Dah]uhMhhh]r-D(h)r.D}r/D(hXTest Executionr0Dhj&DhjW5hhh}r1D(h]h]h]h]h]uhMhhh]r2DhXTest Executionr3Dr4D}r5D(hj0Dhj.Dubaubj[)r6D}r7D(hUhj&DhNhj^h}r8D(h]h]h]h]h]uhNhhh]r9Dj)r:D}r;D(hUh}rD}r?D(hX,Select the menu option to run ‘lcd_TEST’r@Dh}rAD(h]h]h]h]h]uhj:Dh]rBDh)rCD}rDD(hj@Dhj>DhjW5hhh}rED(h]h]h]h]h]uhMh]rFDhX,Select the menu option to run ‘lcd_TEST’rGDrHD}rID(hj@DhjCDubaubahjubj)rJD}rKD(hX2Verify the color bar displayed on the LCD display.rLDh}rMD(h]h]h]h]h]uhj:Dh]rNDh)rOD}rPD(hjLDhjJDhjW5hhh}rQD(h]h]h]h]h]uhMh]rRDhX2Verify the color bar displayed on the LCD display.rSDrTD}rUD(hjLDhjODubaubahjubj)rVD}rWD(hXJVerify that LCD backlight is getting changed during backlight control testrXDh}rYD(h]h]h]h]h]uhj:Dh]rZDh)r[D}r\D(hjXDhjVDhjW5hhh}r]D(h]h]h]h]h]uhMh]r^DhXJVerify that LCD backlight is getting changed during backlight control testr_Dr`D}raD(hjXDhj[Dubaubahjubj)rbD}rcD(hXeProvide touch inputs during the touch interface test and confirm that positions are detected properlyrdDh}reD(h]h]h]h]h]uhj:Dh]rfDh)rgD}rhD(hjdDhjbDhjW5hhh}riD(h]h]h]h]h]uhMh]rjDhXeProvide touch inputs during the touch interface test and confirm that positions are detected properlyrkDrlD}rmD(hjdDhjgDubaubahjubj)rnD}roD(hX&Verify the test log on serial console h}rpD(h]h]h]h]h]uhj:Dh]rqDh)rrD}rsD(hX%Verify the test log on serial consolertDhjnDhjW5hhh}ruD(h]h]h]h]h]uhMh]rvDhX%Verify the test log on serial consolerwDrxD}ryD(hjtDhjrDubaubahjubehjubaubj)rzD}r{D(hXTouch interface test is not supported on all the platforms. Refer to LCD Touchscreen Test for touch interface test on other platforms.hj&DhjW5hjh}r|D(h]h]h]h]h]uhNhhh]r}Dh)r~D}rD(hXTouch interface test is not supported on all the platforms. Refer to LCD Touchscreen Test for touch interface test on other platforms.rDhjzDhjW5hhh}rD(h]h]h]h]h]uhMh]rDhXTouch interface test is not supported on all the platforms. Refer to LCD Touchscreen Test for touch interface test on other platforms.rDrD}rD(hjDhj~Dubaubaubeubh)rD}rD(hUhKhjChjW5hhh}rD(h]rDXtest logrDah]h]h]rDUid84rDah]uhMhhh]rD(h)rD}rD(hXTest LogrDhjDhjW5hhh}rD(h]h]h]h]h]uhMhhh]rDhXTest LogrDrD}rD(hjDhjDubaubh)rD}rD(hX&Sample log for LCD test is shown belowrDhjDhjW5hhh}rD(h]h]h]h]h]uhMhhh]rDhX&Sample log for LCD test is shown belowrDrD}rD(hjDhjDubaubj()rD}rD(hX********************************************* * Display Test * ********************************************* LCD Board detect successfully Running LCD Display Test... DSS application started... LCD configured successfully Overlay configuration done Video Port configuration done Display the colour bar with maximum brightness LCD Display Test Successfully Running LCD Backlight Test Changing Backlight... WAIT, Check the LCD panel Increasing the brightness by varying the duty cycle percentage form 0 to 100... Decreasing the brightness by varying the duty cycle percentage form 100 to 0... Press 'y' if Brightness is Increasing & Decreasing, Any other key for failure: y Change Backlight - PASS Running LCD Touch Detect Test Running the LCD touch detect test... Reading the touch device details Reading the product ID... The prod Id read is - 928 Reading the firmware version... The firmware version read is - `ABC Clearing the buffer status register... Waiting for user to provide 20 single point touches... (x - 371, y - 497) (x - 672, y - 284) (x - 371, y - 497) (x - 785, y - 620) (x - 819, y - 334) (x - 857, y - 449) (x - 387, y - 495) (x - 679, y - 314) (x - 792, y - 644) (x - 805, y - 428) (x - 821, y - 379) (x - 909, y - 570) (x - 909, y - 570) (x - 794, y - 697) (x - 807, y - 718) (x - 824, y - 747) (x - 952, y - 648) (x - 829, y - 753) (x - 839, y - 754) (x - 890, y - 442) LCD touch detect test passed!hjDhjW5hj+h}rD(hhh]h]h]h]h]uhM hhh]rDhX********************************************* * Display Test * ********************************************* LCD Board detect successfully Running LCD Display Test... DSS application started... LCD configured successfully Overlay configuration done Video Port configuration done Display the colour bar with maximum brightness LCD Display Test Successfully Running LCD Backlight Test Changing Backlight... WAIT, Check the LCD panel Increasing the brightness by varying the duty cycle percentage form 0 to 100... Decreasing the brightness by varying the duty cycle percentage form 100 to 0... Press 'y' if Brightness is Increasing & Decreasing, Any other key for failure: y Change Backlight - PASS Running LCD Touch Detect Test Running the LCD touch detect test... Reading the touch device details Reading the product ID... The prod Id read is - 928 Reading the firmware version... The firmware version read is - `ABC Clearing the buffer status register... Waiting for user to provide 20 single point touches... (x - 371, y - 497) (x - 672, y - 284) (x - 371, y - 497) (x - 785, y - 620) (x - 819, y - 334) (x - 857, y - 449) (x - 387, y - 495) (x - 679, y - 314) (x - 792, y - 644) (x - 805, y - 428) (x - 821, y - 379) (x - 909, y - 570) (x - 909, y - 570) (x - 794, y - 697) (x - 807, y - 718) (x - 824, y - 747) (x - 952, y - 648) (x - 829, y - 753) (x - 839, y - 754) (x - 890, y - 442) LCD touch detect test passed!rDrD}rD(hUhjDubaubj1)rD}rD(hUhjDhjW5hj4h}rD(h]h]h]h]h]uhM8hhh]rDj7)rD}rD(hUj:KhjDhjW5hhh}rD(h]h]h]h]h]uhKhhh]ubaubeubeubh)rD}rD(hUhjT5hjW5hhh}rD(h]h]h]h]rDUlcd-touchscreen-testrDah]rDhauhM;hhh]rD(h)rD}rD(hXLCD Touchscreen TestrDhjDhjW5hhh}rD(h]h]h]h]h]uhM;hhh]rDhXLCD Touchscreen TestrDrD}rD(hjDhjDubaubh)rD}rD(hXEThis test verifies the LCD Touchscreen on the HW platform under test.rDhjDhjW5hhh}rD(h]h]h]h]h]uhM<hhh]rDhXEThis test verifies the LCD Touchscreen on the HW platform under test.rDrD}rD(hjDhjDubaubh)rD}rD(hUhKhjDhjW5hhh}rD(h]rDXtest accessoriesrDah]h]h]rDUid85rDah]uhM?hhh]rD(h)rD}rD(hXTest AccessoriesrDhjDhjW5hhh}rD(h]h]h]h]h]uhM?hhh]rDhXTest AccessoriesrDrD}rD(hjDhjDubaubh)rD}rD(hX LCD DisplayrDhjDhjW5hhh}rD(h]h]h]h]h]uhM@hhh]rDhX LCD DisplayrDrD}rD(hjDhjDubaubeubh)rD}rD(hUhKhjDhjW5hhh}rD(h]rDX test setuprDah]h]h]rDUid86rDah]uhMChhh]rD(h)rD}rD(hX Test SetuprDhjDhjW5hhh}rD(h]h]h]h]h]uhMChhh]rDhX Test SetuprDrD}rD(hjDhjDubaubh)rD}rD(hX6Connect the LCD Display to the HW platform under test.rDhjDhjW5hhh}rD(h]h]h]h]h]uhMDhhh]rDhX6Connect the LCD Display to the HW platform under test.rDrD}rD(hjDhjDubaubeubh)rD}rD(hUhKhjDhjW5hhh}rD(h]rDXtest executionrDah]h]h]rDUid87rDah]uhMGhhh]rD(h)rD}rD(hXTest ExecutionrDhjDhjW5hhh}rD(h]h]h]h]h]uhMGhhh]rDhXTest ExecutionrErE}rE(hjDhjDubaubj[)rE}rE(hUhjDhNhj^h}rE(h]h]h]h]h]uhNhhh]rEj)rE}rE(hUh}r E(jX-h]h]h]h]h]uhjEh]r E(j)r E}r E(hX7Select the menu option to run ‘lcdTouchscreen_TEST’r Eh}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hj Ehj EhjW5hhh}rE(h]h]h]h]h]uhMHh]rEhX7Select the menu option to run ‘lcdTouchscreen_TEST’rErE}rE(hj EhjEubaubahjubj)rE}rE(hXCProvide multiple touch points to verify multi-touch input detectionrEh}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hjEhjEhjW5hhh}rE(h]h]h]h]h]uhMIh]rEhXCProvide multiple touch points to verify multi-touch input detectionr Er!E}r"E(hjEhjEubaubahjubj)r#E}r$E(hX&Verify the test log on serial console h}r%E(h]h]h]h]h]uhjEh]r&Eh)r'E}r(E(hX%Verify the test log on serial consoler)Ehj#EhjW5hhh}r*E(h]h]h]h]h]uhMJh]r+EhX%Verify the test log on serial consoler,Er-E}r.E(hj)Ehj'Eubaubahjubehjubaubeubh)r/E}r0E(hUhKhjDhjW5hhh}r1E(h]r2EXtest logr3Eah]h]h]r4EUid88r5Eah]uhMMhhh]r6E(h)r7E}r8E(hXTest Logr9Ehj/EhjW5hhh}r:E(h]h]h]h]h]uhMMhhh]r;EhXTest LogrE(hj9Ehj7Eubaubh)r?E}r@E(hX2Sample log for LCD Touchscreen test is shown belowrAEhj/EhjW5hhh}rBE(h]h]h]h]h]uhMNhhh]rCEhX2Sample log for LCD Touchscreen test is shown belowrDErEE}rFE(hjAEhj?Eubaubj()rGE}rHE(hX********************************************* * Touchscreen Test * ********************************************* Input 9 touches to exit test Touch t1 t2 t3 t4 t5 t6 t7 t8 t9 1 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 2 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 3 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 5 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 6 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 7 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 8 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 9 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 9 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095hj/EhjW5hj+h}rIE(hhh]h]h]h]h]uhMHhhh]rJEhX********************************************* * Touchscreen Test * ********************************************* Input 9 touches to exit test Touch t1 t2 t3 t4 t5 t6 t7 t8 t9 1 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 2 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 3 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 5 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 6 343, 389 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 7 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 8 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 9 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 9 426, 637 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095 4095,4095rKErLE}rME(hUhjGEubaubj1)rNE}rOE(hUhj/EhjW5hj4h}rPE(h]h]h]h]h]uhMbhhh]rQEj7)rRE}rSE(hUj:KhjNEhjW5hhh}rTE(h]h]h]h]h]uhKhhh]ubaubeubeubh)rUE}rVE(hUhjT5hjW5hhh}rWE(h]h]h]h]rXEU icss-led-testrYEah]rZEhauhMehhh]r[E(h)r\E}r]E(hX ICSS LED Testr^EhjUEhjW5hhh}r_E(h]h]h]h]h]uhMehhh]r`EhX ICSS LED TestraErbE}rcE(hj^Ehj\Eubaubh)rdE}reE(hXtThis test verifies LEDs connected to PRU-ICSS ports. All the LEDs are turned ON and OFF for 3 times during the test.rfEhjUEhjW5hhh}rgE(h]h]h]h]h]uhMfhhh]rhEhXtThis test verifies LEDs connected to PRU-ICSS ports. All the LEDs are turned ON and OFF for 3 times during the test.riErjE}rkE(hjfEhjdEubaubh)rlE}rmE(hUhKhjUEhjW5hhh}rnE(h]roEXtest accessoriesrpEah]h]h]rqEUid89rrEah]uhMjhhh]rsE(h)rtE}ruE(hXTest AccessoriesrvEhjlEhjW5hhh}rwE(h]h]h]h]h]uhMjhhh]rxEhXTest AccessoriesryErzE}r{E(hjvEhjtEubaubh)r|E}r}E(hX=No additional accessories are required for running this test.r~EhjlEhjW5hhh}rE(h]h]h]h]h]uhMkhhh]rEhX=No additional accessories are required for running this test.rErE}rE(hj~Ehj|Eubaubeubh)rE}rE(hUhKhjUEhjW5hhh}rE(h]rEX test setuprEah]h]h]rEUid90rEah]uhMohhh]rE(h)rE}rE(hX Test SetuprEhjEhjW5hhh}rE(h]h]h]h]h]uhMohhh]rEhX Test SetuprErE}rE(hjEhjEubaubh)rE}rE(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rEhjEhjW5hhh}rE(h]h]h]h]h]uhMphhh]rEhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rErE}rE(hjEhjEubaubeubh)rE}rE(hUhKhjUEhjW5hhh}rE(h]rEXtest executionrEah]h]h]rEUid91rEah]uhMshhh]rE(h)rE}rE(hXTest ExecutionrEhjEhjW5hhh}rE(h]h]h]h]h]uhMshhh]rEhXTest ExecutionrErE}rE(hjEhjEubaubj[)rE}rE(hUhjEhNhj^h}rE(h]h]h]h]h]uhNhhh]rEj)rE}rE(hUh}rE(jX-h]h]h]h]h]uhjEh]rE(j)rE}rE(hX1Select the menu option to run ‘icssgLed_TEST’rEh}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hjEhjEhjW5hhh}rE(h]h]h]h]h]uhMth]rEhX1Select the menu option to run ‘icssgLed_TEST’rErE}rE(hjEhjEubaubahjubj)rE}rE(hXLConfirm that all the PRU-ICSS LEDs on the board are toggling during the testrEh}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hjEhjEhjW5hhh}rE(h]h]h]h]h]uhMuh]rEhXLConfirm that all the PRU-ICSS LEDs on the board are toggling during the testrErE}rE(hjEhjEubaubahjubj)rE}rE(hX%Verify the test log on serial consolerEh}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hjEhjEhjW5hhh}rE(h]h]h]h]h]uhMvh]rEhX%Verify the test log on serial consolerErE}rE(hjEhjEubaubahjubj)rE}rE(hXYConfirm the test result by pressing 'y' in case of success and any other key for failure h}rE(h]h]h]h]h]uhjEh]rEh)rE}rE(hXXConfirm the test result by pressing 'y' in case of success and any other key for failurerEhjEhjW5hhh}rE(h]h]h]h]h]uhMwh]rEhXXConfirm the test result by pressing 'y' in case of success and any other key for failurerErE}rE(hjEhjEubaubahjubehjubaubeubh)rE}rE(hUhKhjUEhjW5hhh}rE(h]rEXtest logrEah]h]h]rEUid92rEah]uhMzhhh]rE(h)rE}rE(hXTest LogrEhjEhjW5hhh}rE(h]h]h]h]h]uhMzhhh]rEhXTest LogrErE}rE(hjEhjEubaubh)rE}rE(hX+Sample log for ICSS LED test is shown belowrEhjEhjW5hhh}rE(h]h]h]h]h]uhM{hhh]rEhX+Sample log for ICSS LED test is shown belowrErE}rE(hjEhjEubaubj()rE}rE(hX3********************************************* * ICSS LED Test * ********************************************* Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: y Received: y Test PASSED!hjEhjW5hj+h}rE(hhh]h]h]h]h]uhMuhhh]rEhX3********************************************* * ICSS LED Test * ********************************************* Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: y Received: y Test PASSED!rFrF}rF(hUhjEubaubj1)rF}rF(hUhjEhjW5hj4h}rF(h]h]h]h]h]uhMhhh]rFj7)rF}rF(hUj:KhjFhjW5hhh}r F(h]h]h]h]h]uhKhhh]ubaubeubeubh)r F}r F(hUhjT5hjW5hhh}r F(h]h]h]h]r FUindustrial-led-testrFah]rFhauhMhhh]rF(h)rF}rF(hXIndustrial LED TestrFhj FhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXIndustrial LED TestrFrF}rF(hjFhjFubaubh)rF}rF(hXThis test verifies industrial LEDs connected to I2C interface on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test.rFhj FhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXThis test verifies industrial LEDs connected to I2C interface on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test.rFrF}r F(hjFhjFubaubh)r!F}r"F(hUhKhj FhjW5hhh}r#F(h]r$FXtest accessoriesr%Fah]h]h]r&FUid93r'Fah]uhMhhh]r(F(h)r)F}r*F(hXTest Accessoriesr+Fhj!FhjW5hhh}r,F(h]h]h]h]h]uhMhhh]r-FhXTest Accessoriesr.Fr/F}r0F(hj+Fhj)Fubaubh)r1F}r2F(hX=No additional accessories are required for running this test.r3Fhj!FhjW5hhh}r4F(h]h]h]h]h]uhMhhh]r5FhX=No additional accessories are required for running this test.r6Fr7F}r8F(hj3Fhj1Fubaubeubh)r9F}r:F(hUhKhj FhjW5hhh}r;F(h]rFUid94r?Fah]uhMhhh]r@F(h)rAF}rBF(hX Test SetuprCFhj9FhjW5hhh}rDF(h]h]h]h]h]uhMhhh]rEFhX Test SetuprFFrGF}rHF(hjCFhjAFubaubh)rIF}rJF(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rKFhj9FhjW5hhh}rLF(h]h]h]h]h]uhMhhh]rMFhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rNFrOF}rPF(hjKFhjIFubaubeubh)rQF}rRF(hUhKhj FhjW5hhh}rSF(h]rTFXtest executionrUFah]h]h]rVFUid95rWFah]uhMhhh]rXF(h)rYF}rZF(hXTest Executionr[FhjQFhjW5hhh}r\F(h]h]h]h]h]uhMhhh]r]FhXTest Executionr^Fr_F}r`F(hj[FhjYFubaubj[)raF}rbF(hUhjQFhNhj^h}rcF(h]h]h]h]h]uhNhhh]rdFj)reF}rfF(hUh}rgF(jX-h]h]h]h]h]uhjaFh]rhF(j)riF}rjF(hX6Select the menu option to run ‘ledIndustrial_TEST’rkFh}rlF(h]h]h]h]h]uhjeFh]rmFh)rnF}roF(hjkFhjiFhjW5hhh}rpF(h]h]h]h]h]uhMh]rqFhX6Select the menu option to run ‘ledIndustrial_TEST’rrFrsF}rtF(hjkFhjnFubaubahjubj)ruF}rvF(hXNConfirm that all the industrial LEDs on the board are toggling during the testrwFh}rxF(h]h]h]h]h]uhjeFh]ryFh)rzF}r{F(hjwFhjuFhjW5hhh}r|F(h]h]h]h]h]uhMh]r}FhXNConfirm that all the industrial LEDs on the board are toggling during the testr~FrF}rF(hjwFhjzFubaubahjubj)rF}rF(hX%Verify the test log on serial consolerFh}rF(h]h]h]h]h]uhjeFh]rFh)rF}rF(hjFhjFhjW5hhh}rF(h]h]h]h]h]uhMh]rFhX%Verify the test log on serial consolerFrF}rF(hjFhjFubaubahjubj)rF}rF(hXYConfirm the test result by pressing 'y' in case of success and any other key for failure h}rF(h]h]h]h]h]uhjeFh]rFh)rF}rF(hXXConfirm the test result by pressing 'y' in case of success and any other key for failurerFhjFhjW5hhh}rF(h]h]h]h]h]uhMh]rFhXXConfirm the test result by pressing 'y' in case of success and any other key for failurerFrF}rF(hjFhjFubaubahjubehjubaubeubh)rF}rF(hUhKhj FhjW5hhh}rF(h]rFXtest logrFah]h]h]rFUid96rFah]uhMhhh]rF(h)rF}rF(hXTest LogrFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXTest LogrFrF}rF(hjFhjFubaubh)rF}rF(hX1Sample log for industrial LED test is shown belowrFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhX1Sample log for industrial LED test is shown belowrFrF}rF(hjFhjFubaubj()rF}rF(hXe********************************************* * Industrial LED Test * ********************************************* Running Industrial LED test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling Ethernet LEDs for 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: y Received: y Testing Industrial LEDs on AM65x IDK Board Cycling Ethernet LEDs for 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: y Received: y Industrial LED test PassedhjFhjW5hj+h}rF(hhh]h]h]h]h]uhMhhh]rFhXe********************************************* * Industrial LED Test * ********************************************* Running Industrial LED test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling Ethernet LEDs for 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: y Received: y Testing Industrial LEDs on AM65x IDK Board Cycling Ethernet LEDs for 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: y Received: y Industrial LED test PassedrFrF}rF(hUhjFubaubj1)rF}rF(hUhjFhjW5hj4h}rF(h]h]h]h]h]uhMhhh]rFj7)rF}rF(hUj:KhjFhjW5hhh}rF(h]h]h]h]h]uhKhhh]ubaubeubeubh)rF}rF(hUhjT5hjW5hhh}rF(h]h]h]h]rFUled-testrFah]rFhJauhMhhh]rF(h)rF}rF(hXLED TestrFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXLED TestrFrF}rF(hjFhjFubaubh)rF}rF(hXThis test verifies general purpose user LEDs on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test.rFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXThis test verifies general purpose user LEDs on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test.rFrF}rF(hjFhjFubaubh)rF}rF(hUhKhjFhjW5hhh}rF(h]rFXtest accessoriesrFah]h]h]rFUid97rFah]uhMhhh]rF(h)rF}rF(hXTest AccessoriesrFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhXTest AccessoriesrFrF}rF(hjFhjFubaubh)rF}rF(hX=No additional accessories are required for running this test.rFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhX=No additional accessories are required for running this test.rFrF}rF(hjFhjFubaubeubh)rF}rF(hUhKhjFhjW5hhh}rF(h]rFX test setuprFah]h]h]rFUid98rFah]uhMhhh]rF(h)rF}rF(hX Test SetuprFhjFhjW5hhh}rF(h]h]h]h]h]uhMhhh]rFhX Test SetuprFrF}rF(hjFhjFubaubh)rF}rF(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rGhjFhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rGrG}rG(hjGhjFubaubeubh)rG}rG(hUhKhjFhjW5hhh}rG(h]r GXtest executionr Gah]h]h]r GUid99r Gah]uhMhhh]r G(h)rG}rG(hXTest ExecutionrGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXTest ExecutionrGrG}rG(hjGhjGubaubj[)rG}rG(hUhjGhNhj^h}rG(h]h]h]h]h]uhNhhh]rGj)rG}rG(hUh}rG(jX-h]h]h]h]h]uhjGh]rG(j)rG}rG(hX,Select the menu option to run ‘led_TEST’r Gh}r!G(h]h]h]h]h]uhjGh]r"Gh)r#G}r$G(hj GhjGhjW5hhh}r%G(h]h]h]h]h]uhMh]r&GhX,Select the menu option to run ‘led_TEST’r'Gr(G}r)G(hj Ghj#Gubaubahjubj)r*G}r+G(hXXConfirm that all the general purpose user LEDs on the board are toggling during the testr,Gh}r-G(h]h]h]h]h]uhjGh]r.Gh)r/G}r0G(hj,Ghj*GhjW5hhh}r1G(h]h]h]h]h]uhMh]r2GhXXConfirm that all the general purpose user LEDs on the board are toggling during the testr3Gr4G}r5G(hj,Ghj/Gubaubahjubj)r6G}r7G(hX%Verify the test log on serial consoler8Gh}r9G(h]h]h]h]h]uhjGh]r:Gh)r;G}rGhX%Verify the test log on serial consoler?Gr@G}rAG(hj8Ghj;Gubaubahjubj)rBG}rCG(hXXConfirm the test result by pressing 'y' in case of success or any other key for failure h}rDG(h]h]h]h]h]uhjGh]rEGh)rFG}rGG(hXWConfirm the test result by pressing 'y' in case of success or any other key for failurerHGhjBGhjW5hhh}rIG(h]h]h]h]h]uhMh]rJGhXWConfirm the test result by pressing 'y' in case of success or any other key for failurerKGrLG}rMG(hjHGhjFGubaubahjubehjubaubeubh)rNG}rOG(hUhKhjFhjW5hhh}rPG(h]rQGXtest logrRGah]h]h]rSGUid100rTGah]uhMhhh]rUG(h)rVG}rWG(hXTest LogrXGhjNGhjW5hhh}rYG(h]h]h]h]h]uhMhhh]rZGhXTest Logr[Gr\G}r]G(hjXGhjVGubaubh)r^G}r_G(hX&Sample log for LED test is shown belowr`GhjNGhjW5hhh}raG(h]h]h]h]h]uhMhhh]rbGhX&Sample log for LED test is shown belowrcGrdG}reG(hj`Ghj^Gubaubj()rfG}rgG(hX********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: y Received: y Test PASSED!hjNGhjW5hj+h}rhG(hhh]h]h]h]h]uhMhhh]riGhX********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: y Received: y Test PASSED!rjGrkG}rlG(hUhjfGubaubj1)rmG}rnG(hUhjNGhjW5hj4h}roG(h]h]h]h]h]uhMhhh]rpGj7)rqG}rrG(hUj:KhjmGhjW5hhh}rsG(h]h]h]h]h]uhKhhh]ubaubeubeubh)rtG}ruG(hUhjT5hjW5hhh}rvG(h]h]h]h]rwGUlight-sensor-testrxGah]ryGh>auhMhhh]rzG(h)r{G}r|G(hXLight Sensor Testr}GhjtGhjW5hhh}r~G(h]h]h]h]h]uhMhhh]rGhXLight Sensor TestrGrG}rG(hj}Ghj{Gubaubh)rG}rG(hXJThis test verifies the Ambient Light Sensor on the HW platform under test.rGhjtGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXJThis test verifies the Ambient Light Sensor on the HW platform under test.rGrG}rG(hjGhjGubaubh)rG}rG(hUhKhjtGhjW5hhh}rG(h]rGXtest accessoriesrGah]h]h]rGUid101rGah]uhMhhh]rG(h)rG}rG(hXTest AccessoriesrGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXTest AccessoriesrGrG}rG(hjGhjGubaubh)rG}rG(hX=No additional accessories are required for running this test.rGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhX=No additional accessories are required for running this test.rGrG}rG(hjGhjGubaubeubh)rG}rG(hUhKhjtGhjW5hhh}rG(h]rGX test setuprGah]h]h]rGUid102rGah]uhMhhh]rG(h)rG}rG(hX Test SetuprGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhX Test SetuprGrG}rG(hjGhjGubaubh)rG}rG(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rGrG}rG(hjGhjGubaubeubh)rG}rG(hUhKhjtGhjW5hhh}rG(h]rGXtest executionrGah]h]h]rGUid103rGah]uhMhhh]rG(h)rG}rG(hXTest ExecutionrGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXTest ExecutionrGrG}rG(hjGhjGubaubj[)rG}rG(hUhjGhNhj^h}rG(h]h]h]h]h]uhNhhh]rGj)rG}rG(hUh}rG(jX-h]h]h]h]h]uhjGh]rG(j)rG}rG(hX=Select the menu option to run ‘ambient_light_sensor_TEST’rGh}rG(h]h]h]h]h]uhjGh]rGh)rG}rG(hjGhjGhjW5hhh}rG(h]h]h]h]h]uhMh]rGhX=Select the menu option to run ‘ambient_light_sensor_TEST’rGrG}rG(hjGhjGubaubahjubj)rG}rG(hX&Verify the test log on serial console h}rG(h]h]h]h]h]uhjGh]rGh)rG}rG(hX%Verify the test log on serial consolerGhjGhjW5hhh}rG(h]h]h]h]h]uhMh]rGhX%Verify the test log on serial consolerGrG}rG(hjGhjGubaubahjubehjubaubeubh)rG}rG(hUhKhjtGhjW5hhh}rG(h]rGXtest logrGah]h]h]rGUid104rGah]uhMhhh]rG(h)rG}rG(hXTest LogrGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhXTest LogrGrG}rG(hjGhjGubaubh)rG}rG(hX/Sample log for Light Sensor test is shown belowrGhjGhjW5hhh}rG(h]h]h]h]h]uhMhhh]rGhX/Sample log for Light Sensor test is shown belowrHrH}rH(hjGhjGubaubj()rH}rH(hX~********************************************* * Ambient Light Test * ********************************************* Test: Expected Result: Actual Result: Result: ---------------- ---------------- -------------- ------- PowerUp/Read 0x03 PASS Read ADC 0 >=0x80 0x95 PASS Read ADC 1 >=0x80 0xAC PASS PowerDown 0x00 0x0 PASS Read ADC 0 0x00 0x00 PASS Read ADC 1 0x00 0x00 PASShjGhjW5hj+h}rH(hhh]h]h]h]h]uhMhhh]rHhX~********************************************* * Ambient Light Test * ********************************************* Test: Expected Result: Actual Result: Result: ---------------- ---------------- -------------- ------- PowerUp/Read 0x03 PASS Read ADC 0 >=0x80 0x95 PASS Read ADC 1 >=0x80 0xAC PASS PowerDown 0x00 0x0 PASS Read ADC 0 0x00 0x00 PASS Read ADC 1 0x00 0x00 PASSrHrH}r H(hUhjHubaubj1)r H}r H(hUhjGhjW5hj4h}r H(h]h]h]h]h]uhM hhh]r Hj7)rH}rH(hUj:Khj HhjW5hhh}rH(h]h]h]h]h]uhKhhh]ubaubeubeubh)rH}rH(hUhjT5hjW5hhh}rH(h]h]h]h]rHU mcan-testrHah]rHh4auhM hhh]rH(h)rH}rH(hX MCAN TestrHhjHhjW5hhh}rH(h]h]h]h]h]uhM hhh]rHhX MCAN TestrHrH}rH(hjHhjHubaubh)r H}r!H(hXVerifies MCAN ports on the HW platform with two MCAN ports connected with each other. Data is sent from one port and received on another port. Both the ports are verified for Tx and Rx.r"HhjHhjW5hhh}r#H(h]h]h]h]h]uhMhhh]r$HhXVerifies MCAN ports on the HW platform with two MCAN ports connected with each other. Data is sent from one port and received on another port. Both the ports are verified for Tx and Rx.r%Hr&H}r'H(hj"Hhj Hubaubh)r(H}r)H(hUhKhjHhjW5hhh}r*H(h]r+HXtest accessoriesr,Hah]h]h]r-HUid105r.Hah]uhMhhh]r/H(h)r0H}r1H(hXTest Accessoriesr2Hhj(HhjW5hhh}r3H(h]h]h]h]h]uhMhhh]r4HhXTest Accessoriesr5Hr6H}r7H(hj2Hhj0Hubaubh)r8H}r9H(hX MCAN port to port loopback cabler:Hhj(HhjW5hhh}r;H(h]h]h]h]h]uhMhhh]rH}r?H(hj:Hhj8Hubaubeubh)r@H}rAH(hUhKhjHhjW5hhh}rBH(h]rCHX test setuprDHah]h]h]rEHUid106rFHah]uhMhhh]rGH(h)rHH}rIH(hX Test SetuprJHhj@HhjW5hhh}rKH(h]h]h]h]h]uhMhhh]rLHhX Test SetuprMHrNH}rOH(hjJHhjHHubaubh)rPH}rQH(hXConnect two MCAN ports on the board to each other with MCAN cable. Check below table for the details of MCAN ports used by the test on different platforms.rRHhj@HhjW5hhh}rSH(h]h]h]h]h]uhMhhh]rTHhXConnect two MCAN ports on the board to each other with MCAN cable. Check below table for the details of MCAN ports used by the test on different platforms.rUHrVH}rWH(hjRHhjPHubaubj)rXH}rYH(hUhj@HhjW5hj h}rZH(h]h]h]h]h]uhNhhh]r[Hj)r\H}r]H(hUh}r^H(h]h]h]h]h]UcolsKuhjXHh]r_H(j)r`H}raH(hUh}rbH(h]h]h]h]h]UcolwidthKuhj\Hh]hjubj)rcH}rdH(hUh}reH(h]h]h]h]h]UcolwidthKuhj\Hh]hjubj3)rfH}rgH(hUh}rhH(h]h]h]h]h]uhj\Hh]riHj8)rjH}rkH(hUh}rlH(h]h]h]h]h]uhjfHh]rmH(j=)rnH}roH(hUh}rpH(h]h]h]h]h]uhjjHh]rqHh)rrH}rsH(hX HW PlatformrtHhjnHhjW5hhh}ruH(h]h]h]h]h]uhMh]rvHhX HW PlatformrwHrxH}ryH(hjtHhjrHubaubahjJubj=)rzH}r{H(hUh}r|H(h]h]h]h]h]uhjjHh]r}Hh)r~H}rH(hX MCAN PortsrHhjzHhjW5hhh}rH(h]h]h]h]h]uhMh]rHhX MCAN PortsrHrH}rH(hjHhj~HubaubahjJubehjubahjubj)rH}rH(hUh}rH(h]h]h]h]h]uhj\Hh]rHj8)rH}rH(hUh}rH(h]h]h]h]h]uhjHh]rH(j=)rH}rH(hUh}rH(h]h]h]h]h]uhjHh]rHh)rH}rH(hX am65xx_idkrHhjHhjW5hhh}rH(h]h]h]h]h]uhMh]rHhX am65xx_idkrHrH}rH(hjHhjHubaubahjJubj=)rH}rH(hUh}rH(h]h]h]h]h]uhjHh]rHh)rH}rH(hX&Two ports on P1 connector of IDK boardrHhjHhjW5hhh}rH(h]h]h]h]h]uhMh]rHhX&Two ports on P1 connector of IDK boardrHrH}rH(hjHhjHubaubahjJubehjubahjUubehjVubaubeubh)rH}rH(hUhKhjHhjW5hhh}rH(h]rHXtest executionrHah]h]h]rHUid107rHah]uhM#hhh]rH(h)rH}rH(hXTest ExecutionrHhjHhjW5hhh}rH(h]h]h]h]h]uhM#hhh]rHhXTest ExecutionrHrH}rH(hjHhjHubaubj[)rH}rH(hUhjHhNhj^h}rH(h]h]h]h]h]uhNhhh]rHj)rH}rH(hUh}rH(jX-h]h]h]h]h]uhjHh]rH(j)rH}rH(hX-Select the menu option to run ‘mcan_TEST’rHh}rH(h]h]h]h]h]uhjHh]rHh)rH}rH(hjHhjHhjW5hhh}rH(h]h]h]h]h]uhM$h]rHhX-Select the menu option to run ‘mcan_TEST’rHrH}rH(hjHhjHubaubahjubj)rH}rH(hX&Verify the test log on serial console h}rH(h]h]h]h]h]uhjHh]rHh)rH}rH(hX%Verify the test log on serial consolerHhjHhjW5hhh}rH(h]h]h]h]h]uhM%h]rHhX%Verify the test log on serial consolerHrH}rH(hjHhjHubaubahjubehjubaubeubh)rH}rH(hUhKhjHhjW5hhh}rH(h]rHXtest logrHah]h]h]rHUid108rHah]uhM(hhh]rH(h)rH}rH(hXTest LogrHhjHhjW5hhh}rH(h]h]h]h]h]uhM(hhh]rHhXTest LogrHrH}rH(hjHhjHubaubh)rH}rH(hX'Sample log for MCAN test is shown belowrHhjHhjW5hhh}rH(h]h]h]h]h]uhM)hhh]rHhX'Sample log for MCAN test is shown belowrHrH}rH(hjHhjHubaubj()rH}rH(hX4*********************************************** * MCAN Test * *********************************************** MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN0 MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN1 Transmitting Data on MCAN Port0 and Receiving on MCAN port 1 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x100008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Received Packet - 1 Sending Packet - 2 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xcb Message DataByte2:0x62 Message DataByte3:0xc5 Message DataByte4:0xf2 Message DataByte5:0xf0 Message DataByte6:0x42 Message DataByte7:0xd0 Message DataByte8:0x5e Message DataByte9:0x8 Message DataByte10:0xf0 Message DataByte11:0x26 Message DataByte12:0x97 Message DataByte13:0xb Message DataByte14:0x26 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xcb Message DataByte2:0x62 Message DataByte3:0xc5 Message DataByte4:0xf2 Message DataByte5:0xf0 Message DataByte6:0x42 Message DataByte7:0xd0 Message DataByte8:0x5e Message DataByte9:0x8 Message DataByte10:0xf0 Message DataByte11:0x26 Message DataByte12:0x97 Message DataByte13:0xb Message DataByte14:0x26 Received Packet - 2 Sending Packet - 3 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xe4 Message DataByte2:0xe6 Message DataByte3:0x81 Message DataByte4:0x1b Message DataByte5:0x8a Message DataByte6:0x71 Message DataByte7:0x39 Message DataByte8:0x78 Message DataByte9:0x7a Message DataByte10:0xa7 Message DataByte11:0x22 Message DataByte12:0xdb Message DataByte13:0x19 Message DataByte14:0x62 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xe4 Message DataByte2:0xe6 Message DataByte3:0x81 Message DataByte4:0x1b Message DataByte5:0x8a Message DataByte6:0x71 Message DataByte7:0x39 Message DataByte8:0x78 Message DataByte9:0x7a Message DataByte10:0xa7 Message DataByte11:0x22 Message DataByte12:0xdb Message DataByte13:0x19 Message DataByte14:0x62 Received Packet - 3 Sending Packet - 4 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x18 Message DataByte2:0x13 Message DataByte3:0x56 Message DataByte4:0x19 Message DataByte5:0x54 Message DataByte6:0x55 Message DataByte7:0xc6 Message DataByte8:0x40 Message DataByte9:0x45 Message DataByte10:0xa0 Message DataByte11:0x5a Message DataByte12:0x4e Message DataByte13:0x51 Message DataByte14:0xdb Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x18 Message DataByte2:0x13 Message DataByte3:0x56 Message DataByte4:0x19 Message DataByte5:0x54 Message DataByte6:0x55 Message DataByte7:0xc6 Message DataByte8:0x40 Message DataByte9:0x45 Message DataByte10:0xa0 Message DataByte11:0x5a Message DataByte12:0x4e Message DataByte13:0x51 Message DataByte14:0xdb Received Packet - 4 Sending Packet - 5 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xf0 Message DataByte2:0x79 Message DataByte3:0x8a Message DataByte4:0xaa Message DataByte5:0x8b Message DataByte6:0xe3 Message DataByte7:0x8f Message DataByte8:0x5c Message DataByte9:0xf6 Message DataByte10:0x1c Message DataByte11:0xa0 Message DataByte12:0x41 Message DataByte13:0x4c Message DataByte14:0xeb Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xf0 Message DataByte2:0x79 Message DataByte3:0x8a Message DataByte4:0xaa Message DataByte5:0x8b Message DataByte6:0xe3 Message DataByte7:0x8f Message DataByte8:0x5c Message DataByte9:0xf6 Message DataByte10:0x1c Message DataByte11:0xa0 Message DataByte12:0x41 Message DataByte13:0x4c Message DataByte14:0xeb Received Packet - 5 Transmitting Data on MCAN Port1 and Receiving on MCAN port 0 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x1f Message DataByte2:0x44 Message DataByte3:0x40 Message DataByte4:0x68 Message DataByte5:0x7a Message DataByte6:0x5d Message DataByte7:0xf5 Message DataByte8:0x3e Message DataByte9:0xa5 Message DataByte10:0xb7 Message DataByte11:0xe3 Message DataByte12:0x36 Message DataByte13:0x3a Message DataByte14:0x76 Received Packet - 1 Sending Packet - 2 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xb0 Message DataByte2:0xbd Message DataByte3:0x67 Message DataByte4:0x34 Message DataByte5:0x8c Message DataByte6:0x9 Message DataByte7:0x6 Message DataByte8:0xab Message DataByte9:0x4c Message DataByte10:0x2b Message DataByte11:0x13 Message DataByte12:0x4a Message DataByte13:0xe1 Message DataByte14:0x7d Received Packet - 2 Sending Packet - 3 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xde Message DataByte2:0x32 Message DataByte3:0xf2 Message DataByte4:0x26 Message DataByte5:0xb9 Message DataByte6:0x8e Message DataByte7:0x4e Message DataByte8:0x65 Message DataByte9:0x8d Message DataByte10:0xd5 Message DataByte11:0xda Message DataByte12:0xee Message DataByte13:0x73 Message DataByte14:0x7e Received Packet - 3 Sending Packet - 4 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xe7 Message DataByte2:0x13 Message DataByte3:0xa0 Message DataByte4:0x99 Message DataByte5:0xe Message DataByte6:0x63 Message DataByte7:0x95 Message DataByte8:0x3f Message DataByte9:0x27 Message DataByte10:0xcf Message DataByte11:0xb2 Message DataByte12:0xb0 Message DataByte13:0xc5 Message DataByte14:0xef Received Packet - 4 Sending Packet - 5 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xb1 Message DataByte2:0x1c Message DataByte3:0xe5 Message DataByte4:0xef Message DataByte5:0xaa Message DataByte6:0x40 Message DataByte7:0x77 Message DataByte8:0xac Message DataByte9:0x70 Message DataByte10:0x77 Message DataByte11:0x3 Message DataByte12:0xef Message DataByte13:0xc5 Message DataByte14:0x70 Received Packet - 5 MCAN diagnostic test completed.hjHhjW5hj+h}rH(hhh]h]h]h]h]uhM#hhh]rHhX4*********************************************** * MCAN Test * *********************************************** MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN0 MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN1 Transmitting Data on MCAN Port0 and Receiving on MCAN port 1 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x100008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Received Packet - 1 Sending Packet - 2 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xcb Message DataByte2:0x62 Message DataByte3:0xc5 Message DataByte4:0xf2 Message DataByte5:0xf0 Message DataByte6:0x42 Message DataByte7:0xd0 Message DataByte8:0x5e Message DataByte9:0x8 Message DataByte10:0xf0 Message DataByte11:0x26 Message DataByte12:0x97 Message DataByte13:0xb Message DataByte14:0x26 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xcb Message DataByte2:0x62 Message DataByte3:0xc5 Message DataByte4:0xf2 Message DataByte5:0xf0 Message DataByte6:0x42 Message DataByte7:0xd0 Message DataByte8:0x5e Message DataByte9:0x8 Message DataByte10:0xf0 Message DataByte11:0x26 Message DataByte12:0x97 Message DataByte13:0xb Message DataByte14:0x26 Received Packet - 2 Sending Packet - 3 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xe4 Message DataByte2:0xe6 Message DataByte3:0x81 Message DataByte4:0x1b Message DataByte5:0x8a Message DataByte6:0x71 Message DataByte7:0x39 Message DataByte8:0x78 Message DataByte9:0x7a Message DataByte10:0xa7 Message DataByte11:0x22 Message DataByte12:0xdb Message DataByte13:0x19 Message DataByte14:0x62 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xe4 Message DataByte2:0xe6 Message DataByte3:0x81 Message DataByte4:0x1b Message DataByte5:0x8a Message DataByte6:0x71 Message DataByte7:0x39 Message DataByte8:0x78 Message DataByte9:0x7a Message DataByte10:0xa7 Message DataByte11:0x22 Message DataByte12:0xdb Message DataByte13:0x19 Message DataByte14:0x62 Received Packet - 3 Sending Packet - 4 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x18 Message DataByte2:0x13 Message DataByte3:0x56 Message DataByte4:0x19 Message DataByte5:0x54 Message DataByte6:0x55 Message DataByte7:0xc6 Message DataByte8:0x40 Message DataByte9:0x45 Message DataByte10:0xa0 Message DataByte11:0x5a Message DataByte12:0x4e Message DataByte13:0x51 Message DataByte14:0xdb Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x18 Message DataByte2:0x13 Message DataByte3:0x56 Message DataByte4:0x19 Message DataByte5:0x54 Message DataByte6:0x55 Message DataByte7:0xc6 Message DataByte8:0x40 Message DataByte9:0x45 Message DataByte10:0xa0 Message DataByte11:0x5a Message DataByte12:0x4e Message DataByte13:0x51 Message DataByte14:0xdb Received Packet - 4 Sending Packet - 5 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xf0 Message DataByte2:0x79 Message DataByte3:0x8a Message DataByte4:0xaa Message DataByte5:0x8b Message DataByte6:0xe3 Message DataByte7:0x8f Message DataByte8:0x5c Message DataByte9:0xf6 Message DataByte10:0x1c Message DataByte11:0xa0 Message DataByte12:0x41 Message DataByte13:0x4c Message DataByte14:0xeb Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xf0 Message DataByte2:0x79 Message DataByte3:0x8a Message DataByte4:0xaa Message DataByte5:0x8b Message DataByte6:0xe3 Message DataByte7:0x8f Message DataByte8:0x5c Message DataByte9:0xf6 Message DataByte10:0x1c Message DataByte11:0xa0 Message DataByte12:0x41 Message DataByte13:0x4c Message DataByte14:0xeb Received Packet - 5 Transmitting Data on MCAN Port1 and Receiving on MCAN port 0 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x1f Message DataByte2:0x44 Message DataByte3:0x40 Message DataByte4:0x68 Message DataByte5:0x7a Message DataByte6:0x5d Message DataByte7:0xf5 Message DataByte8:0x3e Message DataByte9:0xa5 Message DataByte10:0xb7 Message DataByte11:0xe3 Message DataByte12:0x36 Message DataByte13:0x3a Message DataByte14:0x76 Received Packet - 1 Sending Packet - 2 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xb0 Message DataByte2:0xbd Message DataByte3:0x67 Message DataByte4:0x34 Message DataByte5:0x8c Message DataByte6:0x9 Message DataByte7:0x6 Message DataByte8:0xab Message DataByte9:0x4c Message DataByte10:0x2b Message DataByte11:0x13 Message DataByte12:0x4a Message DataByte13:0xe1 Message DataByte14:0x7d Received Packet - 2 Sending Packet - 3 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xde Message DataByte2:0x32 Message DataByte3:0xf2 Message DataByte4:0x26 Message DataByte5:0xb9 Message DataByte6:0x8e Message DataByte7:0x4e Message DataByte8:0x65 Message DataByte9:0x8d Message DataByte10:0xd5 Message DataByte11:0xda Message DataByte12:0xee Message DataByte13:0x73 Message DataByte14:0x7e Received Packet - 3 Sending Packet - 4 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xe7 Message DataByte2:0x13 Message DataByte3:0xa0 Message DataByte4:0x99 Message DataByte5:0xe Message DataByte6:0x63 Message DataByte7:0x95 Message DataByte8:0x3f Message DataByte9:0x27 Message DataByte10:0xcf Message DataByte11:0xb2 Message DataByte12:0xb0 Message DataByte13:0xc5 Message DataByte14:0xef Received Packet - 4 Sending Packet - 5 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xb1 Message DataByte2:0x1c Message DataByte3:0xe5 Message DataByte4:0xef Message DataByte5:0xaa Message DataByte6:0x40 Message DataByte7:0x77 Message DataByte8:0xac Message DataByte9:0x70 Message DataByte10:0x77 Message DataByte11:0x3 Message DataByte12:0xef Message DataByte13:0xc5 Message DataByte14:0x70 Received Packet - 5 MCAN diagnostic test completed.rHrH}rH(hUhjHubaubj1)rH}rH(hUhjHhjW5hj4h}rH(h]h]h]h]h]uhM hhh]rHj7)rH}rH(hUj:KhjHhjW5hhh}rH(h]h]h]h]h]uhKhhh]ubaubeubeubh)rH}rH(hUhjT5hjW5hhh}rH(h]h]h]h]rHUmcasp-audio-testrIah]rIhauhM hhh]rI(h)rI}rI(hXMcASP Audio TestrIhjHhjW5hhh}rI(h]h]h]h]h]uhM hhh]rIhXMcASP Audio TestrIr I}r I(hjIhjIubaubh)r I}r I(hXVerifies McASP audio interface on the board. Audio samples are received through codec input and sent back to codec audio output during the test. Codec control channel is verified through I2C interface and audio channel is verified through McASP interface.r IhjHhjW5hhh}rI(h]h]h]h]h]uhM hhh]rIhXVerifies McASP audio interface on the board. Audio samples are received through codec input and sent back to codec audio output during the test. Codec control channel is verified through I2C interface and audio channel is verified through McASP interface.rIrI}rI(hj Ihj Iubaubh)rI}rI(hUhKhjHhjW5hhh}rI(h]rIXtest accessoriesrIah]h]h]rIUid109rIah]uhM hhh]rI(h)rI}rI(hXTest AccessoriesrIhjIhjW5hhh}rI(h]h]h]h]h]uhM hhh]rIhXTest Accessoriesr Ir!I}r"I(hjIhjIubaubj[)r#I}r$I(hUhjIhNhj^h}r%I(h]h]h]h]h]uhNhhh]r&Ij)r'I}r(I(hUh}r)I(jX-h]h]h]h]h]uhj#Ih]r*I(j)r+I}r,I(hXAudio LINE IN cable.r-Ih}r.I(h]h]h]h]h]uhj'Ih]r/Ih)r0I}r1I(hj-Ihj+IhjW5hhh}r2I(h]h]h]h]h]uhM h]r3IhXAudio LINE IN cable.r4Ir5I}r6I(hj-Ihj0Iubaubahjubj)r7I}r8I(hX Headphone. h}r9I(h]h]h]h]h]uhj'Ih]r:Ih)r;I}rI(h]h]h]h]h]uhM h]r?IhX Headphone.r@IrAI}rBI(hj=Ihj;Iubaubahjubehjubaubeubh)rCI}rDI(hUhKhjHhjW5hhh}rEI(h]rFIX test setuprGIah]h]h]rHIUid110rIIah]uhM hhh]rJI(h)rKI}rLI(hX Test SetuprMIhjCIhjW5hhh}rNI(h]h]h]h]h]uhM hhh]rOIhX Test SetuprPIrQI}rRI(hjMIhjKIubaubh)rSI}rTI(hXConnect audio LINE IN cable to audio input port and headphone to audio output port on the HW platform under test. Check below table for the details of audio ports used by the test on different platforms.rUIhjCIhjW5hhh}rVI(h]h]h]h]h]uhM hhh]rWIhXConnect audio LINE IN cable to audio input port and headphone to audio output port on the HW platform under test. Check below table for the details of audio ports used by the test on different platforms.rXIrYI}rZI(hjUIhjSIubaubj)r[I}r\I(hUhjCIhjW5hj h}r]I(h]h]h]h]h]uhNhhh]r^Ij)r_I}r`I(hUh}raI(h]h]h]h]h]UcolsKuhj[Ih]rbI(j)rcI}rdI(hUh}reI(h]h]h]h]h]UcolwidthKuhj_Ih]hjubj)rfI}rgI(hUh}rhI(h]h]h]h]h]UcolwidthKuhj_Ih]hjubj)riI}rjI(hUh}rkI(h]h]h]h]h]UcolwidthKuhj_Ih]hjubj3)rlI}rmI(hUh}rnI(h]h]h]h]h]uhj_Ih]roIj8)rpI}rqI(hUh}rrI(h]h]h]h]h]uhjlIh]rsI(j=)rtI}ruI(hUh}rvI(h]h]h]h]h]uhjpIh]rwIh)rxI}ryI(hX HW PlatformrzIhjtIhjW5hhh}r{I(h]h]h]h]h]uhM h]r|IhX HW Platformr}Ir~I}rI(hjzIhjxIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjpIh]rIh)rI}rI(hX Audio IN PortrIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhX Audio IN PortrIrI}rI(hjIhjIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjpIh]rIh)rI}rI(hXAudio OUT PortrIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXAudio OUT PortrIrI}rI(hjIhjIubaubahjJubehjubahjubj)rI}rI(hUh}rI(h]h]h]h]h]uhj_Ih]rI(j8)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rI(j=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hXevmK2GrIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXevmK2GrIrI}rI(hjIhjIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hXJ32rIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXJ32rIrI}rI(hjIhjIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hXJ33rIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXJ33rIrI}rI(hjIhjIubaubahjJubehjubj8)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rI(j=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hX evmOMAPL137rIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhX evmOMAPL137rIrI}rI(hjIhjIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hXP3rIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXP3rIrI}rI(hjIhjIubaubahjJubj=)rI}rI(hUh}rI(h]h]h]h]h]uhjIh]rIh)rI}rI(hXP5rIhjIhjW5hhh}rI(h]h]h]h]h]uhM h]rIhXP5rIrI}rI(hjIhjIubaubahjJubehjubehjUubehjVubaubeubh)rI}rI(hUhKhjHhjW5hhh}rI(h]rIXtest executionrIah]h]h]rIUid111rIah]uhM hhh]rI(h)rI}rI(hXTest ExecutionrIhjIhjW5hhh}rI(h]h]h]h]h]uhM hhh]rIhXTest ExecutionrIrI}rI(hjIhjIubaubj[)rI}rI(hUhjIhNhj^h}rI(h]h]h]h]h]uhNhhh]rIj)rJ}rJ(hUh}rJ(jX-h]h]h]h]h]uhjIh]rJ(j)rJ}rJ(hXWStart playing audio at the audio source driving the audio input connected to input portrJh}rJ(h]h]h]h]h]uhjJh]rJh)r J}r J(hjJhjJhjW5hhh}r J(h]h]h]h]h]uhM h]r JhXWStart playing audio at the audio source driving the audio input connected to input portr JrJ}rJ(hjJhj Jubaubahjubj)rJ}rJ(hX.Select the menu option to run ‘mcasp_TEST’rJh}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hjJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhX.Select the menu option to run ‘mcasp_TEST’rJrJ}rJ(hjJhjJubaubahjubj)rJ}rJ(hXlVerify that the audio being played at input is looped back to audio headset/speaker connected to output portrJh}rJ(h]h]h]h]h]uhjJh]r Jh)r!J}r"J(hjJhjJhjW5hhh}r#J(h]h]h]h]h]uhM h]r$JhXlVerify that the audio being played at input is looped back to audio headset/speaker connected to output portr%Jr&J}r'J(hjJhj!Jubaubahjubj)r(J}r)J(hXIVerify that the audio plays without any noise on left and right channels.r*Jh}r+J(h]h]h]h]h]uhjJh]r,Jh)r-J}r.J(hj*Jhj(JhjW5hhh}r/J(h]h]h]h]h]uhM h]r0JhXIVerify that the audio plays without any noise on left and right channels.r1Jr2J}r3J(hj*Jhj-Jubaubahjubj)r4J}r5J(hX&Verify the test log on serial console h}r6J(h]h]h]h]h]uhjJh]r7Jh)r8J}r9J(hX%Verify the test log on serial consoler:Jhj4JhjW5hhh}r;J(h]h]h]h]h]uhM h]rJ}r?J(hj:Jhj8Jubaubahjubehjubaubeubh)r@J}rAJ(hUhKhjHhjW5hhh}rBJ(h]rCJXtest logrDJah]h]h]rEJUid112rFJah]uhM hhh]rGJ(h)rHJ}rIJ(hXTest LogrJJhj@JhjW5hhh}rKJ(h]h]h]h]h]uhM hhh]rLJhXTest LogrMJrNJ}rOJ(hjJJhjHJubaubh)rPJ}rQJ(hX.Sample log for McASP audio test is shown belowrRJhj@JhjW5hhh}rSJ(h]h]h]h]h]uhM hhh]rTJhX.Sample log for McASP audio test is shown belowrUJrVJ}rWJ(hjRJhjPJubaubj()rXJ}rYJ(hX ********************************************* * AUDIO Loopback Test * ********************************************* Playing Audio on left channel Playing Audio on right channel Playing Audio on both left and right Audio Loopback test completedhj@JhjW5hj+h}rZJ(hhh]h]h]h]h]uhMhhh]r[JhX ********************************************* * AUDIO Loopback Test * ********************************************* Playing Audio on left channel Playing Audio on right channel Playing Audio on both left and right Audio Loopback test completedr\Jr]J}r^J(hUhjXJubaubj1)r_J}r`J(hUhj@JhjW5hj4h}raJ(h]h]h]h]h]uhM hhh]rbJj7)rcJ}rdJ(hUj:Khj_JhjW5hhh}reJ(h]h]h]h]h]uhKhhh]ubaubeubeubh)rfJ}rgJ(hUhjT5hjW5hhh}rhJ(h]h]h]h]riJUmcasp-audiodc-testrjJah]rkJhtauhM hhh]rlJ(h)rmJ}rnJ(hXMcASP AudioDC TestroJhjfJhjW5hhh}rpJ(h]h]h]h]h]uhM hhh]rqJhXMcASP AudioDC TestrrJrsJ}rtJ(hjoJhjmJubaubh)ruJ}rvJ(hXeThis test verifies the audio interface on the multi-channel audio daughter card for the OMAPL137 EVM.rwJhjfJhjW5hhh}rxJ(h]h]h]h]h]uhM hhh]ryJhXeThis test verifies the audio interface on the multi-channel audio daughter card for the OMAPL137 EVM.rzJr{J}r|J(hjwJhjuJubaubh)r}J}r~J(hUhKhjfJhjW5hhh}rJ(h]rJXtest accessoriesrJah]h]h]rJUid113rJah]uhM hhh]rJ(h)rJ}rJ(hXTest AccessoriesrJhj}JhjW5hhh}rJ(h]h]h]h]h]uhM hhh]rJhXTest AccessoriesrJrJ}rJ(hjJhjJubaubj[)rJ}rJ(hUhj}JhNhj^h}rJ(h]h]h]h]h]uhNhhh]rJj)rJ}rJ(hUh}rJ(jX-h]h]h]h]h]uhjJh]rJ(j)rJ}rJ(hX4 Audio LINE IN cablesrJh}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hjJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhX4 Audio LINE IN cablesrJrJ}rJ(hjJhjJubaubahjubj)rJ}rJ(hX 4 Headphones h}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hX 4 HeadphonesrJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhX 4 HeadphonesrJrJ}rJ(hjJhjJubaubahjubehjubaubeubh)rJ}rJ(hUhKhjfJhjW5hhh}rJ(h]rJX test setuprJah]h]h]rJUid114rJah]uhM hhh]rJ(h)rJ}rJ(hX Test SetuprJhjJhjW5hhh}rJ(h]h]h]h]h]uhM hhh]rJhX Test SetuprJrJ}rJ(hjJhjJubaubj[)rJ}rJ(hUhjJhNhj^h}rJ(h]h]h]h]h]uhNhhh]rJj)rJ}rJ(hUh}rJ(jX-h]h]h]h]h]uhjJh]rJ(j)rJ}rJ(hXZConnect LINE IN cables to all the audio input ports (J5 to J8) on the audio daughter card.rJh}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hjJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhXZConnect LINE IN cables to all the audio input ports (J5 to J8) on the audio daughter card.rJrJ}rJ(hjJhjJubaubahjubj)rJ}rJ(hXWConnect headsets to all the audio output ports (J9 to J12) on the audio daughter card. h}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hXVConnect headsets to all the audio output ports (J9 to J12) on the audio daughter card.rJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhXVConnect headsets to all the audio output ports (J9 to J12) on the audio daughter card.rJrJ}rJ(hjJhjJubaubahjubehjubaubeubh)rJ}rJ(hUhKhjfJhjW5hhh}rJ(h]rJXtest executionrJah]h]h]rJUid115rJah]uhM hhh]rJ(h)rJ}rJ(hXTest ExecutionrJhjJhjW5hhh}rJ(h]h]h]h]h]uhM hhh]rJhXTest ExecutionrJrJ}rJ(hjJhjJubaubj[)rJ}rJ(hUhjJhNhj^h}rJ(h]h]h]h]h]uhNhhh]rJj)rJ}rJ(hUh}rJ(jX-h]h]h]h]h]uhjJh]rJ(j)rJ}rJ(hXXStart playing audio at the audio source driving the audio input connected to input portsrJh}rJ(h]h]h]h]h]uhjJh]rJh)rJ}rJ(hjJhjJhjW5hhh}rJ(h]h]h]h]h]uhM h]rJhXXStart playing audio at the audio source driving the audio input connected to input portsrJrJ}rK(hjJhjJubaubahjubj)rK}rK(hX1Load and execute the McASP AudioDC test using CCSrKh}rK(h]h]h]h]h]uhjJh]rKh)rK}rK(hjKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]r KhX1Load and execute the McASP AudioDC test using CCSr Kr K}r K(hjKhjKubaubahjubj)r K}rK(hX6Listen to the Audio played back through the HeadphonesrKh}rK(h]h]h]h]h]uhjJh]rKh)rK}rK(hjKhj KhjW5hhh}rK(h]h]h]h]h]uhM h]rKhX6Listen to the Audio played back through the HeadphonesrKrK}rK(hjKhjKubaubahjubj)rK}rK(hXIVerify that the audio plays without any noise on left and right channels.rKh}rK(h]h]h]h]h]uhjJh]rKh)rK}rK(hjKhjKhjW5hhh}r K(h]h]h]h]h]uhM h]r!KhXIVerify that the audio plays without any noise on left and right channels.r"Kr#K}r$K(hjKhjKubaubahjubj)r%K}r&K(hX&Verify the test log on serial console h}r'K(h]h]h]h]h]uhjJh]r(Kh)r)K}r*K(hX%Verify the test log on serial consoler+Khj%KhjW5hhh}r,K(h]h]h]h]h]uhM h]r-KhX%Verify the test log on serial consoler.Kr/K}r0K(hj+Khj)Kubaubahjubehjubaubeubh)r1K}r2K(hUhKhjfJhjW5hhh}r3K(h]r4KXtest logr5Kah]h]h]r6KUid116r7Kah]uhM hhh]r8K(h)r9K}r:K(hXTest Logr;Khj1KhjW5hhh}rKr?K}r@K(hj;Khj9Kubaubh)rAK}rBK(hX0Sample log for McASP AudioDC test is shown belowrCKhj1KhjW5hhh}rDK(h]h]h]h]h]uhM hhh]rEKhX0Sample log for McASP AudioDC test is shown belowrFKrGK}rHK(hjCKhjAKubaubj()rIK}rJK(hX ******************************************* * Audio DC Loopback Test * ******************************************* Starting Audio Loopback... Check the Headset/Speaker Audio Output Audio DC Loopback Test Completed! Audio DC Loopback Test Passed!!hj1KhjW5hj+h}rKK(hhh]h]h]h]h]uhMhhh]rLKhX ******************************************* * Audio DC Loopback Test * ******************************************* Starting Audio Loopback... Check the Headset/Speaker Audio Output Audio DC Loopback Test Completed! Audio DC Loopback Test Passed!!rMKrNK}rOK(hUhjIKubaubj1)rPK}rQK(hUhj1KhjW5hj4h}rRK(h]h]h]h]h]uhM hhh]rSKj7)rTK}rUK(hUj:KhjPKhjW5hhh}rVK(h]h]h]h]h]uhKhhh]ubaubeubeubh)rWK}rXK(hUhjT5hjW5hhh}rYK(h]h]h]h]rZKU mcspi-testr[Kah]r\KhiauhM hhh]r]K(h)r^K}r_K(hX McSPI Testr`KhjWKhjW5hhh}raK(h]h]h]h]h]uhM hhh]rbKhX McSPI TestrcKrdK}reK(hj`Khj^Kubaubh)rfK}rgK(hXThis test verifies reading the industrial input data through McSPI interface. Need to provide input to industrial input channels while running the test.rhKhjWKhjW5hhh}riK(h]h]h]h]h]uhM hhh]rjKhXThis test verifies reading the industrial input data through McSPI interface. Need to provide input to industrial input channels while running the test.rkKrlK}rmK(hjhKhjfKubaubh)rnK}roK(hXExcept for iceAMIC110, this test expects pins to be connected to the Industrial I/O header. The Industrial I/O header, has two columns in parallel, one of which is the McSPI input and the other being VDD. Thus, connecting any row with a jumper will yield a '1' read on that McSPI input. By connecting the first, second, third, and forth row with jumpers would yield 0x1, 0x2, 0x4, and 0x8 being read respectively.rpKhjWKhjW5hhh}rqK(h]h]h]h]h]uhM hhh]rrKhXExcept for iceAMIC110, this test expects pins to be connected to the Industrial I/O header. The Industrial I/O header, has two columns in parallel, one of which is the McSPI input and the other being VDD. Thus, connecting any row with a jumper will yield a '1' read on that McSPI input. By connecting the first, second, third, and forth row with jumpers would yield 0x1, 0x2, 0x4, and 0x8 being read respectively.rsKrtK}ruK(hjpKhjnKubaubh)rvK}rwK(hUhKhjWKhjW5hhh}rxK(h]ryKXtest accessoriesrzKah]h]h]r{KUid117r|Kah]uhM hhh]r}K(h)r~K}rK(hXTest AccessoriesrKhjvKhjW5hhh}rK(h]h]h]h]h]uhM hhh]rKhXTest AccessoriesrKrK}rK(hjKhj~Kubaubh)rK}rK(hX-Wires to short pins on industrial I/O header.rKhjvKhjW5hhh}rK(h]h]h]h]h]uhM hhh]rKhX-Wires to short pins on industrial I/O header.rKrK}rK(hjKhjKubaubeubh)rK}rK(hUhKhjWKhjW5hhh}rK(h]rKX test setuprKah]h]h]rKUid118rKah]uhM hhh]rK(h)rK}rK(hX Test SetuprKhjKhjW5hhh}rK(h]h]h]h]h]uhM hhh]rKhX Test SetuprKrK}rK(hjKhjKubaubh)rK}rK(hXShort the rows on industrial I/O header. Check below table for the details of industrial IO header used by the test on different platforms.rKhjKhjW5hhh}rK(h]h]h]h]h]uhM hhh]rKhXShort the rows on industrial I/O header. Check below table for the details of industrial IO header used by the test on different platforms.rKrK}rK(hjKhjKubaubj)rK}rK(hUhjKhjW5hj h}rK(h]h]h]h]h]uhNhhh]rKj)rK}rK(hUh}rK(h]h]h]h]h]UcolsKuhjKh]rK(j)rK}rK(hUh}rK(h]h]h]h]h]UcolwidthKuhjKh]hjubj)rK}rK(hUh}rK(h]h]h]h]h]UcolwidthKuhjKh]hjubj3)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKj8)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rK(j=)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKh)rK}rK(hX HW PlatformrKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]rKhX HW PlatformrKrK}rK(hjKhjKubaubahjJubj=)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKh)rK}rK(hXIndustrial I/O HeaderrKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]rKhXIndustrial I/O HeaderrKrK}rK(hjKhjKubaubahjJubehjubahjubj)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rK(j8)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rK(j=)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKh)rK}rK(hX idkAM571xrKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]rKhX idkAM571xrKrK}rK(hjKhjKubaubahjJubj=)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKh)rK}rK(hXJ37rKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]rKhXJ37rKrK}rK(hjKhjKubaubahjJubehjubj8)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rK(j=)rK}rK(hUh}rK(h]h]h]h]h]uhjKh]rKh)rK}rK(hX idkAM572xrKhjKhjW5hhh}rK(h]h]h]h]h]uhM h]rLhX idkAM572xrLrL}rL(hjKhjKubaubahjJubj=)rL}rL(hUh}rL(h]h]h]h]h]uhjKh]rLh)rL}r L(hXJ37r LhjLhjW5hhh}r L(h]h]h]h]h]uhM h]r LhXJ37r LrL}rL(hj LhjLubaubahjJubehjubj8)rL}rL(hUh}rL(h]h]h]h]h]uhjKh]rL(j=)rL}rL(hUh}rL(h]h]h]h]h]uhjLh]rLh)rL}rL(hX idkAM574xrLhjLhjW5hhh}rL(h]h]h]h]h]uhM h]rLhX idkAM574xrLrL}rL(hjLhjLubaubahjJubj=)r L}r!L(hUh}r"L(h]h]h]h]h]uhjLh]r#Lh)r$L}r%L(hXJ37r&Lhj LhjW5hhh}r'L(h]h]h]h]h]uhM h]r(LhXJ37r)Lr*L}r+L(hj&Lhj$LubaubahjJubehjubj8)r,L}r-L(hUh}r.L(h]h]h]h]h]uhjKh]r/L(j=)r0L}r1L(hUh}r2L(h]h]h]h]h]uhj,Lh]r3Lh)r4L}r5L(hX idkAM437xr6Lhj0LhjW5hhh}r7L(h]h]h]h]h]uhM h]r8LhX idkAM437xr9Lr:L}r;L(hj6Lhj4LubaubahjJubj=)rL(h]h]h]h]h]uhj,Lh]r?Lh)r@L}rAL(hXJ1rBLhj hhh]rL(h)rL}rL(hXTest AccessoriesrLhjLhjW5hhh}rL(h]h]h]h]h]uhM> hhh]rLhXTest AccessoriesrLrL}rL(hjLhjLubaubh)rL}rL(hX=No additional accessories are required for running this test.rLhjLhjW5hhh}rL(h]h]h]h]h]uhM? hhh]rLhX=No additional accessories are required for running this test.rLrL}rL(hjLhjLubaubeubh)rL}rL(hUhKhjLhjW5hhh}rL(h]rLX test setuprLah]h]h]rLUid122rLah]uhMB hhh]rL(h)rL}rL(hX Test SetuprLhjLhjW5hhh}rL(h]h]h]h]h]uhMB hhh]rLhX Test SetuprLrL}rL(hjLhjLubaubh)rL}rL(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rLhjLhjW5hhh}rL(h]h]h]h]h]uhMC hhh]rLhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rLrL}rL(hjLhjLubaubeubh)rL}rL(hUhKhjLhjW5hhh}rL(h]rLXtest executionrLah]h]h]rLUid123rLah]uhMF hhh]rL(h)rL}rL(hXTest ExecutionrLhjLhjW5hhh}rL(h]h]h]h]h]uhMF hhh]rLhXTest ExecutionrLrL}rM(hjLhjLubaubj[)rM}rM(hUhjLhNhj^h}rM(h]h]h]h]h]uhNhhh]rMj)rM}rM(hUh}rM(jX-h]h]h]h]h]uhjMh]rM(j)r M}r M(hX,Select the menu option to run ‘mem_TEST’r Mh}r M(h]h]h]h]h]uhjMh]r Mh)rM}rM(hj Mhj MhjW5hhh}rM(h]h]h]h]h]uhMG h]rMhX,Select the menu option to run ‘mem_TEST’rMrM}rM(hj MhjMubaubahjubj)rM}rM(hX&Verify the test log on serial console h}rM(h]h]h]h]h]uhjMh]rMh)rM}rM(hX%Verify the test log on serial consolerMhjMhjW5hhh}rM(h]h]h]h]h]uhMH h]rMhX%Verify the test log on serial consolerMrM}r M(hjMhjMubaubahjubehjubaubeubh)r!M}r"M(hUhKhjLhjW5hhh}r#M(h]r$MXtest logr%Mah]h]h]r&MUid124r'Mah]uhMK hhh]r(M(h)r)M}r*M(hXTest Logr+Mhj!MhjW5hhh}r,M(h]h]h]h]h]uhMK hhh]r-MhXTest Logr.Mr/M}r0M(hj+Mhj)Mubaubh)r1M}r2M(hX"Sample DDR test log is shown belowr3Mhj!MhjW5hhh}r4M(h]h]h]h]h]uhMM hhh]r5MhX"Sample DDR test log is shown belowr6Mr7M}r8M(hj3Mhj1Mubaubj()r9M}r:M(hXE********************************************* * DDR Memory Test * ********************************************* Testing writing and reading memory board_external_memory_test: Start address (0x80000000), end address (0xffffffff) First test started Writing to test area... Write up to 0x80000000 done Write up to 0x90000000 done Write up to 0xa0000000 done Write up to 0xb0000000 done Write up to 0xc0000000 done Write up to 0xd0000000 done Write up to 0xe0000000 done Write up to 0xf0000000 done Write finished! Checking values... Read up to 0x80000000 okay Read up to 0x90000000 okay Read up to 0xa0000000 okay Read up to 0xb0000000 okay Read up to 0xc0000000 okay Read up to 0xd0000000 okay Read up to 0xe0000000 okay Read up to 0xf0000000 okay Second test started Writing complementary values to test area... Write up to 0x80000000 done Write up to 0x90000000 done Write up to 0xa0000000 done Write up to 0xb0000000 done Write up to 0xc0000000 done Write up to 0xd0000000 done Write up to 0xe0000000 done Write up to 0xf0000000 done Write finished! Checking values... Read up to 0x80000000 okay Read up to 0x90000000 okay Read up to 0xa0000000 okay Read up to 0xb0000000 okay Read up to 0xc0000000 okay Read up to 0xd0000000 okay Read up to 0xe0000000 okay Read up to 0xf0000000 okay Board memory test passed!hj!MhjW5hj+h}r;M(hhh]h]h]h]h]uhMGhhh]rM}r?M(hUhj9Mubaubj1)r@M}rAM(hUhj!MhjW5hj4h}rBM(h]h]h]h]h]uhM hhh]rCMj7)rDM}rEM(hUj:Khj@MhjW5hhh}rFM(h]h]h]h]h]uhKhhh]ubaubeubeubh)rGM}rHM(hUhjT5hjW5hhh}rIM(h]h]h]h]rJMU mmcsd-testrKMah]rLMhauhM hhh]rMM(h)rNM}rOM(hX MMCSD TestrPMhjGMhjW5hhh}rQM(h]h]h]h]h]uhM hhh]rRMhX MMCSD TestrSMrTM}rUM(hjPMhjNMubaubh)rVM}rWM(hXrThis test verifies SD card interface on the platform under test. 16KB of data is written and read during the test.rXMhjGMhjW5hhh}rYM(h]h]h]h]h]uhM hhh]rZMhXrThis test verifies SD card interface on the platform under test. 16KB of data is written and read during the test.r[Mr\M}r]M(hjXMhjVMubaubh)r^M}r_M(hUhKhjGMhjW5hhh}r`M(h]raMXtest accessoriesrbMah]h]h]rcMUid125rdMah]uhM hhh]reM(h)rfM}rgM(hXTest AccessoriesrhMhj^MhjW5hhh}riM(h]h]h]h]h]uhM hhh]rjMhXTest AccessoriesrkMrlM}rmM(hjhMhjfMubaubh)rnM}roM(hXSD card.rpMhj^MhjW5hhh}rqM(h]h]h]h]h]uhM hhh]rrMhXSD card.rsMrtM}ruM(hjpMhjnMubaubeubh)rvM}rwM(hUhKhjGMhjW5hhh}rxM(h]ryMX test setuprzMah]h]h]r{MUid126r|Mah]uhM hhh]r}M(h)r~M}rM(hX Test SetuprMhjvMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhX Test SetuprMrM}rM(hjMhj~Mubaubh)rM}rM(hX0Insert the SD card into MMCSD slot of the board.rMhjvMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhX0Insert the SD card into MMCSD slot of the board.rMrM}rM(hjMhjMubaubeubh)rM}rM(hUhKhjGMhjW5hhh}rM(h]rMXtest executionrMah]h]h]rMUid127rMah]uhM hhh]rM(h)rM}rM(hXTest ExecutionrMhjMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhXTest ExecutionrMrM}rM(hjMhjMubaubj[)rM}rM(hUhjMhNhj^h}rM(h]h]h]h]h]uhNhhh]rMj)rM}rM(hUh}rM(jX-h]h]h]h]h]uhjMh]rM(j)rM}rM(hX.Select the menu option to run ‘mmcsd_TEST’rMh}rM(h]h]h]h]h]uhjMh]rMh)rM}rM(hjMhjMhjW5hhh}rM(h]h]h]h]h]uhM h]rMhX.Select the menu option to run ‘mmcsd_TEST’rMrM}rM(hjMhjMubaubahjubj)rM}rM(hX&Verify the test log on serial console h}rM(h]h]h]h]h]uhjMh]rMh)rM}rM(hX%Verify the test log on serial consolerMhjMhjW5hhh}rM(h]h]h]h]h]uhM h]rMhX%Verify the test log on serial consolerMrM}rM(hjMhjMubaubahjubehjubaubeubh)rM}rM(hUhKhjGMhjW5hhh}rM(h]rMXtest logrMah]h]h]rMUid128rMah]uhM hhh]rM(h)rM}rM(hXTest LogrMhjMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhXTest LogrMrM}rM(hjMhjMubaubh)rM}rM(hX*Sample log for SD card test is shown belowrMhjMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhX*Sample log for SD card test is shown belowrMrM}rM(hjMhjMubaubj()rM}rM(hX********************************************* * MMCSD Test * ********************************************* PASS: Read/Write Success for this patternhjMhjW5hj+h}rM(hhh]h]h]h]h]uhMhhh]rMhX********************************************* * MMCSD Test * ********************************************* PASS: Read/Write Success for this patternrMrM}rM(hUhjMubaubj1)rM}rM(hUhjMhjW5hj4h}rM(h]h]h]h]h]uhM hhh]rMj7)rM}rM(hUj:KhjMhjW5hhh}rM(h]h]h]h]h]uhKhhh]ubaubeubeubh)rM}rM(hUhjT5hjW5hhh}rM(h]h]h]h]rMU nand-testrMah]rMhauhM hhh]rM(h)rM}rM(hX Nand TestrMhjMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhX Nand TestrMrM}rM(hjMhjMubaubh)rM}rM(hXThis test verifies NAND flash memory on the HW platform under test. Reading the NAND flash information and NAND page write/read with different test patterns is done during the test.rMhjMhjW5hhh}rM(h]h]h]h]h]uhM hhh]rMhXThis test verifies NAND flash memory on the HW platform under test. Reading the NAND flash information and NAND page write/read with different test patterns is done during the test.rMrM}rM(hjMhjMubaubh)rM}rM(hUhKhjMhjW5hhh}rM(h]rMXtest accessoriesrMah]h]h]rNUid129rNah]uhM hhh]rN(h)rN}rN(hXTest AccessoriesrNhjMhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXTest AccessoriesrNr N}r N(hjNhjNubaubh)r N}r N(hX=No additional accessories are required for running this test.r NhjMhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhX=No additional accessories are required for running this test.rNrN}rN(hj Nhj Nubaubeubh)rN}rN(hUhKhjMhjW5hhh}rN(h]rNX test setuprNah]h]h]rNUid130rNah]uhM hhh]rN(h)rN}rN(hX Test SetuprNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhX Test Setupr Nr!N}r"N(hjNhjNubaubh)r#N}r$N(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r%NhjNhjW5hhh}r&N(h]h]h]h]h]uhM hhh]r'NhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r(Nr)N}r*N(hj%Nhj#Nubaubeubh)r+N}r,N(hUhKhjMhjW5hhh}r-N(h]r.NXtest executionr/Nah]h]h]r0NUid131r1Nah]uhM hhh]r2N(h)r3N}r4N(hXTest Executionr5Nhj+NhjW5hhh}r6N(h]h]h]h]h]uhM hhh]r7NhXTest Executionr8Nr9N}r:N(hj5Nhj3Nubaubj[)r;N}rNj)r?N}r@N(hUh}rAN(jX-h]h]h]h]h]uhj;Nh]rBN(j)rCN}rDN(hX-Select the menu option to run ‘nand_TEST’rENh}rFN(h]h]h]h]h]uhj?Nh]rGNh)rHN}rIN(hjENhjCNhjW5hhh}rJN(h]h]h]h]h]uhM h]rKNhX-Select the menu option to run ‘nand_TEST’rLNrMN}rNN(hjENhjHNubaubahjubj)rON}rPN(hX&Verify the test log on serial console h}rQN(h]h]h]h]h]uhj?Nh]rRNh)rSN}rTN(hX%Verify the test log on serial consolerUNhjONhjW5hhh}rVN(h]h]h]h]h]uhM h]rWNhX%Verify the test log on serial consolerXNrYN}rZN(hjUNhjSNubaubahjubehjubaubeubh)r[N}r\N(hUhKhjMhjW5hhh}r]N(h]r^NXtest logr_Nah]h]h]r`NUid132raNah]uhM hhh]rbN(h)rcN}rdN(hXTest LogreNhj[NhjW5hhh}rfN(h]h]h]h]h]uhM hhh]rgNhXTest LogrhNriN}rjN(hjeNhjcNubaubh)rkN}rlN(hX'Sample log for NAND test is shown belowrmNhj[NhjW5hhh}rnN(h]h]h]h]h]uhM hhh]roNhX'Sample log for NAND test is shown belowrpNrqN}rrN(hjmNhjkNubaubj()rsN}rtN(hX*********************** NAND Test *********************** Running NAND Flash Chip Detect Test Device Id - 0x0 Manufacturer Id - 0x0 Device Width - 16 Block Count - 2048 Page Count - 64 Page Size - 2048 Spare Area Size - 64 Column Address - 1024 NAND Flash Chip Detect Test Passed Running NAND Flash Block Erase Test NAND Flash Test: Erase Data Verification Passed NAND Flash Block Erase Test Passed Running NAND Flash Memory Access Test - Test Pattern 1 NAND Flash Test: Data Verification Passed Running NAND Flash Memory Access Test - Test Pattern 2 NAND Flash Test: Data Verification Passed NAND Flash Memory Access Test Passed NAND Flash Test Passed! NAND Flash Tests Completed!! -----------------X-----------------hj[NhjW5hj+h}ruN(hhh]h]h]h]h]uhMhhh]rvNhX*********************** NAND Test *********************** Running NAND Flash Chip Detect Test Device Id - 0x0 Manufacturer Id - 0x0 Device Width - 16 Block Count - 2048 Page Count - 64 Page Size - 2048 Spare Area Size - 64 Column Address - 1024 NAND Flash Chip Detect Test Passed Running NAND Flash Block Erase Test NAND Flash Test: Erase Data Verification Passed NAND Flash Block Erase Test Passed Running NAND Flash Memory Access Test - Test Pattern 1 NAND Flash Test: Data Verification Passed Running NAND Flash Memory Access Test - Test Pattern 2 NAND Flash Test: Data Verification Passed NAND Flash Memory Access Test Passed NAND Flash Test Passed! NAND Flash Tests Completed!! -----------------X-----------------rwNrxN}ryN(hUhjsNubaubj1)rzN}r{N(hUhj[NhjW5hj4h}r|N(h]h]h]h]h]uhM hhh]r}Nj7)r~N}rN(hUj:KhjzNhjW5hhh}rN(h]h]h]h]h]uhKhhh]ubaubeubeubh)rN}rN(hUhjT5hjW5hhh}rN(h]h]h]h]rNUnor-flash-testrNah]rNh5auhM hhh]rN(h)rN}rN(hXNOR Flash TestrNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXNOR Flash TestrNrN}rN(hjNhjNubaubh)rN}rN(hXThis test verifies the NOR flash memory connected to SPI interface. One page of flash is written and read back for data verification during the test.rNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXThis test verifies the NOR flash memory connected to SPI interface. One page of flash is written and read back for data verification during the test.rNrN}rN(hjNhjNubaubh)rN}rN(hUhKhjNhjW5hhh}rN(h]rNXtest accessoriesrNah]h]h]rNUid133rNah]uhM hhh]rN(h)rN}rN(hXTest AccessoriesrNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXTest AccessoriesrNrN}rN(hjNhjNubaubh)rN}rN(hX=No additional accessories are required for running this test.rNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhX=No additional accessories are required for running this test.rNrN}rN(hjNhjNubaubeubh)rN}rN(hUhKhjNhjW5hhh}rN(h]rNX test setuprNah]h]h]rNUid134rNah]uhM hhh]rN(h)rN}rN(hX Test SetuprNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhX Test SetuprNrN}rN(hjNhjNubaubh)rN}rN(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rNrN}rN(hjNhjNubaubeubh)rN}rN(hUhKhjNhjW5hhh}rN(h]rNXtest executionrNah]h]h]rNUid135rNah]uhM hhh]rN(h)rN}rN(hXTest ExecutionrNhjNhjW5hhh}rN(h]h]h]h]h]uhM hhh]rNhXTest ExecutionrNrN}rN(hjNhjNubaubj[)rN}rN(hUhjNhNhj^h}rN(h]h]h]h]h]uhNhhh]rNj)rN}rN(hUh}rN(jX-h]h]h]h]h]uhjNh]rN(j)rN}rN(hX1Select the menu option to run ‘norflash_TEST’rNh}rN(h]h]h]h]h]uhjNh]rNh)rN}rN(hjNhjNhjW5hhh}rN(h]h]h]h]h]uhM h]rNhX1Select the menu option to run ‘norflash_TEST’rNrN}rN(hjNhjNubaubahjubj)rN}rN(hX&Verify the test log on serial console h}rN(h]h]h]h]h]uhjNh]rNh)rN}rN(hX%Verify the test log on serial consolerNhjNhjW5hhh}rN(h]h]h]h]h]uhM h]rNhX%Verify the test log on serial consolerNrN}rN(hjNhjNubaubahjubehjubaubeubh)rN}rN(hUhKhjNhjW5hhh}rN(h]rNXtest logrNah]h]h]rNUid136rNah]uhM hhh]rN(h)rO}rO(hXTest LogrOhjNhjW5hhh}rO(h]h]h]h]h]uhM hhh]rOhXTest LogrOrO}rO(hjOhjOubaubh)rO}r O(hX,Sample log for NOR flash test is shown belowr OhjNhjW5hhh}r O(h]h]h]h]h]uhM hhh]r OhX,Sample log for NOR flash test is shown belowr OrO}rO(hj OhjOubaubj()rO}rO(hX~********************************************* * SPI FLASH Test * ********************************************* Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test PassedhjNhjW5hj+h}rO(hhh]h]h]h]h]uhMhhh]rOhX~********************************************* * SPI FLASH Test * ********************************************* Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test PassedrOrO}rO(hUhjOubaubj1)rO}rO(hUhjNhjW5hj4h}rO(h]h]h]h]h]uhM hhh]rOj7)rO}rO(hUj:KhjOhjW5hhh}rO(h]h]h]h]h]uhKhhh]ubaubeubeubh)rO}rO(hUhjT5hjW5hhh}r O(h]h]h]h]r!OUoled-display-testr"Oah]r#Oh*auhM hhh]r$O(h)r%O}r&O(hXOLED Display Testr'OhjOhjW5hhh}r(O(h]h]h]h]h]uhM hhh]r)OhXOLED Display Testr*Or+O}r,O(hj'Ohj%Oubaubh)r-O}r.O(hXBThis test verifies the OLED display on the HW platform under test.r/OhjOhjW5hhh}r0O(h]h]h]h]h]uhM hhh]r1OhXBThis test verifies the OLED display on the HW platform under test.r2Or3O}r4O(hj/Ohj-Oubaubh)r5O}r6O(hUhKhjOhjW5hhh}r7O(h]r8OXtest accessoriesr9Oah]h]h]r:OUid137r;Oah]uhM hhh]rO(hXTest Accessoriesr?Ohj5OhjW5hhh}r@O(h]h]h]h]h]uhM hhh]rAOhXTest AccessoriesrBOrCO}rDO(hj?Ohj=Oubaubh)rEO}rFO(hX=No additional accessories are required for running this test.rGOhj5OhjW5hhh}rHO(h]h]h]h]h]uhM hhh]rIOhX=No additional accessories are required for running this test.rJOrKO}rLO(hjGOhjEOubaubeubh)rMO}rNO(hUhKhjOhjW5hhh}rOO(h]rPOX test setuprQOah]h]h]rROUid138rSOah]uhM hhh]rTO(h)rUO}rVO(hX Test SetuprWOhjMOhjW5hhh}rXO(h]h]h]h]h]uhM hhh]rYOhX Test SetuprZOr[O}r\O(hjWOhjUOubaubh)r]O}r^O(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r_OhjMOhjW5hhh}r`O(h]h]h]h]h]uhM hhh]raOhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rbOrcO}rdO(hj_Ohj]Oubaubeubh)reO}rfO(hUhKhjOhjW5hhh}rgO(h]rhOXtest executionriOah]h]h]rjOUid139rkOah]uhM hhh]rlO(h)rmO}rnO(hXTest ExecutionroOhjeOhjW5hhh}rpO(h]h]h]h]h]uhM hhh]rqOhXTest ExecutionrrOrsO}rtO(hjoOhjmOubaubj[)ruO}rvO(hUhjeOhNhj^h}rwO(h]h]h]h]h]uhNhhh]rxOj)ryO}rzO(hUh}r{O(jX-h]h]h]h]h]uhjuOh]r|O(j)r}O}r~O(hX-Select the menu option to run ‘oled_TEST’rOh}rO(h]h]h]h]h]uhjyOh]rOh)rO}rO(hjOhj}OhjW5hhh}rO(h]h]h]h]h]uhM h]rOhX-Select the menu option to run ‘oled_TEST’rOrO}rO(hjOhjOubaubahjubj)rO}rO(hX&Verify the test log on serial console h}rO(h]h]h]h]h]uhjyOh]rOh)rO}rO(hX%Verify the test log on serial consolerOhjOhjW5hhh}rO(h]h]h]h]h]uhM h]rOhX%Verify the test log on serial consolerOrO}rO(hjOhjOubaubahjubehjubaubeubh)rO}rO(hUhKhjOhjW5hhh}rO(h]rOXtest logrOah]h]h]rOUid140rOah]uhM hhh]rO(h)rO}rO(hXTest LogrOhjOhjW5hhh}rO(h]h]h]h]h]uhM hhh]rOhXTest LogrOrO}rO(hjOhjOubaubh)rO}rO(hX/Sample log for OLED Display test is shown belowrOhjOhjW5hhh}rO(h]h]h]h]h]uhM hhh]rOhX/Sample log for OLED Display test is shown belowrOrO}rO(hjOhjOubaubj()rO}rO(hX6******************************** OLED DISPLAY Test ******************************** Running Oled display Detect Test Oled display Detection Successful! Oled display Detect Test Passed! OLED LCD Display test PASS Oled display Test Passed! Oled Tests Completed!! -----------------X-----------------hjOhjW5hj+h}rO(hhh]h]h]h]h]uhMhhh]rOhX6******************************** OLED DISPLAY Test ******************************** Running Oled display Detect Test Oled display Detection Successful! Oled display Detect Test Passed! OLED LCD Display test PASS Oled display Test Passed! Oled Tests Completed!! -----------------X-----------------rOrO}rO(hUhjOubaubj1)rO}rO(hUhjOhjW5hj4h}rO(h]h]h]h]h]uhM5 hhh]rOj7)rO}rO(hUj:KhjOhjW5hhh}rO(h]h]h]h]h]uhKhhh]ubaubeubeubh)rO}rO(hUhjT5hjW5hhh}rO(h]h]h]h]rOUospi-flash-testrOah]rOh%auhM8 hhh]rO(h)rO}rO(hXOSPI Flash TestrOhjOhjW5hhh}rO(h]h]h]h]h]uhM8 hhh]rOhXOSPI Flash TestrOrO}rO(hjOhjOubaubh)rO}rO(hXThis test verifies the flash memory connected to OSPI interface. One page of flash is written and read back for data verification during the test.rOhjOhjW5hhh}rO(h]h]h]h]h]uhM9 hhh]rOhXThis test verifies the flash memory connected to OSPI interface. One page of flash is written and read back for data verification during the test.rOrO}rO(hjOhjOubaubh)rO}rO(hUhKhjOhjW5hhh}rO(h]rOXtest accessoriesrOah]h]h]rOUid141rOah]uhM> hhh]rO(h)rO}rO(hXTest AccessoriesrOhjOhjW5hhh}rO(h]h]h]h]h]uhM> hhh]rOhXTest AccessoriesrOrO}rO(hjOhjOubaubh)rO}rO(hX=No additional accessories are required for running this test.rOhjOhjW5hhh}rO(h]h]h]h]h]uhM? hhh]rOhX=No additional accessories are required for running this test.rOrO}rO(hjOhjOubaubeubh)rO}rO(hUhKhjOhjW5hhh}rO(h]rOX test setuprOah]h]h]rOUid142rOah]uhMB hhh]rO(h)rO}rO(hX Test SetuprOhjOhjW5hhh}rO(h]h]h]h]h]uhMB hhh]rOhX Test SetuprOrO}rO(hjOhjOubaubh)rO}rO(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rOhjOhjW5hhh}rO(h]h]h]h]h]uhMC hhh]rOhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rOrP}rP(hjOhjOubaubeubh)rP}rP(hUhKhjOhjW5hhh}rP(h]rPXtest executionrPah]h]h]rPUid143rPah]uhMF hhh]r P(h)r P}r P(hXTest Executionr PhjPhjW5hhh}r P(h]h]h]h]h]uhMF hhh]rPhXTest ExecutionrPrP}rP(hj Phj Pubaubj[)rP}rP(hUhjPhNhj^h}rP(h]h]h]h]h]uhNhhh]rPj)rP}rP(hUh}rP(jX-h]h]h]h]h]uhjPh]rP(j)rP}rP(hX-Select the menu option to run ‘ospi_TEST’rPh}rP(h]h]h]h]h]uhjPh]rPh)rP}r P(hjPhjPhjW5hhh}r!P(h]h]h]h]h]uhMG h]r"PhX-Select the menu option to run ‘ospi_TEST’r#Pr$P}r%P(hjPhjPubaubahjubj)r&P}r'P(hX&Verify the test log on serial console h}r(P(h]h]h]h]h]uhjPh]r)Ph)r*P}r+P(hX%Verify the test log on serial consoler,Phj&PhjW5hhh}r-P(h]h]h]h]h]uhMH h]r.PhX%Verify the test log on serial consoler/Pr0P}r1P(hj,Phj*Pubaubahjubehjubaubeubh)r2P}r3P(hUhKhjOhjW5hhh}r4P(h]r5PXtest logr6Pah]h]h]r7PUid144r8Pah]uhMK hhh]r9P(h)r:P}r;P(hXTest LogrPhXTest Logr?Pr@P}rAP(hjQ}r?Q(hUhjQhjW5hj4h}r@Q(h]h]h]h]h]uhM hhh]rAQj7)rBQ}rCQ(hUj:Khj>QhjW5hhh}rDQ(h]h]h]h]h]uhKhhh]ubaubh)rEQ}rFQ(hX'Sample log for board running in EP moderGQhjQhjW5hhh}rHQ(h]h]h]h]h]uhM hhh]rIQhX'Sample log for board running in EP moderJQrKQ}rLQ(hjGQhjEQubaubj()rMQ}rNQ(hX2********************************************** * PCIe Test * ********************************************** Enter: E for Endpoint or R for Root Complex E * EP mode * This is PCIE EP Link is up link status reg =0x10130000 Link speed:Gen3 EP received data and will write backhjQhjW5hj+h}rOQ(hhh]h]h]h]h]uhMhhh]rPQhX2********************************************** * PCIe Test * ********************************************** Enter: E for Endpoint or R for Root Complex E * EP mode * This is PCIE EP Link is up link status reg =0x10130000 Link speed:Gen3 EP received data and will write backrQQrRQ}rSQ(hUhjMQubaubj1)rTQ}rUQ(hUhjQhjW5hj4h}rVQ(h]h]h]h]h]uhM hhh]rWQj7)rXQ}rYQ(hUj:KhjTQhjW5hhh}rZQ(h]h]h]h]h]uhKhhh]ubaubeubeubh)r[Q}r\Q(hUhjT5hjW5hhh}r]Q(h]h]h]h]r^QUpcie-1-lane-testr_Qah]r`QhauhM hhh]raQ(h)rbQ}rcQ(hXPCIe (1-lane) TestrdQhj[QhjW5hhh}reQ(h]h]h]h]h]uhM hhh]rfQhXPCIe (1-lane) TestrgQrhQ}riQ(hjdQhjbQubaubh)rjQ}rkQ(hXThis test verifies the one-lane PCIe ports on the AM65x EVM kit. Two AM65x EVM kits are required to run this test. Both the boards should be equipped with SD cards having the same diagnostic test binaries.rlQhj[QhjW5hhh}rmQ(h]h]h]h]h]uhM hhh]rnQhXThis test verifies the one-lane PCIe ports on the AM65x EVM kit. Two AM65x EVM kits are required to run this test. Both the boards should be equipped with SD cards having the same diagnostic test binaries.roQrpQ}rqQ(hjlQhjjQubaubh)rrQ}rsQ(hUhKhj[QhjW5hhh}rtQ(h]ruQXtest accessoriesrvQah]h]h]rwQUid149rxQah]uhM hhh]ryQ(h)rzQ}r{Q(hXTest Accessoriesr|QhjrQhjW5hhh}r}Q(h]h]h]h]h]uhM hhh]r~QhXTest AccessoriesrQrQ}rQ(hj|QhjzQubaubj[)rQ}rQ(hUhjrQhNhj^h}rQ(h]h]h]h]h]uhNhhh]rQj)rQ}rQ(hUh}rQ(jX-h]h]h]h]h]uhjQh]rQ(j)rQ}rQ(hXTwo AM65x EVM kitsrQh}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hjQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhXTwo AM65x EVM kitsrQrQ}rQ(hjQhjQubaubahjubj)rQ}rQ(hXPCIe one-lane cable h}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hXPCIe one-lane cablerQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhXPCIe one-lane cablerQrQ}rQ(hjQhjQubaubahjubehjubaubeubh)rQ}rQ(hUhKhj[QhjW5hhh}rQ(h]rQX test setuprQah]h]h]rQUid150rQah]uhM hhh]rQ(h)rQ}rQ(hX Test SetuprQhjQhjW5hhh}rQ(h]h]h]h]h]uhM hhh]rQhX Test SetuprQrQ}rQ(hjQhjQubaubj[)rQ}rQ(hUhjQhNhj^h}rQ(h]h]h]h]h]uhNhhh]rQj)rQ}rQ(hUh}rQ(jX-h]h]h]h]h]uhjQh]rQj)rQ}rQ(hXDConnect PCIe ports on both the EVM kits with a one-lane PCIe cable. h}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hXCConnect PCIe ports on both the EVM kits with a one-lane PCIe cable.rQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhXCConnect PCIe ports on both the EVM kits with a one-lane PCIe cable.rQrQ}rQ(hjQhjQubaubahjubahjubaubeubh)rQ}rQ(hUhKhj[QhjW5hhh}rQ(h]rQXtest executionrQah]h]h]rQUid151rQah]uhM hhh]rQ(h)rQ}rQ(hXTest ExecutionrQhjQhjW5hhh}rQ(h]h]h]h]h]uhM hhh]rQhXTest ExecutionrQrQ}rQ(hjQhjQubaubj[)rQ}rQ(hUhjQhNhj^h}rQ(h]h]h]h]h]uhNhhh]rQj)rQ}rQ(hUh}rQ(jX-h]h]h]h]h]uhjQh]rQ(j)rQ}rQ(hX@Select the menu option to run ‘pcie_TEST’ on both the boardsrQh}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hjQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhX@Select the menu option to run ‘pcie_TEST’ on both the boardsrQrQ}rQ(hjQhjQubaubahjubj)rQ}rQ(hXKPress ‘R’ on first board serial console to enable rootcomplex operationrQh}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hjQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhXKPress ‘R’ on first board serial console to enable rootcomplex operationrQrQ}rQ(hjQhjQubaubahjubj)rQ}rQ(hXIPress ‘E’ on second board serial console to enable endpoint operationrQh}rQ(h]h]h]h]h]uhjQh]rQh)rQ}rQ(hjQhjQhjW5hhh}rQ(h]h]h]h]h]uhM h]rQhXIPress ‘E’ on second board serial console to enable endpoint operationrQrR}rR(hjQhjQubaubahjubj)rR}rR(hX'Verify the test log on serial console. h}rR(h]h]h]h]h]uhjQh]rRh)rR}rR(hX&Verify the test log on serial console.rRhjRhjW5hhh}r R(h]h]h]h]h]uhM h]r RhX&Verify the test log on serial console.r Rr R}r R(hjRhjRubaubahjubehjubaubeubh)rR}rR(hUhKhj[QhjW5hhh}rR(h]rRXtest logrRah]h]h]rRUid152rRah]uhM hhh]rR(h)rR}rR(hXTest LogrRhjRhjW5hhh}rR(h]h]h]h]h]uhM hhh]rRhXTest LogrRrR}rR(hjRhjRubaubh)rR}rR(hX.Sample log for 1-lane PCIe test is shown belowr RhjRhjW5hhh}r!R(h]h]h]h]h]uhM hhh]r"RhX.Sample log for 1-lane PCIe test is shown belowr#Rr$R}r%R(hj RhjRubaubh)r&R}r'R(hX'Sample log for board running in RC moder(RhjRhjW5hhh}r)R(h]h]h]h]h]uhM hhh]r*RhX'Sample log for board running in RC moder+Rr,R}r-R(hj(Rhj&Rubaubj()r.R}r/R(hXN********************************************** * PCIe Test * ********************************************** Enter: E for Endpoint or R for Root Complex R * RC mode * This is PCIE RC Link is up link status reg =0x30130000 Link speed:Gen3 RC writes a pattern to EP RC received data, loopback test passedhjRhjW5hj+h}r0R(hhh]h]h]h]h]uhMhhh]r1RhXN********************************************** * PCIe Test * ********************************************** Enter: E for Endpoint or R for Root Complex R * RC mode * This is PCIE RC Link is up link status reg =0x30130000 Link speed:Gen3 RC writes a pattern to EP RC received data, loopback test passedr2Rr3R}r4R(hUhj.Rubaubj1)r5R}r6R(hUhjRhjW5hj4h}r7R(h]h]h]h]h]uhM hhh]r8Rj7)r9R}r:R(hUj:Khj5RhjW5hhh}r;R(h]h]h]h]h]uhKhhh]ubaubh)rRhjRhjW5hhh}r?R(h]h]h]h]h]uhM hhh]r@RhX'Sample log for board running in EP moderARrBR}rCR(hj>RhjS}r?S(hXTest Executionr@Shj6ShjW5hhh}rAS(h]h]h]h]h]uhM hhh]rBShXTest ExecutionrCSrDS}rES(hj@Shj>Subaubj[)rFS}rGS(hUhj6ShNhj^h}rHS(h]h]h]h]h]uhNhhh]rISj)rJS}rKS(hUh}rLS(jX-h]h]h]h]h]uhjFSh]rMS(j)rNS}rOS(hX,Select the menu option to run ‘pwm_TEST’rPSh}rQS(h]h]h]h]h]uhjJSh]rRSh)rSS}rTS(hjPShjNShjW5hhh}rUS(h]h]h]h]h]uhM h]rVShX,Select the menu option to run ‘pwm_TEST’rWSrXS}rYS(hjPShjSSubaubahjubj)rZS}r[S(hX%Verify the test log on serial consoler\Sh}r]S(h]h]h]h]h]uhjJSh]r^Sh)r_S}r`S(hj\ShjZShjW5hhh}raS(h]h]h]h]h]uhM h]rbShX%Verify the test log on serial consolercSrdS}reS(hj\Shj_Subaubahjubj)rfS}rgS(hXEVerify the PWM output to cofirm the duty cycle generated by the test h}rhS(h]h]h]h]h]uhjJSh]riSh)rjS}rkS(hXDVerify the PWM output to cofirm the duty cycle generated by the testrlShjfShjW5hhh}rmS(h]h]h]h]h]uhM h]rnShXDVerify the PWM output to cofirm the duty cycle generated by the testroSrpS}rqS(hjlShjjSubaubahjubehjubaubh)rrS}rsS(hXYRefer below table for the PWM output signals generated by the test on different platformsrtShj6ShjW5hhh}ruS(h]h]h]h]h]uhM hhh]rvShXYRefer below table for the PWM output signals generated by the test on different platformsrwSrxS}ryS(hjtShjrSubaubj)rzS}r{S(hUhj6ShjW5hj h}r|S(h]h]h]h]h]uhNhhh]r}Sj)r~S}rS(hUh}rS(h]h]h]h]h]UcolsKuhjzSh]rS(j)rS}rS(hUh}rS(h]h]h]h]h]UcolwidthKuhj~Sh]hjubj)rS}rS(hUh}rS(h]h]h]h]h]UcolwidthKuhj~Sh]hjubj3)rS}rS(hUh}rS(h]h]h]h]h]uhj~Sh]rSj8)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rS(j=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX HW PlatformrShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShX HW PlatformrSrS}rS(hjShjSubaubahjJubj=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hXPWM Output PinrShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShXPWM Output PinrSrS}rS(hjShjSubaubahjJubehjubahjubj)rS}rS(hUh}rS(h]h]h]h]h]uhj~Sh]rS(j8)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rS(j=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hXevmK2GrShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShXevmK2GrSrS}rS(hjShjSubaubahjJubj=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX J12 pin 33rShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShX J12 pin 33rSrS}rS(hjShjSubaubahjJubehjubj8)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rS(j=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX evmAM572xrShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShX evmAM572xrSrS}rS(hjShjSubaubahjJubj=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX P17 pin 5rShjShjW5hhh}rS(h]h]h]h]h]uhM h]rShX P17 pin 5rSrS}rS(hjShjSubaubahjJubehjubj8)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rS(j=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX idkAM437xrShjShjW5hhh}rS(h]h]h]h]h]uhM! h]rShX idkAM437xrSrS}rS(hjShjSubaubahjJubj=)rS}rS(hUh}rS(h]h]h]h]h]uhjSh]rSh)rS}rS(hX J16 pin 14rShjShjW5hhh}rS(h]h]h]h]h]uhM! h]rShX J16 pin 14rSrS}rS(hjShjSubaubahjJubehjubj8)rT}rT(hUh}rT(h]h]h]h]h]uhjSh]rT(j=)rT}rT(hUh}rT(h]h]h]h]h]uhjTh]rTh)rT}r T(hX evmAM335xr ThjThjW5hhh}r T(h]h]h]h]h]uhM# h]r ThX evmAM335xr TrT}rT(hj ThjTubaubahjJubj=)rT}rT(hUh}rT(h]h]h]h]h]uhjTh]rTh)rT}rT(hX J5 pin 13rThjThjW5hhh}rT(h]h]h]h]h]uhM# h]rThX J5 pin 13rTrT}rT(hjThjTubaubahjJubehjubehjUubehjVubaubeubh)rT}rT(hUhKhjRhjW5hhh}rT(h]rTXtest logr Tah]h]h]r!TUid160r"Tah]uhM' hhh]r#T(h)r$T}r%T(hXTest Logr&ThjThjW5hhh}r'T(h]h]h]h]h]uhM' hhh]r(ThXTest Logr)Tr*T}r+T(hj&Thj$Tubaubh)r,T}r-T(hX&Sample log for PWM test is shown belowr.ThjThjW5hhh}r/T(h]h]h]h]h]uhM( hhh]r0ThX&Sample log for PWM test is shown belowr1Tr2T}r3T(hj.Thj,Tubaubj()r4T}r5T(hX(********************************************* * PWM Test * ********************************************* Generating 1KHz PWM pulse with 25 Duty Cycle Generating 1KHz PWM pulse with 50 Duty Cycle Generating 1KHz PWM pulse with 75 Duty Cycle PWM Test Completed!hjThjW5hj+h}r6T(hhh]h]h]h]h]uhM"hhh]r7ThX(********************************************* * PWM Test * ********************************************* Generating 1KHz PWM pulse with 25 Duty Cycle Generating 1KHz PWM pulse with 50 Duty Cycle Generating 1KHz PWM pulse with 75 Duty Cycle PWM Test Completed!r8Tr9T}r:T(hUhj4Tubaubj1)r;T}rTj7)r?T}r@T(hUj:Khj;ThjW5hhh}rAT(h]h]h]h]h]uhKhhh]ubaubeubeubh)rBT}rCT(hUhjT5hjW5hhh}rDT(h]h]h]h]rETU qspi-testrFTah]rGTh9auhM: hhh]rHT(h)rIT}rJT(hX QSPI TestrKThjBThjW5hhh}rLT(h]h]h]h]h]uhM: hhh]rMThX QSPI TestrNTrOT}rPT(hjKThjITubaubh)rQT}rRT(hX@This test verifies the QSPI flash on the HW platform under test.rSThjBThjW5hhh}rTT(h]h]h]h]h]uhM; hhh]rUThX@This test verifies the QSPI flash on the HW platform under test.rVTrWT}rXT(hjSThjQTubaubh)rYT}rZT(hUhKhjBThjW5hhh}r[T(h]r\TXtest accessoriesr]Tah]h]h]r^TUid161r_Tah]uhM> hhh]r`T(h)raT}rbT(hXTest AccessoriesrcThjYThjW5hhh}rdT(h]h]h]h]h]uhM> hhh]reThXTest AccessoriesrfTrgT}rhT(hjcThjaTubaubh)riT}rjT(hX=No additional accessories are required for running this test.rkThjYThjW5hhh}rlT(h]h]h]h]h]uhM? hhh]rmThX=No additional accessories are required for running this test.rnTroT}rpT(hjkThjiTubaubeubh)rqT}rrT(hUhKhjBThjW5hhh}rsT(h]rtTX test setupruTah]h]h]rvTUid162rwTah]uhMB hhh]rxT(h)ryT}rzT(hX Test Setupr{ThjqThjW5hhh}r|T(h]h]h]h]h]uhMB hhh]r}ThX Test Setupr~TrT}rT(hj{ThjyTubaubh)rT}rT(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rThjqThjW5hhh}rT(h]h]h]h]h]uhMC hhh]rThXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rTrT}rT(hjThjTubaubeubh)rT}rT(hUhKhjBThjW5hhh}rT(h]rTXtest executionrTah]h]h]rTUid163rTah]uhMF hhh]rT(h)rT}rT(hXTest ExecutionrThjThjW5hhh}rT(h]h]h]h]h]uhMF hhh]rThXTest ExecutionrTrT}rT(hjThjTubaubj[)rT}rT(hUhjThNhj^h}rT(h]h]h]h]h]uhNhhh]rTj)rT}rT(hUh}rT(jX-h]h]h]h]h]uhjTh]rT(j)rT}rT(hX-Select the menu option to run ‘qspi_TEST’rTh}rT(h]h]h]h]h]uhjTh]rTh)rT}rT(hjThjThjW5hhh}rT(h]h]h]h]h]uhMG h]rThX-Select the menu option to run ‘qspi_TEST’rTrT}rT(hjThjTubaubahjubj)rT}rT(hX&Verify the test log on serial console h}rT(h]h]h]h]h]uhjTh]rTh)rT}rT(hX%Verify the test log on serial consolerThjThjW5hhh}rT(h]h]h]h]h]uhMH h]rThX%Verify the test log on serial consolerTrT}rT(hjThjTubaubahjubehjubaubeubh)rT}rT(hUhKhjBThjW5hhh}rT(h]rTXtest logrTah]h]h]rTUid164rTah]uhMK hhh]rT(h)rT}rT(hXTest LogrThjThjW5hhh}rT(h]h]h]h]h]uhMK hhh]rThXTest LogrTrT}rT(hjThjTubaubh)rT}rT(hX'Sample log for QSPI test is shown belowrThjThjW5hhh}rT(h]h]h]h]h]uhML hhh]rThX'Sample log for QSPI test is shown belowrTrT}rT(hjThjTubaubj()rT}rT(hX********************************************* * QSPI Test * ********************************************* Testing QSPI read/write... Test PASSED!hjThjW5hj+h}rT(hhh]h]h]h]h]uhMFhhh]rThX********************************************* * QSPI Test * ********************************************* Testing QSPI read/write... Test PASSED!rTrT}rT(hUhjTubaubj1)rT}rT(hUhjThjW5hj4h}rT(h]h]h]h]h]uhMV hhh]rTj7)rT}rT(hUj:KhjThjW5hhh}rT(h]h]h]h]h]uhKhhh]ubaubeubeubh)rT}rT(hUhjT5hjW5hhh}rT(h]h]h]h]rTUrotary-switch-testrTah]rTh auhMY hhh]rT(h)rT}rT(hXRotary Switch TestrThjThjW5hhh}rT(h]h]h]h]h]uhMY hhh]rThXRotary Switch TestrTrT}rT(hjThjTubaubh)rT}rT(hXNThis test verifies reading the rotary switch inputs on HW platform under test.rThjThjW5hhh}rT(h]h]h]h]h]uhMZ hhh]rThXNThis test verifies reading the rotary switch inputs on HW platform under test.rTrT}rT(hjThjTubaubh)rT}rT(hUhKhjThjW5hhh}rT(h]rTXtest accessoriesrTah]h]h]rTUid165rTah]uhM] hhh]rT(h)rT}rT(hXTest AccessoriesrUhjThjW5hhh}rU(h]h]h]h]h]uhM] hhh]rUhXTest AccessoriesrUrU}rU(hjUhjTubaubh)rU}rU(hX=No additional accessories are required for running this test.rUhjThjW5hhh}r U(h]h]h]h]h]uhM^ hhh]r UhX=No additional accessories are required for running this test.r Ur U}r U(hjUhjUubaubeubh)rU}rU(hUhKhjThjW5hhh}rU(h]rUX test setuprUah]h]h]rUUid166rUah]uhMa hhh]rU(h)rU}rU(hX Test SetuprUhjUhjW5hhh}rU(h]h]h]h]h]uhMa hhh]rUhX Test SetuprUrU}rU(hjUhjUubaubh)rU}rU(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r UhjUhjW5hhh}r!U(h]h]h]h]h]uhMb hhh]r"UhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r#Ur$U}r%U(hj UhjUubaubeubh)r&U}r'U(hUhKhjThjW5hhh}r(U(h]r)UXtest executionr*Uah]h]h]r+UUid167r,Uah]uhMe hhh]r-U(h)r.U}r/U(hXTest Executionr0Uhj&UhjW5hhh}r1U(h]h]h]h]h]uhMe hhh]r2UhXTest Executionr3Ur4U}r5U(hj0Uhj.Uubaubj[)r6U}r7U(hUhj&UhNhj^h}r8U(h]h]h]h]h]uhNhhh]r9Uj)r:U}r;U(hUh}rU}r?U(hX5Select the menu option to run ‘rotarySwitch_TEST’r@Uh}rAU(h]h]h]h]h]uhj:Uh]rBUh)rCU}rDU(hj@Uhj>UhjW5hhh}rEU(h]h]h]h]h]uhMf h]rFUhX5Select the menu option to run ‘rotarySwitch_TEST’rGUrHU}rIU(hj@UhjCUubaubahjubj)rJU}rKU(hX%Verify the test log on serial consolerLUh}rMU(h]h]h]h]h]uhj:Uh]rNUh)rOU}rPU(hjLUhjJUhjW5hhh}rQU(h]h]h]h]h]uhMg h]rRUhX%Verify the test log on serial consolerSUrTU}rUU(hjLUhjOUubaubahjubj)rVU}rWU(hX~Confirm the test result by pressing 'y' in case rotary switch input is read properly, else any other key to indicate failure. h}rXU(h]h]h]h]h]uhj:Uh]rYUh)rZU}r[U(hX}Confirm the test result by pressing 'y' in case rotary switch input is read properly, else any other key to indicate failure.r\UhjVUhjW5hhh}r]U(h]h]h]h]h]uhMh h]r^UhX}Confirm the test result by pressing 'y' in case rotary switch input is read properly, else any other key to indicate failure.r_Ur`U}raU(hj\UhjZUubaubahjubehjubaubeubh)rbU}rcU(hUhKhjThjW5hhh}rdU(h]reUXtest logrfUah]h]h]rgUUid168rhUah]uhMk hhh]riU(h)rjU}rkU(hXTest LogrlUhjbUhjW5hhh}rmU(h]h]h]h]h]uhMk hhh]rnUhXTest LogroUrpU}rqU(hjlUhjjUubaubh)rrU}rsU(hX0Sample log for rotary switch test is shown belowrtUhjbUhjW5hhh}ruU(h]h]h]h]h]uhMl hhh]rvUhX0Sample log for rotary switch test is shown belowrwUrxU}ryU(hjtUhjrUubaubj()rzU}r{U(hX******************************** ROTARY SWITCH Test ******************************** Running Rotary switch Detect Test Rotary switch Detection Successful! Rotary switch Detect Test Passed! Running Rotary switch position Test The rotary switch is at position 7 Rotary switch position Test Passed! Press 'r' to run the test again, or any other character to exit: y Rotary switch Test Passed! Rotary switch Tests Completed!! -----------------X-----------------hjbUhjW5hj+h}r|U(hhh]h]h]h]h]uhMfhhh]r}UhX******************************** ROTARY SWITCH Test ******************************** Running Rotary switch Detect Test Rotary switch Detection Successful! Rotary switch Detect Test Passed! Running Rotary switch position Test The rotary switch is at position 7 Rotary switch position Test Passed! Press 'r' to run the test again, or any other character to exit: y Rotary switch Test Passed! Rotary switch Tests Completed!! -----------------X-----------------r~UrU}rU(hUhjzUubaubj1)rU}rU(hUhjbUhjW5hj4h}rU(h]h]h]h]h]uhM hhh]rUj7)rU}rU(hUj:KhjUhjW5hhh}rU(h]h]h]h]h]uhKhhh]ubaubeubeubh)rU}rU(hUhjT5hjW5hhh}rU(h]h]h]h]rUUrs485-uart-testrUah]rUhauhM hhh]rU(h)rU}rU(hXRS485 UART TestrUhjUhjW5hhh}rU(h]h]h]h]h]uhM hhh]rUhXRS485 UART TestrUrU}rU(hjUhjUubaubh)rU}rU(hXVThis test verifies RS485 interface on platform under test. RS485 interface is connected to PRU-ICSS port of the SoC. Test outputs a test string through RS485 UART interface and receives user input as confirmation. Test is executed on two boards for AM57xx IDK platforms. RS485 to RS232 USB cable is used on AM65x IDK platform to run the test.rUhjUhjW5hhh}rU(h]h]h]h]h]uhM hhh]rUhXVThis test verifies RS485 interface on platform under test. RS485 interface is connected to PRU-ICSS port of the SoC. Test outputs a test string through RS485 UART interface and receives user input as confirmation. Test is executed on two boards for AM57xx IDK platforms. RS485 to RS232 USB cable is used on AM65x IDK platform to run the test.rUrU}rU(hjUhjUubaubh)rU}rU(hUhKhjUhjW5hhh}rU(h]rUXtest accessoriesrUah]h]h]rUUid169rUah]uhM hhh]rU(h)rU}rU(hXTest AccessoriesrUhjUhjW5hhh}rU(h]h]h]h]h]uhM hhh]rUhXTest AccessoriesrUrU}rU(hjUhjUubaubh)rU}rU(hX[Cable to connect RS485 ports on two boards (AM57x IDK) RS485 to RS232 USB cable (AM65x IDK)rUhjUhjW5hhh}rU(h]h]h]h]h]uhM hhh]rUhX[Cable to connect RS485 ports on two boards (AM57x IDK) RS485 to RS232 USB cable (AM65x IDK)rUrU}rU(hjUhjUubaubeubh)rU}rU(hUhKhjUhjW5hhh}rU(h]rUX test setuprUah]h]h]rUUid170rUah]uhM hhh]rU(h)rU}rU(hX Test SetuprUhjUhjW5hhh}rU(h]h]h]h]h]uhM hhh]rUhX Test SetuprUrU}rU(hjUhjUubaubjY )rU}rU(hUhjUhNhj\ h}rU(h]h]h]h]h]uhNhhh]rUj_ )rU}rU(hXJidkAM571x/idkAM572x: - Connect RS485 UART header (J39) between two boards hjUhjW5hjb h}rU(h]h]h]h]h]uhM h]rU(je )rU}rU(hXidkAM571x/idkAM572x:rUhjUhjW5hji h}rU(h]h]h]h]h]uhM h]rUhXidkAM571x/idkAM572x:rUrU}rU(hjUhjUubaubjo )rU}rU(hUh}rU(h]h]h]h]h]uhjUh]rUj)rU}rU(hUh}rU(jX-h]h]h]h]h]uhjUh]rUj)rU}rU(hX3Connect RS485 UART header (J39) between two boards h}rU(h]h]h]h]h]uhjUh]rUh)rU}rU(hX2Connect RS485 UART header (J39) between two boardsrUhjUhjW5hhh}rU(h]h]h]h]h]uhM h]rUhX2Connect RS485 UART header (J39) between two boardsrUrU}rU(hjUhjUubaubahjubahjubahj ubeubaubj1)rU}rU(hUhjUhjW5hj4h}rU(h]h]h]h]h]uhM hhh]rUj7)rU}rU(hUj:KhjUhjW5hhh}rU(h]h]h]h]h]uhKhhh]ubaubjY )rU}rU(hUhjUhjW5hj\ h}rU(h]h]h]h]h]uhNhhh]rUj_ )rU}rU(hX.am65x_idk: - Connect RS485 to RS232 USB cable between RS485 UART port of the board and host PC. - Setup serial console application on host PC with below configurations :: Baud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - None hjUhjW5hjb h}rU(h]h]h]h]h]uhM h]rU(je )rU}rU(hX am65x_idk:rUhjUhjW5hji h}rU(h]h]h]h]h]uhM h]rUhX am65x_idk:rUrV}rV(hjUhjUubaubjo )rV}rV(hUh}rV(h]h]h]h]h]uhjUh]rV(j)rV}rV(hUh}rV(jX-h]h]h]h]h]uhjVh]r V(j)r V}r V(hXRConnect RS485 to RS232 USB cable between RS485 UART port of the board and host PC.r Vh}r V(h]h]h]h]h]uhjVh]rVh)rV}rV(hj Vhj VhjW5hhh}rV(h]h]h]h]h]uhM h]rVhXRConnect RS485 to RS232 USB cable between RS485 UART port of the board and host PC.rVrV}rV(hj VhjVubaubahjubj)rV}rV(hXESetup serial console application on host PC with below configurationsrVh}rV(h]h]h]h]h]uhjVh]rVh)rV}rV(hjVhjVhjW5hhh}rV(h]h]h]h]h]uhM h]rVhXESetup serial console application on host PC with below configurationsrVr V}r!V(hjVhjVubaubahjubehjubj()r"V}r#V(hXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - NonehjVhj+h}r$V(hhh]h]h]h]h]uhMh]r%VhXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Noner&Vr'V}r(V(hUhj"Vubaubehj ubeubaubeubh)r)V}r*V(hUhKhjUhjW5hhh}r+V(h]r,VXtest executionr-Vah]h]h]r.VUid171r/Vah]uhM hhh]r0V(h)r1V}r2V(hXTest Executionr3Vhj)VhjW5hhh}r4V(h]h]h]h]h]uhM hhh]r5VhXTest Executionr6Vr7V}r8V(hj3Vhj1VubaubjY )r9V}r:V(hUhj)VhNhj\ h}r;V(h]h]h]h]h]uhNhhh]rV(hXidkAM571x/idkAM572x: - Select the menu option to run ‘rs485_TEST’ - Follow the instructions on serial console to send data from one board and receive on another board - Verify the test log on serial consolehj9VhjW5hjb h}r?V(h]h]h]h]h]uhM h]r@V(je )rAV}rBV(hXidkAM571x/idkAM572x:rCVhj=VhjW5hji h}rDV(h]h]h]h]h]uhM h]rEVhXidkAM571x/idkAM572x:rFVrGV}rHV(hjCVhjAVubaubjo )rIV}rJV(hUh}rKV(h]h]h]h]h]uhj=Vh]rLVj)rMV}rNV(hUh}rOV(jX-h]h]h]h]h]uhjIVh]rPV(j)rQV}rRV(hX.Select the menu option to run ‘rs485_TEST’rSVh}rTV(h]h]h]h]h]uhjMVh]rUVh)rVV}rWV(hjSVhjQVhjW5hhh}rXV(h]h]h]h]h]uhM h]rYVhX.Select the menu option to run ‘rs485_TEST’rZVr[V}r\V(hjSVhjVVubaubahjubj)r]V}r^V(hXbFollow the instructions on serial console to send data from one board and receive on another boardr_Vh}r`V(h]h]h]h]h]uhjMVh]raVh)rbV}rcV(hj_Vhj]VhjW5hhh}rdV(h]h]h]h]h]uhM h]reVhXbFollow the instructions on serial console to send data from one board and receive on another boardrfVrgV}rhV(hj_VhjbVubaubahjubj)riV}rjV(hX%Verify the test log on serial consolerkVh}rlV(h]h]h]h]h]uhjMVh]rmVh)rnV}roV(hjkVhjiVhjW5hhh}rpV(h]h]h]h]h]uhM h]rqVhX%Verify the test log on serial consolerrVrsV}rtV(hjkVhjnVubaubahjubehjubahj ubeubaubj1)ruV}rvV(hUhj)VhjW5hj4h}rwV(h]h]h]h]h]uhM hhh]rxVj7)ryV}rzV(hUj:KhjuVhjW5hhh}r{V(h]h]h]h]h]uhKhhh]ubaubjY )r|V}r}V(hUhj)VhNhj\ h}r~V(h]h]h]h]h]uhNhhh]rVj_ )rV}rV(hXam65x_idk: - Select the menu option to run ‘rs485_TEST’ - Verify the test log on serial console - Confirm the test result on RS485 UART console hj|VhjW5hjb h}rV(h]h]h]h]h]uhM h]rV(je )rV}rV(hX am65x_idk:rVhjVhjW5hji h}rV(h]h]h]h]h]uhM h]rVhX am65x_idk:rVrV}rV(hjVhjVubaubjo )rV}rV(hUh}rV(h]h]h]h]h]uhjVh]rVj)rV}rV(hUh}rV(jX-h]h]h]h]h]uhjVh]rV(j)rV}rV(hX.Select the menu option to run ‘rs485_TEST’rVh}rV(h]h]h]h]h]uhjVh]rVh)rV}rV(hjVhjVhjW5hhh}rV(h]h]h]h]h]uhM h]rVhX.Select the menu option to run ‘rs485_TEST’rVrV}rV(hjVhjVubaubahjubj)rV}rV(hX%Verify the test log on serial consolerVh}rV(h]h]h]h]h]uhjVh]rVh)rV}rV(hjVhjVhjW5hhh}rV(h]h]h]h]h]uhM h]rVhX%Verify the test log on serial consolerVrV}rV(hjVhjVubaubahjubj)rV}rV(hX.Confirm the test result on RS485 UART console h}rV(h]h]h]h]h]uhjVh]rVh)rV}rV(hX-Confirm the test result on RS485 UART consolerVhjVhjW5hhh}rV(h]h]h]h]h]uhM h]rVhX-Confirm the test result on RS485 UART consolerVrV}rV(hjVhjVubaubahjubehjubahj ubeubaubeubh)rV}rV(hUhKhjUhjW5hhh}rV(h]rVXtest logrVah]h]h]rVUid172rVah]uhM hhh]rV(h)rV}rV(hXTest LogrVhjVhjW5hhh}rV(h]h]h]h]h]uhM hhh]rVhXTest LogrVrV}rV(hjVhjVubaubh)rV}rV(hX:Sample log for RS485 UART test (am65xx_idk) is shown belowrVhjVhjW5hhh}rV(h]h]h]h]h]uhM hhh]rVhX:Sample log for RS485 UART test (am65xx_idk) is shown belowrVrV}rV(hjVhjVubaubh)rV}rV(hXMain test console log ::hjVhjW5hhh}rV(h]h]h]h]h]uhM hhh]rVhXMain test console logrVrV}rV(hXMain test console loghjVubaubj()rV}rV(hX********************************************* * PRU-ICSS UART Test * ********************************************* Check PRU UART console for the test logs PRU-ICSS UART Test Passed!! PRU-ICSS UART Test Completed!hjVhjW5hj+h}rV(hhh]h]h]h]h]uhMhhh]rVhX********************************************* * PRU-ICSS UART Test * ********************************************* Check PRU UART console for the test logs PRU-ICSS UART Test Passed!! PRU-ICSS UART Test Completed!rVrV}rV(hUhjVubaubj1)rV}rV(hUhjVhjW5hj4h}rV(h]h]h]h]h]uhM hhh]rVj7)rV}rV(hUj:KhjVhjW5hhh}rV(h]h]h]h]h]uhKhhh]ubaubh)rV}rV(hXRS485 UART console log ::hjVhjW5hhh}rV(h]h]h]h]h]uhM hhh]rVhXRS485 UART console logrVrV}rV(hXRS485 UART console loghjVubaubj()rV}rV(hX********************************************* * PRU-ICSS UART Test * ********************************************* Testing UART print to console at 115.2k baud rate Press 'y' to verify pass: Test PassedhjVhjW5hj+h}rV(hhh]h]h]h]h]uhMhhh]rVhX********************************************* * PRU-ICSS UART Test * ********************************************* Testing UART print to console at 115.2k baud rate Press 'y' to verify pass: Test PassedrVrV}rV(hUhjVubaubj1)rV}rV(hUhjVhjW5hj4h}rV(h]h]h]h]h]uhM hhh]rVj7)rV}rV(hUj:KhjVhjW5hhh}rV(h]h]h]h]h]uhKhhh]ubaubeubeubh)rV}rV(hUhjT5hjW5hhh}rV(h]h]h]h]rVUrtc-testrVah]rVhEauhM hhh]rW(h)rW}rW(hXRTC TestrWhjVhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXRTC TestrWrW}rW(hjWhjWubaubh)r W}r W(hXGThis test verifies the on-chip RTC Timer on the HW platform under test.r WhjVhjW5hhh}r W(h]h]h]h]h]uhM hhh]r WhXGThis test verifies the on-chip RTC Timer on the HW platform under test.rWrW}rW(hj Whj Wubaubh)rW}rW(hUhKhjVhjW5hhh}rW(h]rWXtest accessoriesrWah]h]h]rWUid173rWah]uhM hhh]rW(h)rW}rW(hXTest AccessoriesrWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXTest AccessoriesrWrW}r W(hjWhjWubaubh)r!W}r"W(hX=No additional accessories are required for running this test.r#WhjWhjW5hhh}r$W(h]h]h]h]h]uhM hhh]r%WhX=No additional accessories are required for running this test.r&Wr'W}r(W(hj#Whj!Wubaubeubh)r)W}r*W(hUhKhjVhjW5hhh}r+W(h]r,WX test setupr-Wah]h]h]r.WUid174r/Wah]uhM hhh]r0W(h)r1W}r2W(hX Test Setupr3Whj)WhjW5hhh}r4W(h]h]h]h]h]uhM hhh]r5WhX Test Setupr6Wr7W}r8W(hj3Whj1Wubaubh)r9W}r:W(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r;Whj)WhjW5hhh}rWr?W}r@W(hj;Whj9Wubaubeubh)rAW}rBW(hUhKhjVhjW5hhh}rCW(h]rDWXtest executionrEWah]h]h]rFWUid175rGWah]uhM hhh]rHW(h)rIW}rJW(hXTest ExecutionrKWhjAWhjW5hhh}rLW(h]h]h]h]h]uhM hhh]rMWhXTest ExecutionrNWrOW}rPW(hjKWhjIWubaubj[)rQW}rRW(hUhjAWhNhj^h}rSW(h]h]h]h]h]uhNhhh]rTWj)rUW}rVW(hUh}rWW(jX-h]h]h]h]h]uhjQWh]rXW(j)rYW}rZW(hX,Select the menu option to run ‘rtc_TEST’r[Wh}r\W(h]h]h]h]h]uhjUWh]r]Wh)r^W}r_W(hj[WhjYWhjW5hhh}r`W(h]h]h]h]h]uhM h]raWhX,Select the menu option to run ‘rtc_TEST’rbWrcW}rdW(hj[Whj^Wubaubahjubj)reW}rfW(hX&Verify the test log on serial console h}rgW(h]h]h]h]h]uhjUWh]rhWh)riW}rjW(hX%Verify the test log on serial consolerkWhjeWhjW5hhh}rlW(h]h]h]h]h]uhM h]rmWhX%Verify the test log on serial consolernWroW}rpW(hjkWhjiWubaubahjubehjubaubeubh)rqW}rrW(hUhKhjVhjW5hhh}rsW(h]rtWXtest logruWah]h]h]rvWUid176rwWah]uhM hhh]rxW(h)ryW}rzW(hXTest Logr{WhjqWhjW5hhh}r|W(h]h]h]h]h]uhM hhh]r}WhXTest Logr~WrW}rW(hj{WhjyWubaubh)rW}rW(hX&Sample log for RTC test is shown belowrWhjqWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhX&Sample log for RTC test is shown belowrWrW}rW(hjWhjWubaubj()rW}rW(hX*********************************************** * RTC Test * *********************************************** Current Date and Time: 10:23:52 21:6:16 Sunday Test Passed!hjqWhjW5hj+h}rW(hhh]h]h]h]h]uhMhhh]rWhX*********************************************** * RTC Test * *********************************************** Current Date and Time: 10:23:52 21:6:16 Sunday Test Passed!rWrW}rW(hUhjWubaubj1)rW}rW(hUhjqWhjW5hj4h}rW(h]h]h]h]h]uhM hhh]rWj7)rW}rW(hUj:KhjWhjW5hhh}rW(h]h]h]h]h]uhKhhh]ubaubeubeubh)rW}rW(hUhjT5hjW5hhh}rW(h]h]h]h]rWUtemperature-sensor-testrWah]rWhSauhM hhh]rW(h)rW}rW(hXTemperature Sensor TestrWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXTemperature Sensor TestrWrW}rW(hjWhjWubaubh)rW}rW(hXThis test verifies reading the ambient temperature from temperature sensor interface. Test verifies all the temperature sensor devices on the board.rWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXThis test verifies reading the ambient temperature from temperature sensor interface. Test verifies all the temperature sensor devices on the board.rWrW}rW(hjWhjWubaubh)rW}rW(hUhKhjWhjW5hhh}rW(h]rWXtest accessoriesrWah]h]h]rWUid177rWah]uhM hhh]rW(h)rW}rW(hXTest AccessoriesrWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXTest AccessoriesrWrW}rW(hjWhjWubaubh)rW}rW(hX=No additional accessories are required for running this test.rWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhX=No additional accessories are required for running this test.rWrW}rW(hjWhjWubaubeubh)rW}rW(hUhKhjWhjW5hhh}rW(h]rWX test setuprWah]h]h]rWUid178rWah]uhM hhh]rW(h)rW}rW(hX Test SetuprWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhX Test SetuprWrW}rW(hjWhjWubaubh)rW}rW(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rWhjWhjW5hhh}rW(h]h]h]h]h]uhM hhh]rWhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rWrW}rW(hjWhjWubaubeubh)rW}rW(hUhKhjWhjW5hhh}rW(h]rWXtest executionrWah]h]h]rWUid179rWah]uhMhhh]rW(h)rW}rW(hXTest ExecutionrWhjWhjW5hhh}rW(h]h]h]h]h]uhMhhh]rWhXTest ExecutionrWrW}rW(hjWhjWubaubj[)rW}rW(hUhjWhNhj^h}rW(h]h]h]h]h]uhNhhh]rWj)rW}rW(hUh}rW(jX-h]h]h]h]h]uhjWh]rW(j)rW}rW(hX4Select the menu option to run ‘temperature_TEST’rWh}rW(h]h]h]h]h]uhjWh]rWh)rW}rW(hjWhjWhjW5hhh}rW(h]h]h]h]h]uhMh]rWhX4Select the menu option to run ‘temperature_TEST’rWrX}rX(hjWhjWubaubahjubj)rX}rX(hX&Verify the test log on serial console h}rX(h]h]h]h]h]uhjWh]rXh)rX}rX(hX%Verify the test log on serial consolerXhjXhjW5hhh}r X(h]h]h]h]h]uhMh]r XhX%Verify the test log on serial consoler Xr X}r X(hjXhjXubaubahjubehjubaubeubh)rX}rX(hUhKhjWhjW5hhh}rX(h]rXXtest logrXah]h]h]rXUid180rXah]uhMhhh]rX(h)rX}rX(hXTest LogrXhjXhjW5hhh}rX(h]h]h]h]h]uhMhhh]rXhXTest LogrXrX}rX(hjXhjXubaubh)rX}rX(hX5Sample log for temperature sensor test is shown belowr XhjXhjW5hhh}r!X(h]h]h]h]h]uhMhhh]r"XhX5Sample log for temperature sensor test is shown belowr#Xr$X}r%X(hj XhjXubaubj()r&X}r'X(hX********************************************* * Temperature Sensor Test * ********************************************* Running temperature sensor test... Read temperature register value - 568 Temperature read from the temperature sensor slave address - 0x48 is 35 degree centigrade Read temperature register value - 520 Temperature read from the temperature sensor slave address - 0x49 is 32 degree centigrade Temperature sensor test Passed!hjXhjW5hj+h}r(X(hhh]h]h]h]h]uhMhhh]r)XhX********************************************* * Temperature Sensor Test * ********************************************* Running temperature sensor test... Read temperature register value - 568 Temperature read from the temperature sensor slave address - 0x48 is 35 degree centigrade Read temperature register value - 520 Temperature read from the temperature sensor slave address - 0x49 is 32 degree centigrade Temperature sensor test Passed!r*Xr+X}r,X(hUhj&Xubaubj1)r-X}r.X(hUhjXhjW5hj4h}r/X(h]h]h]h]h]uhMhhh]r0Xj7)r1X}r2X(hUj:Khj-XhjW5hhh}r3X(h]h]h]h]h]uhKhhh]ubaubeubeubh)r4X}r5X(hUhjT5hjW5hhh}r6X(h]h]h]h]r7XU timer-testr8Xah]r9Xh&auhMhhh]r:X(h)r;X}rX(h]h]h]h]h]uhMhhh]r?XhX Timer Testr@XrAX}rBX(hj=Xhj;Xubaubh)rCX}rDX(hXThis test verifies the on-chip timer module to generate 1msec tick on the HW platform under test. Test waits for 2secs counting the timer interrupt.rEXhj4XhjW5hhh}rFX(h]h]h]h]h]uhMhhh]rGXhXThis test verifies the on-chip timer module to generate 1msec tick on the HW platform under test. Test waits for 2secs counting the timer interrupt.rHXrIX}rJX(hjEXhjCXubaubh)rKX}rLX(hUhKhj4XhjW5hhh}rMX(h]rNXXtest accessoriesrOXah]h]h]rPXUid181rQXah]uhM!hhh]rRX(h)rSX}rTX(hXTest AccessoriesrUXhjKXhjW5hhh}rVX(h]h]h]h]h]uhM!hhh]rWXhXTest AccessoriesrXXrYX}rZX(hjUXhjSXubaubh)r[X}r\X(hX=No additional accessories are required for running this test.r]XhjKXhjW5hhh}r^X(h]h]h]h]h]uhM"hhh]r_XhX=No additional accessories are required for running this test.r`XraX}rbX(hj]Xhj[Xubaubeubh)rcX}rdX(hUhKhj4XhjW5hhh}reX(h]rfXX test setuprgXah]h]h]rhXUid182riXah]uhM%hhh]rjX(h)rkX}rlX(hX Test SetuprmXhjcXhjW5hhh}rnX(h]h]h]h]h]uhM%hhh]roXhX Test SetuprpXrqX}rrX(hjmXhjkXubaubh)rsX}rtX(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.ruXhjcXhjW5hhh}rvX(h]h]h]h]h]uhM&hhh]rwXhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rxXryX}rzX(hjuXhjsXubaubeubh)r{X}r|X(hUhKhj4XhjW5hhh}r}X(h]r~XXtest executionrXah]h]h]rXUid183rXah]uhM)hhh]rX(h)rX}rX(hXTest ExecutionrXhj{XhjW5hhh}rX(h]h]h]h]h]uhM)hhh]rXhXTest ExecutionrXrX}rX(hjXhjXubaubj[)rX}rX(hUhj{XhNhj^h}rX(h]h]h]h]h]uhNhhh]rXj)rX}rX(hUh}rX(jX-h]h]h]h]h]uhjXh]rX(j)rX}rX(hX.Select the menu option to run ‘timer_TEST’rXh}rX(h]h]h]h]h]uhjXh]rXh)rX}rX(hjXhjXhjW5hhh}rX(h]h]h]h]h]uhM*h]rXhX.Select the menu option to run ‘timer_TEST’rXrX}rX(hjXhjXubaubahjubj)rX}rX(hX%Verify the test log on serial consolerXh}rX(h]h]h]h]h]uhjXh]rXh)rX}rX(hjXhjXhjW5hhh}rX(h]h]h]h]h]uhM+h]rXhX%Verify the test log on serial consolerXrX}rX(hjXhjXubaubahjubj)rX}rX(hX>Verify the time that tests waits counting the timer interruptsrXh}rX(h]h]h]h]h]uhjXh]rXh)rX}rX(hjXhjXhjW5hhh}rX(h]h]h]h]h]uhM,h]rXhX>Verify the time that tests waits counting the timer interruptsrXrX}rX(hjXhjXubaubahjubj)rX}rX(hXdPress 'y' if the test waits for 2secs or press any key in case wait time is more or less than 2secs h}rX(h]h]h]h]h]uhjXh]rXh)rX}rX(hXcPress 'y' if the test waits for 2secs or press any key in case wait time is more or less than 2secsrXhjXhjW5hhh}rX(h]h]h]h]h]uhM-h]rXhXcPress 'y' if the test waits for 2secs or press any key in case wait time is more or less than 2secsrXrX}rX(hjXhjXubaubahjubehjubaubeubh)rX}rX(hUhKhj4XhjW5hhh}rX(h]rXXtest logrXah]h]h]rXUid184rXah]uhM0hhh]rX(h)rX}rX(hXTest LogrXhjXhjW5hhh}rX(h]h]h]h]h]uhM0hhh]rXhXTest LogrXrX}rX(hjXhjXubaubh)rX}rX(hX(Sample log for Timer test is shown belowrXhjXhjW5hhh}rX(h]h]h]h]h]uhM1hhh]rXhX(Sample log for Timer test is shown belowrXrX}rX(hjXhjXubaubj()rX}rX(hXS********************************************* * 1MSEC TIMER Test * ********************************************* Timer Configured for 1msec interrupt Enabling Timer Interrupts Test waits till Timer generates 2000 (~2secs) interrupts Press 'y' if timer ran for correct duration, else any other key:y Test PASSED!hjXhjW5hj+h}rX(hhh]h]h]h]h]uhM+hhh]rXhXS********************************************* * 1MSEC TIMER Test * ********************************************* Timer Configured for 1msec interrupt Enabling Timer Interrupts Test waits till Timer generates 2000 (~2secs) interrupts Press 'y' if timer ran for correct duration, else any other key:y Test PASSED!rXrX}rX(hUhjXubaubj1)rX}rX(hUhjXhjW5hj4h}rX(h]h]h]h]h]uhM@hhh]rXj7)rX}rX(hUj:KhjXhjW5hhh}rX(h]h]h]h]h]uhKhhh]ubaubeubeubh)rX}rX(hUhjT5hjW5hhh}rX(h]h]h]h]rXU uart-testrXah]rXhauhMChhh]rX(h)rX}rX(hX UART TestrXhjXhjW5hhh}rX(h]h]h]h]h]uhMChhh]rXhX UART TestrXrX}rX(hjXhjXubaubh)rX}rX(hXThis test verifies the UART serial port by sending a test string to the UART serial console and reading user input to confirm the test result.rXhjXhjW5hhh}rX(h]h]h]h]h]uhMDhhh]rXhXThis test verifies the UART serial port by sending a test string to the UART serial console and reading user input to confirm the test result.rXrX}rX(hjXhjXubaubh)rY}rY(hUhKhjXhjW5hhh}rY(h]rYXtest accessoriesrYah]h]h]rYUid185rYah]uhMHhhh]rY(h)rY}r Y(hXTest Accessoriesr YhjYhjW5hhh}r Y(h]h]h]h]h]uhMHhhh]r YhXTest Accessoriesr YrY}rY(hj YhjYubaubh)rY}rY(hXUART serial cable. Different platforms may need different cable for verifying the serial port. Refer to HW manual for more details.rYhjYhjW5hhh}rY(h]h]h]h]h]uhMIhhh]rYhXUART serial cable. Different platforms may need different cable for verifying the serial port. Refer to HW manual for more details.rYrY}rY(hjYhjYubaubeubh)rY}rY(hUhKhjXhjW5hhh}rY(h]rYX test setuprYah]h]h]rYUid186rYah]uhMNhhh]rY(h)r Y}r!Y(hX Test Setupr"YhjYhjW5hhh}r#Y(h]h]h]h]h]uhMNhhh]r$YhX Test Setupr%Yr&Y}r'Y(hj"Yhj Yubaubj[)r(Y}r)Y(hUhjYhNhj^h}r*Y(h]h]h]h]h]uhNhhh]r+Y(j)r,Y}r-Y(hUh}r.Y(jX-h]h]h]h]h]uhj(Yh]r/Y(j)r0Y}r1Y(hX;Connect the UART serial cable between the board and host PCr2Yh}r3Y(h]h]h]h]h]uhj,Yh]r4Yh)r5Y}r6Y(hj2Yhj0YhjW5hhh}r7Y(h]h]h]h]h]uhMOh]r8YhX;Connect the UART serial cable between the board and host PCr9Yr:Y}r;Y(hj2Yhj5Yubaubahjubj)rYh}r?Y(h]h]h]h]h]uhj,Yh]r@Yh)rAY}rBY(hj>YhjYhjAYubaubahjubehjubj()rHY}rIY(hXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Nonehj(Yhj+h}rJY(hhh]h]h]h]h]uhMIh]rKYhXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - NonerLYrMY}rNY(hUhjHYubaubj)rOY}rPY(hUh}rQY(jX-h]h]h]h]h]uhj(Yh]rRYj)rSY}rTY(hXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms. h}rUY(h]h]h]h]h]uhjOYh]rVYh)rWY}rXY(hXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms.rYYhjSYhjW5hhh}rZY(h]h]h]h]h]uhMYh]r[YhXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms.r\Yr]Y}r^Y(hjYYhjWYubaubahjubahjubeubeubh)r_Y}r`Y(hUhKhjXhjW5hhh}raY(h]rbYXtest executionrcYah]h]h]rdYUid187reYah]uhM]hhh]rfY(h)rgY}rhY(hXTest ExecutionriYhj_YhjW5hhh}rjY(h]h]h]h]h]uhM]hhh]rkYhXTest ExecutionrlYrmY}rnY(hjiYhjgYubaubj[)roY}rpY(hUhj_YhNhj^h}rqY(h]h]h]h]h]uhNhhh]rrYj)rsY}rtY(hUh}ruY(jX-h]h]h]h]h]uhjoYh]rvY(j)rwY}rxY(hX-Select the menu option to run ‘uart_TEST’ryYh}rzY(h]h]h]h]h]uhjsYh]r{Yh)r|Y}r}Y(hjyYhjwYhjW5hhh}r~Y(h]h]h]h]h]uhM^h]rYhX-Select the menu option to run ‘uart_TEST’rYrY}rY(hjyYhj|Yubaubahjubj)rY}rY(hXVerify the test log on serial console. Verify the test log on all the serial consoles in case the HW platform supports more than one serial port h}rY(h]h]h]h]h]uhjsYh]rYh)rY}rY(hXVerify the test log on serial console. Verify the test log on all the serial consoles in case the HW platform supports more than one serial portrYhjYhjW5hhh}rY(h]h]h]h]h]uhM_h]rYhXVerify the test log on serial console. Verify the test log on all the serial consoles in case the HW platform supports more than one serial portrYrY}rY(hjYhjYubaubahjubehjubaubeubh)rY}rY(hUhKhjXhjW5hhh}rY(h]rYXtest logrYah]h]h]rYUid188rYah]uhMchhh]rY(h)rY}rY(hXTest LogrYhjYhjW5hhh}rY(h]h]h]h]h]uhMchhh]rYhXTest LogrYrY}rY(hjYhjYubaubh)rY}rY(hX#Sample UART test log is shown belowrYhjYhjW5hhh}rY(h]h]h]h]h]uhMdhhh]rYhX#Sample UART test log is shown belowrYrY}rY(hjYhjYubaubj()rY}rY(hX********************************************* * UART Test * ********************************************* Testing UART print to console at 115.2k baud rate Press 'y' to verify pass: y Received: y Test PASSED!hjYhjW5hj+h}rY(hhh]h]h]h]h]uhM^hhh]rYhX********************************************* * UART Test * ********************************************* Testing UART print to console at 115.2k baud rate Press 'y' to verify pass: y Received: y Test PASSED!rYrY}rY(hUhjYubaubj1)rY}rY(hUhjYhjW5hj4h}rY(h]h]h]h]h]uhMrhhh]rYj7)rY}rY(hUj:KhjYhjW5hhh}rY(h]h]h]h]h]uhKhhh]ubaubeubeubh)rY}rY(hUhjT5hjW5hhh}rY(h]h]h]h]rYU uart2usb-testrYah]rYhoauhMuhhh]rY(h)rY}rY(hX UART2USB TestrYhjYhjW5hhh}rY(h]h]h]h]h]uhMuhhh]rYhX UART2USB TestrYrY}rY(hjYhjYubaubh)rY}rY(hXDThis test verifies the UART to USB serial port interface on K2G EVM.rYhjYhjW5hhh}rY(h]h]h]h]h]uhMvhhh]rYhXDThis test verifies the UART to USB serial port interface on K2G EVM.rYrY}rY(hjYhjYubaubh)rY}rY(hUhKhjYhjW5hhh}rY(h]rYXtest accessoriesrYah]h]h]rYUid189rYah]uhMyhhh]rY(h)rY}rY(hXTest AccessoriesrYhjYhjW5hhh}rY(h]h]h]h]h]uhMyhhh]rYhXTest AccessoriesrYrY}rY(hjYhjYubaubh)rY}rY(hXmini USB cablerYhjYhjW5hhh}rY(h]h]h]h]h]uhMzhhh]rYhXmini USB cablerYrY}rY(hjYhjYubaubeubh)rY}rY(hUhKhjYhjW5hhh}rY(h]rYX test setuprYah]h]h]rYUid190rYah]uhM}hhh]rY(h)rY}rY(hX Test SetuprYhjYhjW5hhh}rY(h]h]h]h]h]uhM}hhh]rYhX Test SetuprYrY}rY(hjYhjYubaubj[)rY}rY(hUhjYhjW5hj^h}rY(h]h]h]h]h]uhNhhh]rY(j)rY}rY(hUh}rY(jX-h]h]h]h]h]uhjYh]rY(j)rY}rY(hXAConnect the UART serial cable between the board (J23) and host PCrYh}rY(h]h]h]h]h]uhjYh]rZh)rZ}rZ(hjYhjYhjW5hhh}rZ(h]h]h]h]h]uhM~h]rZhXAConnect the UART serial cable between the board (J23) and host PCrZrZ}rZ(hjYhjZubaubahjubj)rZ}r Z(hXESetup serial console application on host PC with below configurationsr Zh}r Z(h]h]h]h]h]uhjYh]r Zh)r Z}rZ(hj ZhjZhjW5hhh}rZ(h]h]h]h]h]uhMh]rZhXESetup serial console application on host PC with below configurationsrZrZ}rZ(hj Zhj Zubaubahjubehjubj()rZ}rZ(hXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - NonehjYhj+h}rZ(hhh]h]h]h]h]uhMxh]rZhXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - NonerZrZ}rZ(hUhjZubaubeubeubh)rZ}rZ(hUhKhjYhjW5hhh}rZ(h]rZXtest executionrZah]h]h]r ZUid191r!Zah]uhMhhh]r"Z(h)r#Z}r$Z(hXTest Executionr%ZhjZhjW5hhh}r&Z(h]h]h]h]h]uhMhhh]r'ZhXTest Executionr(Zr)Z}r*Z(hj%Zhj#Zubaubj[)r+Z}r,Z(hUhjZhNhj^h}r-Z(h]h]h]h]h]uhNhhh]r.Zj)r/Z}r0Z(hUh}r1Z(jX-h]h]h]h]h]uhj+Zh]r2Z(j)r3Z}r4Z(hX1Select the menu option to run ‘uart2usb_TEST’r5Zh}r6Z(h]h]h]h]h]uhj/Zh]r7Zh)r8Z}r9Z(hj5Zhj3ZhjW5hhh}r:Z(h]h]h]h]h]uhMh]r;ZhX1Select the menu option to run ‘uart2usb_TEST’rZ(hj5Zhj8Zubaubahjubj)r?Z}r@Z(hX&Verify the test log on serial console h}rAZ(h]h]h]h]h]uhj/Zh]rBZh)rCZ}rDZ(hX%Verify the test log on serial consolerEZhj?ZhjW5hhh}rFZ(h]h]h]h]h]uhMh]rGZhX%Verify the test log on serial consolerHZrIZ}rJZ(hjEZhjCZubaubahjubehjubaubeubh)rKZ}rLZ(hUhKhjYhjW5hhh}rMZ(h]rNZXtest logrOZah]h]h]rPZUid192rQZah]uhMhhh]rRZ(h)rSZ}rTZ(hXTest LogrUZhjKZhjW5hhh}rVZ(h]h]h]h]h]uhMhhh]rWZhXTest LogrXZrYZ}rZZ(hjUZhjSZubaubh)r[Z}r\Z(hX+Sample log for UART2USB test is shown belowr]ZhjKZhjW5hhh}r^Z(h]h]h]h]h]uhMhhh]r_ZhX+Sample log for UART2USB test is shown belowr`ZraZ}rbZ(hj]Zhj[Zubaubh)rcZ}rdZ(hXLog on the main test console ::hjKZhjW5hhh}reZ(h]h]h]h]h]uhMhhh]rfZhXLog on the main test consolergZrhZ}riZ(hXLog on the main test consolehjcZubaubj()rjZ}rkZ(hX************************************************* * UART2USB Test * ************************************************* Check the messages on UART2USB console Received: y Test PASSED!hjKZhjW5hj+h}rlZ(hhh]h]h]h]h]uhMhhh]rmZhX************************************************* * UART2USB Test * ************************************************* Check the messages on UART2USB console Received: y Test PASSED!rnZroZ}rpZ(hUhjjZubaubj1)rqZ}rrZ(hUhjKZhjW5hj4h}rsZ(h]h]h]h]h]uhMhhh]rtZj7)ruZ}rvZ(hUj:KhjqZhjW5hhh}rwZ(h]h]h]h]h]uhKhhh]ubaubh)rxZ}ryZ(hX&Log on the UART to USB test console ::hjKZhjW5hhh}rzZ(h]h]h]h]h]uhMhhh]r{ZhX#Log on the UART to USB test consoler|Zr}Z}r~Z(hX#Log on the UART to USB test consolehjxZubaubj()rZ}rZ(hXMTesting UART print to console at 115.2k baud rate Press 'y' to verify pass: yhjKZhjW5hj+h}rZ(hhh]h]h]h]h]uhMhhh]rZhXMTesting UART print to console at 115.2k baud rate Press 'y' to verify pass: yrZrZ}rZ(hUhjZubaubj1)rZ}rZ(hUhjKZhjW5hj4h}rZ(h]h]h]h]h]uhMhhh]rZj7)rZ}rZ(hUj:KhjZhjW5hhh}rZ(h]h]h]h]h]uhKhhh]ubaubeubeubh)rZ}rZ(hUhjT5hjW5hhh}rZ(h]h]h]h]rZUusb-device-testrZah]rZhauhMhhh]rZ(h)rZ}rZ(hXUSB Device TestrZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhXUSB Device TestrZrZ}rZ(hjZhjZubaubh)rZ}rZ(hXKThis test verifies USB device mode operation of the HW platform under test. USB interface functions as USB mass storage device during the test. On-board memory is used as storage media which can be accessed from USB host PC after successful enumeration of the device. USB interface operates at high-speed (USB 2.0) during the test.rZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhXKThis test verifies USB device mode operation of the HW platform under test. USB interface functions as USB mass storage device during the test. On-board memory is used as storage media which can be accessed from USB host PC after successful enumeration of the device. USB interface operates at high-speed (USB 2.0) during the test.rZrZ}rZ(hjZhjZubaubh)rZ}rZ(hUhKhjZhjW5hhh}rZ(h]rZXtest accessoriesrZah]h]h]rZUid193rZah]uhMhhh]rZ(h)rZ}rZ(hXTest AccessoriesrZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhXTest AccessoriesrZrZ}rZ(hjZhjZubaubh)rZ}rZ(hX USB cablerZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhX USB cablerZrZ}rZ(hjZhjZubaubeubh)rZ}rZ(hUhKhjZhjW5hhh}rZ(h]rZX test setuprZah]h]h]rZUid194rZah]uhMhhh]rZ(h)rZ}rZ(hX Test SetuprZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhX Test SetuprZrZ}rZ(hjZhjZubaubh)rZ}rZ(hXConnect USB device port of the board to host PC. Check below table for the details of USB device port used by the test on different platforms.rZhjZhjW5hhh}rZ(h]h]h]h]h]uhMhhh]rZhXConnect USB device port of the board to host PC. Check below table for the details of USB device port used by the test on different platforms.rZrZ}rZ(hjZhjZubaubj)rZ}rZ(hUhjZhjW5hj h}rZ(h]h]h]h]h]uhNhhh]rZj)rZ}rZ(hUh}rZ(h]h]h]h]h]UcolsKuhjZh]rZ(j)rZ}rZ(hUh}rZ(h]h]h]h]h]UcolwidthKuhjZh]hjubj)rZ}rZ(hUh}rZ(h]h]h]h]h]UcolwidthKuhjZh]hjubj3)rZ}rZ(hUh}rZ(h]h]h]h]h]uhjZh]rZj8)rZ}rZ(hUh}rZ(h]h]h]h]h]uhjZh]rZ(j=)rZ}rZ(hUh}rZ(h]h]h]h]h]uhjZh]rZh)rZ}rZ(hX HW PlatformrZhjZhjW5hhh}rZ(h]h]h]h]h]uhMh]rZhX HW PlatformrZrZ}rZ(hjZhjZubaubahjJubj=)rZ}rZ(hUh}rZ(h]h]h]h]h]uhjZh]rZh)rZ}rZ(hXUSB Device PortrZhjZhjW5hhh}rZ(h]h]h]h]h]uhMh]rZhXUSB Device PortrZr[}r[(hjZhjZubaubahjJubehjubahjubj)r[}r[(hUh}r[(h]h]h]h]h]uhjZh]r[(j8)r[}r[(hUh}r[(h]h]h]h]h]uhj[h]r [(j=)r [}r [(hUh}r [(h]h]h]h]h]uhj[h]r [h)r[}r[(hX am65xx_evmr[hj [hjW5hhh}r[(h]h]h]h]h]uhMh]r[hX am65xx_evmr[r[}r[(hj[hj[ubaubahjJubj=)r[}r[(hUh}r[(h]h]h]h]h]uhj[h]r[h)r[}r[(hXJ3 on CP boardr[hj[hjW5hhh}r[(h]h]h]h]h]uhMh]r[hXJ3 on CP boardr[r [}r![(hj[hj[ubaubahjJubehjubj8)r"[}r#[(hUh}r$[(h]h]h]h]h]uhj[h]r%[(j=)r&[}r'[(hUh}r([(h]h]h]h]h]uhj"[h]r)[h)r*[}r+[(hX am65xx_idkr,[hj&[hjW5hhh}r-[(h]h]h]h]h]uhMh]r.[hX am65xx_idkr/[r0[}r1[(hj,[hj*[ubaubahjJubj=)r2[}r3[(hUh}r4[(h]h]h]h]h]uhj"[h]r5[h)r6[}r7[(hXJ3 on CP boardr8[hj2[hjW5hhh}r9[(h]h]h]h]h]uhMh]r:[hXJ3 on CP boardr;[r<[}r=[(hj8[hj6[ubaubahjJubehjubehjUubehjVubaubeubh)r>[}r?[(hUhKhjZhjW5hhh}r@[(h]rA[Xtest executionrB[ah]h]h]rC[Uid195rD[ah]uhMhhh]rE[(h)rF[}rG[(hXTest ExecutionrH[hj>[hjW5hhh}rI[(h]h]h]h]h]uhMhhh]rJ[hXTest ExecutionrK[rL[}rM[(hjH[hjF[ubaubj[)rN[}rO[(hUhj>[hNhj^h}rP[(h]h]h]h]h]uhNhhh]rQ[j)rR[}rS[(hUh}rT[(jX-h]h]h]h]h]uhjN[h]rU[(j)rV[}rW[(hX2Select the menu option to run ‘usbDevice_TEST’rX[h}rY[(h]h]h]h]h]uhjR[h]rZ[h)r[[}r\[(hjX[hjV[hjW5hhh}r][(h]h]h]h]h]uhMh]r^[hX2Select the menu option to run ‘usbDevice_TEST’r_[r`[}ra[(hjX[hj[[ubaubahjubj)rb[}rc[(hX%Verify the test log on serial consolerd[h}re[(h]h]h]h]h]uhjR[h]rf[h)rg[}rh[(hjd[hjb[hjW5hhh}ri[(h]h]h]h]h]uhMh]rj[hX%Verify the test log on serial consolerk[rl[}rm[(hjd[hjg[ubaubahjubj)rn[}ro[(hX/Check the USB device enumeration on the host PCrp[h}rq[(h]h]h]h]h]uhjR[h]rr[h)rs[}rt[(hjp[hjn[hjW5hhh}ru[(h]h]h]h]h]uhMh]rv[hX/Check the USB device enumeration on the host PCrw[rx[}ry[(hjp[hjs[ubaubahjubj)rz[}r{[(hXHVerify the data write/read access to new drive displayed on the host PC h}r|[(h]h]h]h]h]uhjR[h]r}[h)r~[}r[(hXGVerify the data write/read access to new drive displayed on the host PCr[hjz[hjW5hhh}r[(h]h]h]h]h]uhMh]r[hXGVerify the data write/read access to new drive displayed on the host PCr[r[}r[(hj[hj~[ubaubahjubehjubaubeubh)r[}r[(hUhKhjZhjW5hhh}r[(h]r[Xtest logr[ah]h]h]r[Uid196r[ah]uhMhhh]r[(h)r[}r[(hXTest Logr[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hXTest Logr[r[}r[(hj[hj[ubaubh)r[}r[(hX-Sample log for USB device test is shown belowr[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hX-Sample log for USB device test is shown belowr[r[}r[(hj[hj[ubaubj()r[}r[(hX#********************************************* * USB Device Test * ********************************************* Running USB Device test... USB device MSC Application!! Passed RAMDISKUtilsInit function Done configuring USB driver and its interrupts. Ready to usehj[hjW5hj+h}r[(hhh]h]h]h]h]uhMhhh]r[hX#********************************************* * USB Device Test * ********************************************* Running USB Device test... USB device MSC Application!! Passed RAMDISKUtilsInit function Done configuring USB driver and its interrupts. Ready to user[r[}r[(hUhj[ubaubj1)r[}r[(hUhj[hjW5hj4h}r[(h]h]h]h]h]uhMhhh]r[j7)r[}r[(hUj:Khj[hjW5hhh}r[(h]h]h]h]h]uhKhhh]ubaubeubeubh)r[}r[(hUhjT5hjW5hhh}r[(h]h]h]h]r[U usb-host-testr[ah]r[hauhMhhh]r[(h)r[}r[(hX USB Host Testr[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hX USB Host Testr[r[}r[(hj[hj[ubaubh)r[}r[(hXRThis test verifies USB host mode operation of the HW platform under test. USB interface functions as USB mass storage host during the test. USB device connected to the board will be enumerated, a file will be created, written with test data and read back to verify the data. USB interface operates at high-speed (USB 2.0) during the test.r[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hXRThis test verifies USB host mode operation of the HW platform under test. USB interface functions as USB mass storage host during the test. USB device connected to the board will be enumerated, a file will be created, written with test data and read back to verify the data. USB interface operates at high-speed (USB 2.0) during the test.r[r[}r[(hj[hj[ubaubh)r[}r[(hUhKhj[hjW5hhh}r[(h]r[Xtest accessoriesr[ah]h]h]r[Uid197r[ah]uhMhhh]r[(h)r[}r[(hXTest Accessoriesr[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hXTest Accessoriesr[r[}r[(hj[hj[ubaubh)r[}r[(hX8USB OTG pen drive or normal USB pen drive with OTG cabler[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hX8USB OTG pen drive or normal USB pen drive with OTG cabler[r[}r[(hj[hj[ubaubeubh)r[}r[(hUhKhj[hjW5hhh}r[(h]r[X test setupr[ah]h]h]r[Uid198r[ah]uhMhhh]r[(h)r[}r[(hX Test Setupr[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hX Test Setupr[r[}r[(hj[hj[ubaubh)r[}r[(hXConnect USB pen drive to host port of the board. Check below table for the details of USB host port used by the test on different platforms.r[hj[hjW5hhh}r[(h]h]h]h]h]uhMhhh]r[hXConnect USB pen drive to host port of the board. Check below table for the details of USB host port used by the test on different platforms.r[r[}r[(hj[hj[ubaubj)r[}r[(hUhj[hjW5hj h}r[(h]h]h]h]h]uhNhhh]r[j)r[}r[(hUh}r[(h]h]h]h]h]UcolsKuhj[h]r[(j)r[}r[(hUh}r[(h]h]h]h]h]UcolwidthKuhj[h]hjubj)r[}r[(hUh}r\(h]h]h]h]h]UcolwidthKuhj[h]hjubj3)r\}r\(hUh}r\(h]h]h]h]h]uhj[h]r\j8)r\}r\(hUh}r\(h]h]h]h]h]uhj\h]r\(j=)r \}r \(hUh}r \(h]h]h]h]h]uhj\h]r \h)r \}r\(hX HW Platformr\hj \hjW5hhh}r\(h]h]h]h]h]uhMh]r\hX HW Platformr\r\}r\(hj\hj \ubaubahjJubj=)r\}r\(hUh}r\(h]h]h]h]h]uhj\h]r\h)r\}r\(hX USB Host Portr\hj\hjW5hhh}r\(h]h]h]h]h]uhMh]r\hX USB Host Portr\r\}r \(hj\hj\ubaubahjJubehjubahjubj)r!\}r"\(hUh}r#\(h]h]h]h]h]uhj[h]r$\(j8)r%\}r&\(hUh}r'\(h]h]h]h]h]uhj!\h]r(\(j=)r)\}r*\(hUh}r+\(h]h]h]h]h]uhj%\h]r,\h)r-\}r.\(hX am65xx_evmr/\hj)\hjW5hhh}r0\(h]h]h]h]h]uhMh]r1\hX am65xx_evmr2\r3\}r4\(hj/\hj-\ubaubahjJubj=)r5\}r6\(hUh}r7\(h]h]h]h]h]uhj%\h]r8\h)r9\}r:\(hXJ3 on CP boardr;\hj5\hjW5hhh}r<\(h]h]h]h]h]uhMh]r=\hXJ3 on CP boardr>\r?\}r@\(hj;\hj9\ubaubahjJubehjubj8)rA\}rB\(hUh}rC\(h]h]h]h]h]uhj!\h]rD\(j=)rE\}rF\(hUh}rG\(h]h]h]h]h]uhjA\h]rH\h)rI\}rJ\(hX am65xx_idkrK\hjE\hjW5hhh}rL\(h]h]h]h]h]uhMh]rM\hX am65xx_idkrN\rO\}rP\(hjK\hjI\ubaubahjJubj=)rQ\}rR\(hUh}rS\(h]h]h]h]h]uhjA\h]rT\h)rU\}rV\(hX#J3 on CP board. J13 on SerDes boardrW\hjQ\hjW5hhh}rX\(h]h]h]h]h]uhMh]rY\hX#J3 on CP board. J13 on SerDes boardrZ\r[\}r\\(hjW\hjU\ubaubahjJubehjubehjUubehjVubaubeubh)r]\}r^\(hUhKhj[hjW5hhh}r_\(h]r`\Xtest executionra\ah]h]h]rb\Uid199rc\ah]uhMhhh]rd\(h)re\}rf\(hXTest Executionrg\hj]\hjW5hhh}rh\(h]h]h]h]h]uhMhhh]ri\hXTest Executionrj\rk\}rl\(hjg\hje\ubaubj[)rm\}rn\(hUhj]\hNhj^h}ro\(h]h]h]h]h]uhNhhh]rp\j)rq\}rr\(hUh}rs\(jX-h]h]h]h]h]uhjm\h]rt\(j)ru\}rv\(hX0Select the menu option to run ‘usbHost_TEST’rw\h}rx\(h]h]h]h]h]uhjq\h]ry\h)rz\}r{\(hjw\hju\hjW5hhh}r|\(h]h]h]h]h]uhMh]r}\hX0Select the menu option to run ‘usbHost_TEST’r~\r\}r\(hjw\hjz\ubaubahjubj)r\}r\(hXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkh}r\(h]h]h]h]h]uhjq\h]r\h)r\}r\(hXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkr\hj\hjW5hhh}r\(h]h]h]h]h]uhMh]r\hXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkr\r\}r\(hj\hj\ubaubahjubj)r\}r\(hX&Verify the test log on serial console h}r\(h]h]h]h]h]uhjq\h]r\h)r\}r\(hX%Verify the test log on serial consoler\hj\hjW5hhh}r\(h]h]h]h]h]uhMh]r\hX%Verify the test log on serial consoler\r\}r\(hj\hj\ubaubahjubehjubaubeubh)r\}r\(hUhKhj[hjW5hhh}r\(h]r\Xtest logr\ah]h]h]r\Uid200r\ah]uhMhhh]r\(h)r\}r\(hXTest Logr\hj\hjW5hhh}r\(h]h]h]h]h]uhMhhh]r\hXTest Logr\r\}r\(hj\hj\ubaubh)r\}r\(hX9Sample log for USB host test on am65xx_evm is shown belowr\hj\hjW5hhh}r\(h]h]h]h]h]uhMhhh]r\hX9Sample log for USB host test on am65xx_evm is shown belowr\r\}r\(hj\hj\ubaubj()r\}r\(hXs************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedhj\hjW5hj+h}r\(hhh]h]h]h]h]uhMhhh]r\hXs************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedr\r\}r\(hUhj\ubaubj1)r\}r\(hUhj\hjW5hj4h}r\(h]h]h]h]h]uhMhhh]r\j7)r\}r\(hUj:Khj\hjW5hhh}r\(h]h]h]h]h]uhKhhh]ubaubh)r\}r\(hXBSample log for USB host test on am65xx_idk CP board is shown belowr\hj\hjW5hhh}r\(h]h]h]h]h]uhMhhh]r\hXBSample log for USB host test on am65xx_idk CP board is shown belowr\r\}r\(hj\hj\ubaubj()r\}r\(hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 1 Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedhj\hjW5hj+h}r\(hhh]h]h]h]h]uhM hhh]r\hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 1 Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedr\r\}r\(hUhj\ubaubj1)r\}r\(hUhj\hjW5hj4h}r\(h]h]h]h]h]uhM+hhh]r\j7)r\}r\(hUj:Khj\hjW5hhh}r\(h]h]h]h]h]uhKhhh]ubaubh)r\}r\(hXFSample log for USB host test on am65xx_idk SerDes board is shown belowr\hj\hjW5hhh}r\(h]h]h]h]h]uhM-hhh]r\hXFSample log for USB host test on am65xx_idk SerDes board is shown belowr\r\}r\(hj\hj\ubaubj()r\}r\(hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 2 Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedhj\hjW5hj+h}r\(hhh]h]h]h]h]uhM'hhh]r\hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 2 Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully USB Host test Passedr\r\}r\(hUhj\ubaubj1)r\}r\(hUhj\hjW5hj4h}r\(h]h]h]h]h]uhMEhhh]r\j7)r\}r\(hUj:Khj\hjW5hhh}r\(h]h]h]h]h]uhKhhh]ubaubeubeubeubh)r\}r\(hUhjE5hjW5hhh}r\(h]h]h]h]r\U stress-testsr\ah]r\h1auhMHhhh]r\(h)r\}r\(hX Stress Testsr\hj\hjW5hhh}r\(h]h]h]h]h]uhMHhhh]r\hX Stress Testsr\r\}r\(hj\hj\ubaubh)r\}r\(hXThis section describes the test procedure and setup for diagnostic stress tests. Stress test execution is done based on the type of interface as listed belowr\hj\hjW5hhh}r\(h]h]h]h]h]uhMIhhh]r\hXThis section describes the test procedure and setup for diagnostic stress tests. Stress test execution is done based on the type of interface as listed belowr\r]}r](hj\hj\ubaubj[)r]}r](hUhj\hNhj^h}r](h]h]h]h]h]uhNhhh]r]j)r]}r](hUh}r](jX-h]h]h]h]h]uhj]h]r ](j)r ]}r ](hX>Memory interfaces: Whole memory is accessed during stress testr ]h}r ](h]h]h]h]h]uhj]h]r]h)r]}r](hj ]hj ]hjW5hhh}r](h]h]h]h]h]uhMKh]r]hX>Memory interfaces: Whole memory is accessed during stress testr]r]}r](hj ]hj]ubaubahjubj)r]}r](hXWCommunication interfaces (Ethernet, UART etc): Bulk data is sent during the stress testr]h}r](h]h]h]h]h]uhj]h]r]h)r]}r](hj]hj]hjW5hhh}r](h]h]h]h]h]uhMLh]r]hXWCommunication interfaces (Ethernet, UART etc): Bulk data is sent during the stress testr]r ]}r!](hj]hj]ubaubahjubj)r"]}r#](hXpControl interfaces (On-board I2C, SPI, GPIO control interfaces): Functional test is repeated for 100 iterations h}r$](h]h]h]h]h]uhj]h]r%]h)r&]}r'](hXoControl interfaces (On-board I2C, SPI, GPIO control interfaces): Functional test is repeated for 100 iterationsr(]hj"]hjW5hhh}r)](h]h]h]h]h]uhMMh]r*]hXoControl interfaces (On-board I2C, SPI, GPIO control interfaces): Functional test is repeated for 100 iterationsr+]r,]}r-](hj(]hj&]ubaubahjubehjubaubh)r.]}r/](hXJUser confirmation for pass/fail status is disabled during the stress test.r0]hj\hjW5hhh}r1](h]h]h]h]h]uhMOhhh]r2]hXJUser confirmation for pass/fail status is disabled during the stress test.r3]r4]}r5](hj0]hj.]ubaubh)r6]}r7](hXEnter the character 'b' to break the stress test before it completes 100 iterations for control interfaces. There is no option to break the stress test before completion in case of memory and communication interfaces.r8]hj\hjW5hhh}r9](h]h]h]h]h]uhMQhhh]r:]hXEnter the character 'b' to break the stress test before it completes 100 iterations for control interfaces. There is no option to break the stress test before completion in case of memory and communication interfaces.r;]r<]}r=](hj8]hj6]ubaubh)r>]}r?](hXGOnly partial logs are provided for stress tests for better readability.r@]hj\hjW5hhh}rA](h]h]h]h]h]uhMThhh]rB]hXGOnly partial logs are provided for stress tests for better readability.rC]rD]}rE](hj@]hj>]ubaubh)rF]}rG](hUhj\hjW5hhh}rH](h]h]h]h]rI]Uboot-eeprom-stress-testrJ]ah]rK]h^auhMWhhh]rL](h)rM]}rN](hXBoot EEPROM Stress TestrO]hjF]hjW5hhh}rP](h]h]h]h]h]uhMWhhh]rQ]hXBoot EEPROM Stress TestrR]rS]}rT](hjO]hjM]ubaubh)rU]}rV](hXThis test verifies Boot EEPROM memory. All the pages of the EEPROM are written with a test pattern and read back for data verification.rW]hjF]hjW5hhh}rX](h]h]h]h]h]uhMXhhh]rY]hXThis test verifies Boot EEPROM memory. All the pages of the EEPROM are written with a test pattern and read back for data verification.rZ]r[]}r\](hjW]hjU]ubaubh)r]]}r^](hUhKhjF]hjW5hhh}r_](h]r`]Xtest accessoriesra]ah]h]h]rb]Uid201rc]ah]uhM\hhh]rd](h)re]}rf](hXTest Accessoriesrg]hj]]hjW5hhh}rh](h]h]h]h]h]uhM\hhh]ri]hXTest Accessoriesrj]rk]}rl](hjg]hje]ubaubh)rm]}rn](hX=No additional accessories are required for running this test.ro]hj]]hjW5hhh}rp](h]h]h]h]h]uhM]hhh]rq]hX=No additional accessories are required for running this test.rr]rs]}rt](hjo]hjm]ubaubeubh)ru]}rv](hUhKhjF]hjW5hhh}rw](h]rx]X test setupry]ah]h]h]rz]Uid202r{]ah]uhM`hhh]r|](h)r}]}r~](hX Test Setupr]hju]hjW5hhh}r](h]h]h]h]h]uhM`hhh]r]hX Test Setupr]r]}r](hj]hj}]ubaubh)r]}r](hXGMake sure pins 2-3 of J44 and J45 headers on AM65x CP board are shortedr]hju]hjW5hhh}r](h]h]h]h]h]uhMahhh]r]hXGMake sure pins 2-3 of J44 and J45 headers on AM65x CP board are shortedr]r]}r](hj]hj]ubaubeubh)r]}r](hUhKhjF]hjW5hhh}r](h]r]Xtest executionr]ah]h]h]r]Uid203r]ah]uhMdhhh]r](h)r]}r](hXTest Executionr]hj]hjW5hhh}r](h]h]h]h]h]uhMdhhh]r]hXTest Executionr]r]}r](hj]hj]ubaubj[)r]}r](hUhj]hNhj^h}r](h]h]h]h]h]uhNhhh]r]j)r]}r](hUh}r](jX-h]h]h]h]h]uhj]h]r](j)r]}r](hX9Select the menu option to run ‘bootEepromStress_TEST’r]h}r](h]h]h]h]h]uhj]h]r]h)r]}r](hj]hj]hjW5hhh}r](h]h]h]h]h]uhMeh]r]hX9Select the menu option to run ‘bootEepromStress_TEST’r]r]}r](hj]hj]ubaubahjubj)r]}r](hX&Verify the test log on serial console h}r](h]h]h]h]h]uhj]h]r]h)r]}r](hX%Verify the test log on serial consoler]hj]hjW5hhh}r](h]h]h]h]h]uhMfh]r]hX%Verify the test log on serial consoler]r]}r](hj]hj]ubaubahjubehjubaubeubh)r]}r](hUhKhjF]hjW5hhh}r](h]r]Xtest logr]ah]h]h]r]Uid204r]ah]uhMihhh]r](h)r]}r](hXTest Logr]hj]hjW5hhh}r](h]h]h]h]h]uhMihhh]r]hXTest Logr]r]}r](hj]hj]ubaubh)r]}r](hX5Sample log for boot EEPROM stress test is shown belowr]hj]hjW5hhh}r](h]h]h]h]h]uhMjhhh]r]hX5Sample log for boot EEPROM stress test is shown belowr]r]}r](hj]hj]ubaubj()r]}r](hX******************************************* * Boot EEPROM Stress Test * ******************************************* Verifying the Boot EEPROM interface under stress conditions... Verifying the page number - 0 Verifying the page number - 1 Verifying the page number - 2 Verifying the page number - 3 Verifying the page number - 4 Verifying the page number - 5 Verifying the page number - 6 Verifying the page number - 7 Verifying the page number - 8 Verifying the page number - 9 Verifying the page number - 10 Verifying the page number - 11 Verifying the page number - 12 Verifying the page number - 13 Verifying the page number - 14 Verifying the page number - 15 Verifying the page number - 16 Verifying the page number - 17 Verifying the page number - 18 Verifying the page number - 19 Verifying the page number - 20 ... ... ... Verifying the page number - 500 Verifying the page number - 501 Verifying the page number - 502 Verifying the page number - 503 Verifying the page number - 504 Verifying the page number - 505 Verifying the page number - 506 Verifying the page number - 507 Verifying the page number - 508 Verifying the page number - 509 Verifying the page number - 510 Verifying the page number - 511 Boot EEPROM memory verification Successful under stress conditions Clearing the Boot EEPROM pages used for testing... Clearing the Boot EEPROM pages successful...hj]hjW5hj+h}r](hhh]h]h]h]h]uhMdhhh]r]hX******************************************* * Boot EEPROM Stress Test * ******************************************* Verifying the Boot EEPROM interface under stress conditions... Verifying the page number - 0 Verifying the page number - 1 Verifying the page number - 2 Verifying the page number - 3 Verifying the page number - 4 Verifying the page number - 5 Verifying the page number - 6 Verifying the page number - 7 Verifying the page number - 8 Verifying the page number - 9 Verifying the page number - 10 Verifying the page number - 11 Verifying the page number - 12 Verifying the page number - 13 Verifying the page number - 14 Verifying the page number - 15 Verifying the page number - 16 Verifying the page number - 17 Verifying the page number - 18 Verifying the page number - 19 Verifying the page number - 20 ... ... ... Verifying the page number - 500 Verifying the page number - 501 Verifying the page number - 502 Verifying the page number - 503 Verifying the page number - 504 Verifying the page number - 505 Verifying the page number - 506 Verifying the page number - 507 Verifying the page number - 508 Verifying the page number - 509 Verifying the page number - 510 Verifying the page number - 511 Boot EEPROM memory verification Successful under stress conditions Clearing the Boot EEPROM pages used for testing... Clearing the Boot EEPROM pages successful...r]r]}r](hUhj]ubaubj1)r]}r](hUhj]hjW5hj4h}r](h]h]h]h]h]uhMhhh]r]j7)r]}r](hUj:Khj]hjW5hhh}r](h]h]h]h]h]uhKhhh]ubaubeubeubh)r]}r](hUhj\hjW5hhh}r](h]h]h]h]r]Ucurrent-monitor-stress-testr]ah]r]hauhMhhh]r](h)r]}r](hXCurrent Monitor Stress Testr]hj]hjW5hhh}r](h]h]h]h]h]uhMhhh]r]hXCurrent Monitor Stress Testr]r]}r](hj]hj]ubaubh)r]}r](hXTest reads the voltage and current values from different current monitor devices available on the board. All the current monitor devices available on the board are verified during the test. Test is repeated for 100 iterations.r]hj]hjW5hhh}r](h]h]h]h]h]uhMhhh]r]hXTest reads the voltage and current values from different current monitor devices available on the board. All the current monitor devices available on the board are verified during the test. Test is repeated for 100 iterations.r]r]}r](hj]hj]ubaubh)r]}r](hUhKhj]hjW5hhh}r](h]r]Xtest accessoriesr]ah]h]h]r]Uid205r^ah]uhMhhh]r^(h)r^}r^(hXTest Accessoriesr^hj]hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXTest Accessoriesr^r^}r ^(hj^hj^ubaubh)r ^}r ^(hX=No additional accessories are required for running this test.r ^hj]hjW5hhh}r ^(h]h]h]h]h]uhMhhh]r^hX=No additional accessories are required for running this test.r^r^}r^(hj ^hj ^ubaubeubh)r^}r^(hUhKhj]hjW5hhh}r^(h]r^X test setupr^ah]h]h]r^Uid206r^ah]uhMhhh]r^(h)r^}r^(hX Test Setupr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hX Test Setupr^r ^}r!^(hj^hj^ubaubh)r"^}r#^(hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.r$^hj^hjW5hhh}r%^(h]h]h]h]h]uhMhhh]r&^hX{For iceK2G, this test expects J16 and J17 to be connected with jumper shunts. This enables the current monitors to be used.r'^r(^}r)^(hj$^hj"^ubaubeubh)r*^}r+^(hUhKhj]hjW5hhh}r,^(h]r-^Xtest executionr.^ah]h]h]r/^Uid207r0^ah]uhMhhh]r1^(h)r2^}r3^(hXTest Executionr4^hj*^hjW5hhh}r5^(h]h]h]h]h]uhMhhh]r6^hXTest Executionr7^r8^}r9^(hj4^hj2^ubaubj[)r:^}r;^(hUhj*^hNhj^h}r<^(h]h]h]h]h]uhNhhh]r=^j)r>^}r?^(hUh}r@^(jX-h]h]h]h]h]uhj:^h]rA^(j)rB^}rC^(hX=Select the menu option to run ‘currentMonitorStress_TEST’rD^h}rE^(h]h]h]h]h]uhj>^h]rF^h)rG^}rH^(hjD^hjB^hjW5hhh}rI^(h]h]h]h]h]uhMh]rJ^hX=Select the menu option to run ‘currentMonitorStress_TEST’rK^rL^}rM^(hjD^hjG^ubaubahjubj)rN^}rO^(hX&Verify the test log on serial console h}rP^(h]h]h]h]h]uhj>^h]rQ^h)rR^}rS^(hX%Verify the test log on serial consolerT^hjN^hjW5hhh}rU^(h]h]h]h]h]uhMh]rV^hX%Verify the test log on serial consolerW^rX^}rY^(hjT^hjR^ubaubahjubehjubaubeubh)rZ^}r[^(hUhKhj]hjW5hhh}r\^(h]r]^Xtest logr^^ah]h]h]r_^Uid208r`^ah]uhMhhh]ra^(h)rb^}rc^(hXTest Logrd^hjZ^hjW5hhh}re^(h]h]h]h]h]uhMhhh]rf^hXTest Logrg^rh^}ri^(hjd^hjb^ubaubh)rj^}rk^(hX9Sample log for current monitor stress test is shown belowrl^hjZ^hjW5hhh}rm^(h]h]h]h]h]uhMhhh]rn^hX9Sample log for current monitor stress test is shown belowro^rp^}rq^(hjl^hjj^ubaubj()rr^}rs^(hX^********************************************** * Current Monitor Test * ********************************************** Running Current Monitor Test in Stress Mode for 100 Number of Times... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1003mV Reading the Power register... Power = 915mW Reading the Current register... Current = 11mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 4mV Reading the Bus Voltage register... Bus Voltage = 998mV Reading the Power register... Power = 21282mW Reading the Current register... Current = 425mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1002mV Reading the Power register... Power = 503mW Reading the Current register... Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 3338mV Reading the Power register... Power = 2670mW Reading the Current register... Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1800mV Reading the Power register... Power = 3204mW Reading the Current register... Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage = 1797mV Reading the Power register... Power = 15713mW Reading the Current register... Current = 70mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1197mV Reading the Power register... Power = 1388mW Reading the Current register... Current = 66mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 689mW Reading the Current register... Current = 10mA Iteration : 1 Current Monitor Test Passed ... ... ... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1003mV Reading the Power register... Power = 915mW Reading the Current register... Current = 12mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 4mV Reading the Bus Voltage register... Bus Voltage = 998mV Reading the Power register... Power = 21282mW Reading the Current register... Current = 425mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1002mV Reading the Power register... Power = 503mW Reading the Current register... Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 3337mV Reading the Power register... Power = 2860mW Reading the Current register... Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1800mV Reading the Power register... Power = 3204mW Reading the Current register... Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage = 1797mV Reading the Power register... Power = 15789mW Reading the Current register... Current = 70mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 1388mW Reading the Current register... Current = 66mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 689mW Reading the Current register... Current = 10mA Iteration : 100 Current Monitor Test Passed Current Monitor Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASShjZ^hjW5hj+h}rt^(hhh]h]h]h]h]uhMhhh]ru^hX^********************************************** * Current Monitor Test * ********************************************** Running Current Monitor Test in Stress Mode for 100 Number of Times... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1003mV Reading the Power register... Power = 915mW Reading the Current register... Current = 11mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 4mV Reading the Bus Voltage register... Bus Voltage = 998mV Reading the Power register... Power = 21282mW Reading the Current register... Current = 425mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1002mV Reading the Power register... Power = 503mW Reading the Current register... Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 3338mV Reading the Power register... Power = 2670mW Reading the Current register... Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1800mV Reading the Power register... Power = 3204mW Reading the Current register... Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage = 1797mV Reading the Power register... Power = 15713mW Reading the Current register... Current = 70mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1197mV Reading the Power register... Power = 1388mW Reading the Current register... Current = 66mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 689mW Reading the Current register... Current = 10mA Iteration : 1 Current Monitor Test Passed ... ... ... Verifying Device VDD_CORE at Address - 0x40 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1003mV Reading the Power register... Power = 915mW Reading the Current register... Current = 12mA Verifying Device VDD_MCU at Address - 0x41 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 4mV Reading the Bus Voltage register... Bus Voltage = 998mV Reading the Power register... Power = 21282mW Reading the Current register... Current = 425mA Verifying Device VDD_MPU at Address - 0x42 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1002mV Reading the Power register... Power = 503mW Reading the Current register... Current = 7mA Verifying Device SoC_DVDD3V3 at Address - 0x43 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 3337mV Reading the Power register... Power = 2860mW Reading the Current register... Current = 18mA Verifying Device SoC_DVDD1V8 at Address - 0x44 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1800mV Reading the Power register... Power = 3204mW Reading the Current register... Current = 26mA Verifying Device SoC_AVDD1V8 at Address - 0x45 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 3mV Reading the Bus Voltage register... Bus Voltage = 1797mV Reading the Power register... Power = 15789mW Reading the Current register... Current = 70mA Verifying Device SoC_VDDS_DDR at Address - 0x46 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 1388mW Reading the Current register... Current = 66mA Verifying Device VDD_DDR at Address - 0x47 Setting the configuration register... Setting the calibration register... Reading the Shunt Voltage register... Shunt Voltage = 0mV Reading the Bus Voltage register... Bus Voltage = 1198mV Reading the Power register... Power = 689mW Reading the Current register... Current = 10mA Iteration : 100 Current Monitor Test Passed Current Monitor Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASSrv^rw^}rx^(hUhjr^ubaubj1)ry^}rz^(hUhjZ^hjW5hj4h}r{^(h]h]h]h]h]uhMhhh]r|^j7)r}^}r~^(hUj:Khjy^hjW5hhh}r^(h]h]h]h]h]uhKhhh]ubaubeubeubh)r^}r^(hUhj\hjW5hhh}r^(h]h]h]h]r^Uemac-stress-testr^ah]r^hauhMhhh]r^(h)r^}r^(hXEMAC Stress Testr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXEMAC Stress Testr^r^}r^(hj^hj^ubaubh)r^}r^(hXThis test verifies the EMAC Ethernet port on HW platform under test. Ethernet link and data transmit/receive are verified during this test. Ethernet interface is configured for 100mbps speed and 10240 packets are sent/received during the test.r^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXThis test verifies the EMAC Ethernet port on HW platform under test. Ethernet link and data transmit/receive are verified during this test. Ethernet interface is configured for 100mbps speed and 10240 packets are sent/received during the test.r^r^}r^(hj^hj^ubaubh)r^}r^(hUhKhj^hjW5hhh}r^(h]r^Xtest accessoriesr^ah]h]h]r^Uid209r^ah]uhMhhh]r^(h)r^}r^(hXTest Accessoriesr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXTest Accessoriesr^r^}r^(hj^hj^ubaubh)r^}r^(hXEthernet loopback cables/plugsr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXEthernet loopback cables/plugsr^r^}r^(hj^hj^ubaubeubh)r^}r^(hUhKhj^hjW5hhh}r^(h]r^X test setupr^ah]h]h]r^Uid210r^ah]uhMhhh]r^(h)r^}r^(hX Test Setupr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hX Test Setupr^r^}r^(hj^hj^ubaubh)r^}r^(hXIRefer `EMAC Test Setup `_ section for more detailsr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^(hXRefer r^r^}r^(hXRefer hj^ubj)r^}r^(hX*`EMAC Test Setup `_h}r^(UnameXEMAC Test SetupjXindex_board.html#id40r^h]h]h]h]h]uhj^h]r^hXEMAC Test Setupr^r^}r^(hUhj^ubahj ubjW)r^}r^(hX hKhj^hjZh}r^(Urefurij^h]r^Uemac-test-setupr^ah]h]h]h]r^hauh]ubhX section for more detailsr^r^}r^(hX section for more detailshj^ubeubeubh)r^}r^(hUhKhj^hjW5hhh}r^(h]r^Xtest executionr^ah]h]h]r^Uid211r^ah]uhMhhh]r^(h)r^}r^(hXTest Executionr^hj^hjW5hhh}r^(h]h]h]h]h]uhMhhh]r^hXTest Executionr^r^}r^(hj^hj^ubaubj[)r^}r^(hUhj^hNhj^h}r^(h]h]h]h]h]uhNhhh]r^j)r^}r^(hUh}r^(jX-h]h]h]h]h]uhj^h]r^(j)r^}r^(hX3Select the menu option to run ‘emacStress_TEST’r^h}r^(h]h]h]h]h]uhj^h]r^h)r^}r^(hj^hj^hjW5hhh}r^(h]h]h]h]h]uhMh]r^hX3Select the menu option to run ‘emacStress_TEST’r^r^}r^(hj^hj^ubaubahjubj)r^}r^(hX'Verify the test log on serial console h}r^(h]h]h]h]h]uhj^h]r^h)r_}r_(hX%Verify the test log on serial consoler_hj^hjW5hhh}r_(h]h]h]h]h]uhMh]r_hX%Verify the test log on serial consoler_r_}r_(hj_hj_ubaubahjubehjubaubeubh)r_}r _(hUhKhj^hjW5hhh}r _(h]r _Xtest logr _ah]h]h]r _Uid212r_ah]uhMhhh]r_(h)r_}r_(hXTest Logr_hj_hjW5hhh}r_(h]h]h]h]h]uhMhhh]r_hXTest Logr_r_}r_(hj_hj_ubaubh)r_}r_(hX2Sample log for Ethernet stress test is shown belowr_hj_hjW5hhh}r_(h]h]h]h]h]uhMhhh]r_hX2Sample log for Ethernet stress test is shown belowr_r_}r_(hj_hj_ubaubj()r _}r!_(hXs************************************************ * ETHERNET LOOPBACK STRESS Test * ************************************************ Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x7949 PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x0c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 Sending Packet: 17 Received Packet: 17 Sending Packet: 18 Received Packet: 18 Sending Packet: 19 Received Packet: 19 Sending Packet: 20 Received Packet: 20 Sending Packet: 21 Received Packet: 21 Sending Packet: 22 Received Packet: 22 Sending Packet: 23 Received Packet: 23 Sending Packet: 24 Received Packet: 24 Sending Packet: 25 Received Packet: 25 Sending Packet: 26 Received Packet: 26 Sending Packet: 27 Received Packet: 27 Sending Packet: 28 Received Packet: 28 Sending Packet: 29 Received Packet: 29 Sending Packet: 30 Received Packet: 30 Sending Packet: 31 Received Packet: 31 Sending Packet: 32 Received Packet: 32 Sending Packet: 33 Received Packet: 33 Sending Packet: 34 Received Packet: 34 Sending Packet: 35 Received Packet: 35 Sending Packet: 36 Received Packet: 36 Sending Packet: 37 Received Packet: 37 Sending Packet: 38 Received Packet: 38 Sending Packet: 39 Received Packet: 39 Sending Packet: 40 Received Packet: 40 Sending Packet: 41 Received Packet: 41 Sending Packet: 42 Received Packet: 42 Sending Packet: 43 Received Packet: 43 Sending Packet: 44 Received Packet: 44 Sending Packet: 45 Received Packet: 45 Sending Packet: 46 Received Packet: 46 Sending Packet: 47 Received Packet: 47 Sending Packet: 48 Received Packet: 48 Sending Packet: 49 Received Packet: 49 Sending Packet: 50 Received Packet: 50 Sending Packet: 51 Received Packet: 51 Sending Packet: 52 Received Packet: 52 Sending Packet: 53 Received Packet: 53 Sending Packet: 54 Received Packet: 54 Sending Packet: 55 Received Packet: 55 Sending Packet: 56 Received Packet: 56 Sending Packet: 57 Received Packet: 57 Sending Packet: 58 Received Packet: 58 Sending Packet: 59 Received Packet: 59 Sending Packet: 60 Received Packet: 60 Sending Packet: 61 Received Packet: 61 Sending Packet: 62 Received Packet: 62 Sending Packet: 63 Received Packet: 63 Sending Packet: 64 Received Packet: 64 ... ... ... Sending Packet: 10200 Received Packet: 10200 Sending Packet: 10201 Received Packet: 10201 Sending Packet: 10202 Received Packet: 10202 Sending Packet: 10203 Received Packet: 10203 Sending Packet: 10204 Received Packet: 10204 Sending Packet: 10205 Received Packet: 10205 Sending Packet: 10206 Received Packet: 10206 Sending Packet: 10207 Received Packet: 10207 Sending Packet: 10208 Received Packet: 10208 Sending Packet: 10209 Received Packet: 10209 Sending Packet: 10210 Received Packet: 10210 Sending Packet: 10211 Received Packet: 10211 Sending Packet: 10212 Received Packet: 10212 Sending Packet: 10213 Received Packet: 10213 Sending Packet: 10214 Received Packet: 10214 Sending Packet: 10215 Received Packet: 10215 Sending Packet: 10216 Received Packet: 10216 Sending Packet: 10217 Received Packet: 10217 Sending Packet: 10218 Received Packet: 10218 Sending Packet: 10219 Received Packet: 10219 Sending Packet: 10220 Received Packet: 10220 Sending Packet: 10221 Received Packet: 10221 Sending Packet: 10222 Received Packet: 10222 Sending Packet: 10223 Received Packet: 10223 Sending Packet: 10224 Received Packet: 10224 Sending Packet: 10225 Received Packet: 10225 Sending Packet: 10226 Received Packet: 10226 Sending Packet: 10227 Received Packet: 10227 Sending Packet: 10228 Received Packet: 10228 Sending Packet: 10229 Received Packet: 10229 Sending Packet: 10230 Received Packet: 10230 Sending Packet: 10231 Received Packet: 10231 Sending Packet: 10232 Received Packet: 10232 Sending Packet: 10233 Received Packet: 10233 Sending Packet: 10234 Received Packet: 10234 Sending Packet: 10235 Received Packet: 10235 Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets sent: 10240, Packets received: 10240 Ethernet Loopback test passed All tests completedhj_hjW5hj+h}r"_(hhh]h]h]h]h]uhMhhh]r#_hXs************************************************ * ETHERNET LOOPBACK STRESS Test * ************************************************ Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x7949 PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x0300 PHY Register 0x000a - 0x0c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 EMAC loopback test application initialization main: emac_open success Configuring Phy Waiting for Link Status Link is UP!! Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 Sending Packet: 17 Received Packet: 17 Sending Packet: 18 Received Packet: 18 Sending Packet: 19 Received Packet: 19 Sending Packet: 20 Received Packet: 20 Sending Packet: 21 Received Packet: 21 Sending Packet: 22 Received Packet: 22 Sending Packet: 23 Received Packet: 23 Sending Packet: 24 Received Packet: 24 Sending Packet: 25 Received Packet: 25 Sending Packet: 26 Received Packet: 26 Sending Packet: 27 Received Packet: 27 Sending Packet: 28 Received Packet: 28 Sending Packet: 29 Received Packet: 29 Sending Packet: 30 Received Packet: 30 Sending Packet: 31 Received Packet: 31 Sending Packet: 32 Received Packet: 32 Sending Packet: 33 Received Packet: 33 Sending Packet: 34 Received Packet: 34 Sending Packet: 35 Received Packet: 35 Sending Packet: 36 Received Packet: 36 Sending Packet: 37 Received Packet: 37 Sending Packet: 38 Received Packet: 38 Sending Packet: 39 Received Packet: 39 Sending Packet: 40 Received Packet: 40 Sending Packet: 41 Received Packet: 41 Sending Packet: 42 Received Packet: 42 Sending Packet: 43 Received Packet: 43 Sending Packet: 44 Received Packet: 44 Sending Packet: 45 Received Packet: 45 Sending Packet: 46 Received Packet: 46 Sending Packet: 47 Received Packet: 47 Sending Packet: 48 Received Packet: 48 Sending Packet: 49 Received Packet: 49 Sending Packet: 50 Received Packet: 50 Sending Packet: 51 Received Packet: 51 Sending Packet: 52 Received Packet: 52 Sending Packet: 53 Received Packet: 53 Sending Packet: 54 Received Packet: 54 Sending Packet: 55 Received Packet: 55 Sending Packet: 56 Received Packet: 56 Sending Packet: 57 Received Packet: 57 Sending Packet: 58 Received Packet: 58 Sending Packet: 59 Received Packet: 59 Sending Packet: 60 Received Packet: 60 Sending Packet: 61 Received Packet: 61 Sending Packet: 62 Received Packet: 62 Sending Packet: 63 Received Packet: 63 Sending Packet: 64 Received Packet: 64 ... ... ... Sending Packet: 10200 Received Packet: 10200 Sending Packet: 10201 Received Packet: 10201 Sending Packet: 10202 Received Packet: 10202 Sending Packet: 10203 Received Packet: 10203 Sending Packet: 10204 Received Packet: 10204 Sending Packet: 10205 Received Packet: 10205 Sending Packet: 10206 Received Packet: 10206 Sending Packet: 10207 Received Packet: 10207 Sending Packet: 10208 Received Packet: 10208 Sending Packet: 10209 Received Packet: 10209 Sending Packet: 10210 Received Packet: 10210 Sending Packet: 10211 Received Packet: 10211 Sending Packet: 10212 Received Packet: 10212 Sending Packet: 10213 Received Packet: 10213 Sending Packet: 10214 Received Packet: 10214 Sending Packet: 10215 Received Packet: 10215 Sending Packet: 10216 Received Packet: 10216 Sending Packet: 10217 Received Packet: 10217 Sending Packet: 10218 Received Packet: 10218 Sending Packet: 10219 Received Packet: 10219 Sending Packet: 10220 Received Packet: 10220 Sending Packet: 10221 Received Packet: 10221 Sending Packet: 10222 Received Packet: 10222 Sending Packet: 10223 Received Packet: 10223 Sending Packet: 10224 Received Packet: 10224 Sending Packet: 10225 Received Packet: 10225 Sending Packet: 10226 Received Packet: 10226 Sending Packet: 10227 Received Packet: 10227 Sending Packet: 10228 Received Packet: 10228 Sending Packet: 10229 Received Packet: 10229 Sending Packet: 10230 Received Packet: 10230 Sending Packet: 10231 Received Packet: 10231 Sending Packet: 10232 Received Packet: 10232 Sending Packet: 10233 Received Packet: 10233 Sending Packet: 10234 Received Packet: 10234 Sending Packet: 10235 Received Packet: 10235 Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets sent: 10240, Packets received: 10240 Ethernet Loopback test passed All tests completedr$_r%_}r&_(hUhj _ubaubj1)r'_}r(_(hUhj_hjW5hj4h}r)_(h]h]h]h]h]uhMhhh]r*_j7)r+_}r,_(hUj:Khj'_hjW5hhh}r-_(h]h]h]h]h]uhKhhh]ubaubeubeubh)r._}r/_(hUhj\hjW5hhh}r0_(h]h]h]h]r1_Uemmc-stress-testr2_ah]r3_h#auhMhhh]r4_(h)r5_}r6_(hXeMMC Stress Testr7_hj._hjW5hhh}r8_(h]h]h]h]h]uhMhhh]r9_hXeMMC Stress Testr:_r;_}r<_(hj7_hj5_ubaubh)r=_}r>_(hXThis test verifies eMMC memory interface on the HW platform under test. Whole memory of eMMC is written and read during the test.r?_hj._hjW5hhh}r@_(h]h]h]h]h]uhMhhh]rA_hXThis test verifies eMMC memory interface on the HW platform under test. Whole memory of eMMC is written and read during the test.rB_rC_}rD_(hj?_hj=_ubaubh)rE_}rF_(hUhKhj._hjW5hhh}rG_(h]rH_Xtest accessoriesrI_ah]h]h]rJ_Uid213rK_ah]uhMhhh]rL_(h)rM_}rN_(hXTest AccessoriesrO_hjE_hjW5hhh}rP_(h]h]h]h]h]uhMhhh]rQ_hXTest AccessoriesrR_rS_}rT_(hjO_hjM_ubaubh)rU_}rV_(hX=No additional accessories are required for running this test.rW_hjE_hjW5hhh}rX_(h]h]h]h]h]uhMhhh]rY_hX=No additional accessories are required for running this test.rZ_r[_}r\_(hjW_hjU_ubaubeubh)r]_}r^_(hUhKhj._hjW5hhh}r__(h]r`_X test setupra_ah]h]h]rb_Uid214rc_ah]uhMhhh]rd_(h)re_}rf_(hX Test Setuprg_hj]_hjW5hhh}rh_(h]h]h]h]h]uhMhhh]ri_hX Test Setuprj_rk_}rl_(hjg_hje_ubaubh)rm_}rn_(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.ro_hj]_hjW5hhh}rp_(h]h]h]h]h]uhMhhh]rq_hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rr_rs_}rt_(hjo_hjm_ubaubeubh)ru_}rv_(hUhKhj._hjW5hhh}rw_(h]rx_Xtest executionry_ah]h]h]rz_Uid215r{_ah]uhMhhh]r|_(h)r}_}r~_(hXTest Executionr_hju_hjW5hhh}r_(h]h]h]h]h]uhMhhh]r_hXTest Executionr_r_}r_(hj_hj}_ubaubj[)r_}r_(hUhju_hNhj^h}r_(h]h]h]h]h]uhNhhh]r_j)r_}r_(hUh}r_(jX-h]h]h]h]h]uhj_h]r_(j)r_}r_(hX3Select the menu option to run ‘emmcStress_TEST’r_h}r_(h]h]h]h]h]uhj_h]r_h)r_}r_(hj_hj_hjW5hhh}r_(h]h]h]h]h]uhMh]r_hX3Select the menu option to run ‘emmcStress_TEST’r_r_}r_(hj_hj_ubaubahjubj)r_}r_(hX&Verify the test log on serial console h}r_(h]h]h]h]h]uhj_h]r_h)r_}r_(hX%Verify the test log on serial consoler_hj_hjW5hhh}r_(h]h]h]h]h]uhMh]r_hX%Verify the test log on serial consoler_r_}r_(hj_hj_ubaubahjubehjubaubeubh)r_}r_(hUhKhj._hjW5hhh}r_(h]r_Xtest logr_ah]h]h]r_Uid216r_ah]uhMhhh]r_(h)r_}r_(hXTest Logr_hj_hjW5hhh}r_(h]h]h]h]h]uhMhhh]r_hXTest Logr_r_}r_(hj_hj_ubaubh)r_}r_(hX.Sample log for eMMC stress test is shown belowr_hj_hjW5hhh}r_(h]h]h]h]h]uhMhhh]r_hX.Sample log for eMMC stress test is shown belowr_r_}r_(hj_hj_ubaubj()r_}r_(hXJ********************************************* * eMMC Stress Test * *********************************************** PASS: Read/Write Success for this block-0x300000 PASS: Read/Write Success for this block-0x301000 PASS: Read/Write Success for this block-0x302000 PASS: Read/Write Success for this block-0x303000 PASS: Read/Write Success for this block-0x304000 PASS: Read/Write Success for this block-0x305000 PASS: Read/Write Success for this block-0x306000 PASS: Read/Write Success for this block-0x307000 PASS: Read/Write Success for this block-0x308000 PASS: Read/Write Success for this block-0x309000 PASS: Read/Write Success for this block-0x30a000 PASS: Read/Write Success for this block-0x30b000 PASS: Read/Write Success for this block-0x30c000 PASS: Read/Write Success for this block-0x30d000 PASS: Read/Write Success for this block-0x30e000 PASS: Read/Write Success for this block-0x30f000 ... ... ... PASS: Read/Write Success for this block-0x1d55000 PASS: Read/Write Success for this block-0x1d56000 PASS: Read/Write Success for this block-0x1d57000 PASS: Read/Write Success for this block-0x1d58000 PASS: Read/Write Success for this block-0x1d59000 PASS: Read/Write Success for this block-0x1d5a000 PASS: Read/Write Success for this block-0x1d5b000 PASS: Read/Write Success for this patternhj_hjW5hj+h}r_(hhh]h]h]h]h]uhMhhh]r_hXJ********************************************* * eMMC Stress Test * *********************************************** PASS: Read/Write Success for this block-0x300000 PASS: Read/Write Success for this block-0x301000 PASS: Read/Write Success for this block-0x302000 PASS: Read/Write Success for this block-0x303000 PASS: Read/Write Success for this block-0x304000 PASS: Read/Write Success for this block-0x305000 PASS: Read/Write Success for this block-0x306000 PASS: Read/Write Success for this block-0x307000 PASS: Read/Write Success for this block-0x308000 PASS: Read/Write Success for this block-0x309000 PASS: Read/Write Success for this block-0x30a000 PASS: Read/Write Success for this block-0x30b000 PASS: Read/Write Success for this block-0x30c000 PASS: Read/Write Success for this block-0x30d000 PASS: Read/Write Success for this block-0x30e000 PASS: Read/Write Success for this block-0x30f000 ... ... ... PASS: Read/Write Success for this block-0x1d55000 PASS: Read/Write Success for this block-0x1d56000 PASS: Read/Write Success for this block-0x1d57000 PASS: Read/Write Success for this block-0x1d58000 PASS: Read/Write Success for this block-0x1d59000 PASS: Read/Write Success for this block-0x1d5a000 PASS: Read/Write Success for this block-0x1d5b000 PASS: Read/Write Success for this patternr_r_}r_(hUhj_ubaubj1)r_}r_(hUhj_hjW5hj4h}r_(h]h]h]h]h]uhM7hhh]r_j7)r_}r_(hUj:Khj_hjW5hhh}r_(h]h]h]h]h]uhKhhh]ubaubeubeubh)r_}r_(hUhj\hjW5hhh}r_(h]h]h]h]r_Uexternal-rtc-stress-testr_ah]r_hauhM:hhh]r_(h)r_}r_(hXExternal RTC Stress Testr_hj_hjW5hhh}r_(h]h]h]h]h]uhM:hhh]r_hXExternal RTC Stress Testr_r_}r_(hj_hj_ubaubh)r_}r_(hXThis test verifies setting the time, date and running the clock for on-board RTC interface. RTC configuration is done through I2C interface. Time and date are read for 100 times for every 5secs during the test to demonstrate operation of the RTC clock.r_hj_hjW5hhh}r_(h]h]h]h]h]uhM;hhh]r_hXThis test verifies setting the time, date and running the clock for on-board RTC interface. RTC configuration is done through I2C interface. Time and date are read for 100 times for every 5secs during the test to demonstrate operation of the RTC clock.r_r_}r_(hj_hj_ubaubh)r_}r_(hUhKhj_hjW5hhh}r_(h]r_Xtest accessoriesr_ah]h]h]r_Uid217r_ah]uhM@hhh]r_(h)r_}r_(hXTest Accessoriesr_hj_hjW5hhh}r_(h]h]h]h]h]uhM@hhh]r_hXTest Accessoriesr_r_}r_(hj_hj_ubaubh)r_}r_(hX=No additional accessories are required for running this test.r_hj_hjW5hhh}r_(h]h]h]h]h]uhMAhhh]r_hX=No additional accessories are required for running this test.r_r_}r_(hj_hj_ubaubeubh)r_}r_(hUhKhj_hjW5hhh}r_(h]r_X test setupr_ah]h]h]r_Uid218r`ah]uhMDhhh]r`(h)r`}r`(hX Test Setupr`hj_hjW5hhh}r`(h]h]h]h]h]uhMDhhh]r`hX Test Setupr`r`}r `(hj`hj`ubaubh)r `}r `(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r `hj_hjW5hhh}r `(h]h]h]h]h]uhMEhhh]r`hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r`r`}r`(hj `hj `ubaubeubh)r`}r`(hUhKhj_hjW5hhh}r`(h]r`Xtest executionr`ah]h]h]r`Uid219r`ah]uhMHhhh]r`(h)r`}r`(hXTest Executionr`hj`hjW5hhh}r`(h]h]h]h]h]uhMHhhh]r`hXTest Executionr`r `}r!`(hj`hj`ubaubj[)r"`}r#`(hUhj`hNhj^h}r$`(h]h]h]h]h]uhNhhh]r%`j)r&`}r'`(hUh}r(`(jX-h]h]h]h]h]uhj"`h]r)`(j)r*`}r+`(hX5Select the menu option to run ‘extRtcStress_TEST’r,`h}r-`(h]h]h]h]h]uhj&`h]r.`h)r/`}r0`(hj,`hj*`hjW5hhh}r1`(h]h]h]h]h]uhMIh]r2`hX5Select the menu option to run ‘extRtcStress_TEST’r3`r4`}r5`(hj,`hj/`ubaubahjubj)r6`}r7`(hX&Verify the test log on serial console h}r8`(h]h]h]h]h]uhj&`h]r9`h)r:`}r;`(hX%Verify the test log on serial consoler<`hj6`hjW5hhh}r=`(h]h]h]h]h]uhMJh]r>`hX%Verify the test log on serial consoler?`r@`}rA`(hj<`hj:`ubaubahjubehjubaubeubh)rB`}rC`(hUhKhj_hjW5hhh}rD`(h]rE`Xtest logrF`ah]h]h]rG`Uid220rH`ah]uhMMhhh]rI`(h)rJ`}rK`(hXTest LogrL`hjB`hjW5hhh}rM`(h]h]h]h]h]uhMMhhh]rN`hXTest LogrO`rP`}rQ`(hjL`hjJ`ubaubh)rR`}rS`(hX6Sample log for external RTC stress test is shown belowrT`hjB`hjW5hhh}rU`(h]h]h]h]h]uhMNhhh]rV`hX6Sample log for external RTC stress test is shown belowrW`rX`}rY`(hjT`hjR`ubaubj()rZ`}r[`(hX ********************************************* * RTC Test * ********************************************* Running RTC Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:57 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:2 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:7 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:12 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:17 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 1 RTC Test Passed Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:58 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:3 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:8 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:14 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:19 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 2 RTC Test Passed ... ... ... Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:58 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:3 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:8 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:13 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:18 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 100 RTC Test Passed RTC Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS RTC Test PassedhjB`hjW5hj+h}r\`(hhh]h]h]h]h]uhMHhhh]r]`hX ********************************************* * RTC Test * ********************************************* Running RTC Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:57 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:2 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:7 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:12 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:17 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 1 RTC Test Passed Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:58 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:3 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:8 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:14 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:19 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 2 RTC Test Passed ... ... ... Running RTC Test... Setting Time... Setting Date... Reading Time... Reading Date... Displaying time: 11:59:53 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 11:59:58 PM Displaying Day: Sunday Displaying Date: 31/12/18 Displaying time: 12:0:3 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:8 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:13 AM Displaying Day: Monday Displaying Date: 1/1/19 Displaying time: 12:0:18 AM Displaying Day: Monday Displaying Date: 1/1/19 If the time and date increment, press 'y' to indicate pass or any other character to indicate failure Iteration : 100 RTC Test Passed RTC Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS RTC Test Passedr^`r_`}r``(hUhjZ`ubaubj1)ra`}rb`(hUhjB`hjW5hj4h}rc`(h]h]h]h]h]uhMhhh]rd`j7)re`}rf`(hUj:Khja`hjW5hhh}rg`(h]h]h]h]h]uhKhhh]ubaubeubeubh)rh`}ri`(hUhj\hjW5hhh}rj`(h]h]h]h]rk`Uicssg-emac-stress-testrl`ah]rm`hauhMhhh]rn`(h)ro`}rp`(hXICSSG EMAC Stress Testrq`hjh`hjW5hhh}rr`(h]h]h]h]h]uhMhhh]rs`hXICSSG EMAC Stress Testrt`ru`}rv`(hjq`hjo`ubaubh)rw`}rx`(hXThis port to port Ethernet test verifies the PRU-ICSS gigabit Ethernet interface on the board under test. During the test, Ethernet interface is configured for 1000mbps speed with one port of an ICSS instance is connected to another port. 10240 packets are sent from one port and received by another port. Both the ports are verified for transmit and receive. All the ICSSG EMAC ports available on the board verified during the test.ry`hjh`hjW5hhh}rz`(h]h]h]h]h]uhMhhh]r{`hXThis port to port Ethernet test verifies the PRU-ICSS gigabit Ethernet interface on the board under test. During the test, Ethernet interface is configured for 1000mbps speed with one port of an ICSS instance is connected to another port. 10240 packets are sent from one port and received by another port. Both the ports are verified for transmit and receive. All the ICSSG EMAC ports available on the board verified during the test.r|`r}`}r~`(hjy`hjw`ubaubh)r`}r`(hUhKhjh`hjW5hhh}r`(h]r`Xtest accessoriesr`ah]h]h]r`Uid221r`ah]uhMhhh]r`(h)r`}r`(hXTest Accessoriesr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`hXTest Accessoriesr`r`}r`(hj`hj`ubaubh)r`}r`(hXEthernet cablesr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`hXEthernet cablesr`r`}r`(hj`hj`ubaubeubh)r`}r`(hUhKhjh`hjW5hhh}r`(h]r`X test setupr`ah]h]h]r`Uid222r`ah]uhMhhh]r`(h)r`}r`(hX Test Setupr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`hX Test Setupr`r`}r`(hj`hj`ubaubh)r`}r`(hXORefer `ICSSG EMAC Test Setup `_ section for more detailsr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`(hXRefer r`r`}r`(hXRefer hj`ubj)r`}r`(hX0`ICSSG EMAC Test Setup `_h}r`(UnameXICSSG EMAC Test SetupjXindex_board.html#id68r`h]h]h]h]h]uhj`h]r`hXICSSG EMAC Test Setupr`r`}r`(hUhj`ubahj ubjW)r`}r`(hX hKhj`hjZh}r`(Urefurij`h]r`Uicssg-emac-test-setupr`ah]h]h]h]r`h6auh]ubhX section for more detailsr`r`}r`(hX section for more detailshj`ubeubeubh)r`}r`(hUhKhjh`hjW5hhh}r`(h]r`Xtest executionr`ah]h]h]r`Uid223r`ah]uhMhhh]r`(h)r`}r`(hXTest Executionr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`hXTest Executionr`r`}r`(hj`hj`ubaubj[)r`}r`(hUhj`hNhj^h}r`(h]h]h]h]h]uhNhhh]r`j)r`}r`(hUh}r`(jX-h]h]h]h]h]uhj`h]r`(j)r`}r`(hX8Select the menu option to run ‘icssgEmacStress_TEST’r`h}r`(h]h]h]h]h]uhj`h]r`h)r`}r`(hj`hj`hjW5hhh}r`(h]h]h]h]h]uhMh]r`hX8Select the menu option to run ‘icssgEmacStress_TEST’r`r`}r`(hj`hj`ubaubahjubj)r`}r`(hX'Verify the test log on serial console h}r`(h]h]h]h]h]uhj`h]r`h)r`}r`(hX%Verify the test log on serial consoler`hj`hjW5hhh}r`(h]h]h]h]h]uhMh]r`hX%Verify the test log on serial consoler`r`}r`(hj`hj`ubaubahjubehjubaubeubh)r`}r`(hUhKhjh`hjW5hhh}r`(h]r`Xtest logr`ah]h]h]r`Uid224r`ah]uhMhhh]r`(h)r`}r`(hXTest Logr`hj`hjW5hhh}r`(h]h]h]h]h]uhMhhh]r`hXTest Logr`r`}r`(hj`hj`ubaubh)ra}ra(hX8Sample log for ICSGG Ethernet stress test is shown belowrahj`hjW5hhh}ra(h]h]h]h]h]uhMhhh]rahX8Sample log for ICSGG Ethernet stress test is shown belowrara}ra(hjahjaubaubj()ra}r a(hX,********************************************** * ICSSG EMAC STRESS TEST * ********************************************** Performing UDMA driver init... Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbf02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbd02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbd02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbe02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbc02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbc02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 port 0: FW is ready Port 0: Config FW Complete port 1: FW is ready Port 1: Config FW Complete port 2: FW is ready Port 2: Config FW Complete port 3: FW is ready Port 3: Config FW Complete port 4: FW is ready Port 4: Config FW Complete port 5: FW is ready Port 5: Config FW Complete EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 0 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 1 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 2 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 3 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 4 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 5 LINK IS UP! Sending Packets on Port - 0 Receiving Packets on Port - 1 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 0 Send to Port 1 Receive Test Passed! Sending Packets on Port - 1 Receiving Packets on Port - 0 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 1 Send to Port 0 Receive Test Passed! Sending Packets on Port - 2 Receiving Packets on Port - 3 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 2 Send to Port 3 Receive Test Passed! Sending Packets on Port - 3 Receiving Packets on Port - 2 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 2 Send to Port 3 Receive Test Passed! ... ... ... Sending Packets on Port - 5 Receiving Packets on Port - 4 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 5 Send to Port 4 Receive Test Passed! ICSSG Ethernet Port to Port Test Passed! All Tests Completedhj`hjW5hj+h}r a(hhh]h]h]h]h]uhMhhh]r ahX,********************************************** * ICSSG EMAC STRESS TEST * ********************************************** Performing UDMA driver init... Reading Ethernet PHY Register Dump... Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbf02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbd02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbd02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbe02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0000 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1b00 PHY Register 0x000a - 0x7c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbc02 PHY Register(STRAP1) 0x006e - 0x0000 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 Register Dump for PHY Addr - 0x0003 PHY Register 0x0000 - 0x1140 PHY Register 0x0001 - 0x796d PHY Register 0x0002 - 0x2000 PHY Register 0x0003 - 0xa231 PHY Register 0x0004 - 0x01e1 PHY Register 0x0005 - 0xc1e1 PHY Register 0x0006 - 0x006f PHY Register 0x0007 - 0x2001 PHY Register 0x0008 - 0x4806 PHY Register 0x0009 - 0x1300 PHY Register 0x000a - 0x3c00 PHY Register 0x000b - 0x0000 PHY Register 0x000c - 0x0000 PHY Register 0x000d - 0x401f PHY Register 0x000e - 0x0006 PHY Register 0x000f - 0x3000 PHY Configuration Register(CFG4) 0x0031 - 0xbc02 PHY Register(STRAP1) 0x006e - 0x0003 PHY Register(STRAP2) 0x006f - 0x0000 RGMII Control Register (RGMIICTL) Value - 0x00d3 --- RGMII_RX_CLK_DELAY - 0x0001 --- RGMII_TX_CLK_DELAY - 0x0001 RGMII Delay Control Register (RGMIIDCTL) Value - 0x0077 port 0: FW is ready Port 0: Config FW Complete port 1: FW is ready Port 1: Config FW Complete port 2: FW is ready Port 2: Config FW Complete port 3: FW is ready Port 3: Config FW Complete port 4: FW is ready Port 4: Config FW Complete port 5: FW is ready Port 5: Config FW Complete EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 0 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 1 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 2 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 3 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 4 LINK IS UP! EMAC loopback test application initialization main: emac_open success Waiting for LINK UP, Make sure to plugin loopback cable PRU_ICSS port 5 LINK IS UP! Sending Packets on Port - 0 Receiving Packets on Port - 1 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 0 Send to Port 1 Receive Test Passed! Sending Packets on Port - 1 Receiving Packets on Port - 0 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 1 Send to Port 0 Receive Test Passed! Sending Packets on Port - 2 Receiving Packets on Port - 3 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 2 Send to Port 3 Receive Test Passed! Sending Packets on Port - 3 Receiving Packets on Port - 2 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 2 Send to Port 3 Receive Test Passed! ... ... ... Sending Packets on Port - 5 Receiving Packets on Port - 4 Sending Packet: 1 Received Packet: 1 Sending Packet: 2 Received Packet: 2 Sending Packet: 3 Received Packet: 3 Sending Packet: 4 Received Packet: 4 Sending Packet: 5 Received Packet: 5 Sending Packet: 6 Received Packet: 6 Sending Packet: 7 Received Packet: 7 Sending Packet: 8 Received Packet: 8 Sending Packet: 9 Received Packet: 9 Sending Packet: 10 Received Packet: 10 Sending Packet: 11 Received Packet: 11 Sending Packet: 12 Received Packet: 12 Sending Packet: 13 Received Packet: 13 Sending Packet: 14 Received Packet: 14 Sending Packet: 15 Received Packet: 15 Sending Packet: 16 Received Packet: 16 ... ... ... Sending Packet: 10236 Received Packet: 10236 Sending Packet: 10237 Received Packet: 10237 Sending Packet: 10238 Received Packet: 10238 Sending Packet: 10239 Received Packet: 10239 Sending Packet: 10240 Received Packet: 10240 Packets Sent: 10240, Packets Received: 10240 Port 5 Send to Port 4 Receive Test Passed! ICSSG Ethernet Port to Port Test Passed! All Tests Completedr ar a}ra(hUhjaubaubj1)ra}ra(hUhj`hjW5hj4h}ra(h]h]h]h]h]uhMhhh]raj7)ra}ra(hUj:KhjahjW5hhh}ra(h]h]h]h]h]uhKhhh]ubaubeubeubh)ra}ra(hUhj\hjW5hhh}ra(h]h]h]h]raUicss-led-stress-testraah]rahauhMhhh]ra(h)ra}ra(hXICSS LED Stress TestrahjahjW5hhh}r a(h]h]h]h]h]uhMhhh]r!ahXICSS LED Stress Testr"ar#a}r$a(hjahjaubaubh)r%a}r&a(hXThis test verifies LEDs connected to PRU-ICSS ports. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.r'ahjahjW5hhh}r(a(h]h]h]h]h]uhMhhh]r)ahXThis test verifies LEDs connected to PRU-ICSS ports. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.r*ar+a}r,a(hj'ahj%aubaubh)r-a}r.a(hUhKhjahjW5hhh}r/a(h]r0aXtest accessoriesr1aah]h]h]r2aUid225r3aah]uhMhhh]r4a(h)r5a}r6a(hXTest Accessoriesr7ahj-ahjW5hhh}r8a(h]h]h]h]h]uhMhhh]r9ahXTest Accessoriesr:ar;a}ra(hX=No additional accessories are required for running this test.r?ahj-ahjW5hhh}r@a(h]h]h]h]h]uhMhhh]rAahX=No additional accessories are required for running this test.rBarCa}rDa(hj?ahj=aubaubeubh)rEa}rFa(hUhKhjahjW5hhh}rGa(h]rHaX test setuprIaah]h]h]rJaUid226rKaah]uhMhhh]rLa(h)rMa}rNa(hX Test SetuprOahjEahjW5hhh}rPa(h]h]h]h]h]uhMhhh]rQahX Test SetuprRarSa}rTa(hjOahjMaubaubh)rUa}rVa(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rWahjEahjW5hhh}rXa(h]h]h]h]h]uhMhhh]rYahXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rZar[a}r\a(hjWahjUaubaubeubh)r]a}r^a(hUhKhjahjW5hhh}r_a(h]r`aXtest executionraaah]h]h]rbaUid227rcaah]uhMhhh]rda(h)rea}rfa(hXTest Executionrgahj]ahjW5hhh}rha(h]h]h]h]h]uhMhhh]riahXTest Executionrjarka}rla(hjgahjeaubaubj[)rma}rna(hUhj]ahNhj^h}roa(h]h]h]h]h]uhNhhh]rpaj)rqa}rra(hUh}rsa(jX-h]h]h]h]h]uhjmah]rta(j)rua}rva(hX7Select the menu option to run ‘icssgLedStress_TEST’rwah}rxa(h]h]h]h]h]uhjqah]ryah)rza}r{a(hjwahjuahjW5hhh}r|a(h]h]h]h]h]uhMh]r}ahX7Select the menu option to run ‘icssgLedStress_TEST’r~ara}ra(hjwahjzaubaubahjubj)ra}ra(hX&Verify the test log on serial console h}ra(h]h]h]h]h]uhjqah]rah)ra}ra(hX%Verify the test log on serial consolerahjahjW5hhh}ra(h]h]h]h]h]uhMh]rahX%Verify the test log on serial consolerara}ra(hjahjaubaubahjubehjubaubeubh)ra}ra(hUhKhjahjW5hhh}ra(h]raXtest lograah]h]h]raUid228raah]uhMhhh]ra(h)ra}ra(hXTest LograhjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahXTest Lograra}ra(hjahjaubaubh)ra}ra(hX2Sample log for ICSS LED stress test is shown belowrahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahX2Sample log for ICSS LED stress test is shown belowrara}ra(hjahjaubaubj()ra}ra(hX Running ICSSG LED Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 5 ICSSG LED Test Passed ... ... ... ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 ICSSG LED Test Passed ICSSG LED Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASShjahjW5hj+h}ra(hhh]h]h]h]h]uhMhhh]rahX Running ICSSG LED Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 5 ICSSG LED Test Passed ... ... ... ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 ICSSG LED Test Passed ******************************************** * ICSS LED Test * ******************************************** Testing ICSSG PRG0 and PRG1 LED's Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 ICSSG LED Test Passed ICSSG LED Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASSrara}ra(hUhjaubaubj1)ra}ra(hUhjahjW5hj4h}ra(h]h]h]h]h]uhMhhh]raj7)ra}ra(hUj:KhjahjW5hhh}ra(h]h]h]h]h]uhKhhh]ubaubeubeubh)ra}ra(hUhj\hjW5hhh}ra(h]h]h]h]raUindustrial-led-stress-testraah]rahauhMhhh]ra(h)ra}ra(hXIndustrial LED Stress TestrahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahXIndustrial LED Stress Testrara}ra(hjahjaubaubh)ra}ra(hXThis test verifies industrial LEDs connected to I2C interface on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.rahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahXThis test verifies industrial LEDs connected to I2C interface on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.rara}ra(hjahjaubaubh)ra}ra(hUhKhjahjW5hhh}ra(h]raXtest accessoriesraah]h]h]raUid229raah]uhMhhh]ra(h)ra}ra(hXTest AccessoriesrahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahXTest Accessoriesrara}ra(hjahjaubaubh)ra}ra(hX=No additional accessories are required for running this test.rahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahX=No additional accessories are required for running this test.rara}ra(hjahjaubaubeubh)ra}ra(hUhKhjahjW5hhh}ra(h]raX test setupraah]h]h]raUid230raah]uhMhhh]ra(h)ra}ra(hX Test SetuprahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahX Test Setuprara}ra(hjahjaubaubh)ra}ra(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rahjahjW5hhh}ra(h]h]h]h]h]uhMhhh]rahXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rara}ra(hjahjaubaubeubh)ra}ra(hUhKhjahjW5hhh}ra(h]raXtest executionraah]h]h]raUid231rbah]uhMhhh]rb(h)rb}rb(hXTest ExecutionrbhjahjW5hhh}rb(h]h]h]h]h]uhMhhh]rbhXTest Executionrbrb}r b(hjbhjbubaubj[)r b}r b(hUhjahNhj^h}r b(h]h]h]h]h]uhNhhh]r bj)rb}rb(hUh}rb(jX-h]h]h]h]h]uhj bh]rb(j)rb}rb(hX<Select the menu option to run ‘ledIndustrialStress_TEST’rbh}rb(h]h]h]h]h]uhjbh]rbh)rb}rb(hjbhjbhjW5hhh}rb(h]h]h]h]h]uhMh]rbhX<Select the menu option to run ‘ledIndustrialStress_TEST’rbrb}rb(hjbhjbubaubahjubj)rb}rb(hXNConfirm that all the industrial LEDs on the board are toggling during the testr bh}r!b(h]h]h]h]h]uhjbh]r"bh)r#b}r$b(hj bhjbhjW5hhh}r%b(h]h]h]h]h]uhMh]r&bhXNConfirm that all the industrial LEDs on the board are toggling during the testr'br(b}r)b(hj bhj#bubaubahjubj)r*b}r+b(hX&Verify the test log on serial console h}r,b(h]h]h]h]h]uhjbh]r-bh)r.b}r/b(hX%Verify the test log on serial consoler0bhj*bhjW5hhh}r1b(h]h]h]h]h]uhMh]r2bhX%Verify the test log on serial consoler3br4b}r5b(hj0bhj.bubaubahjubehjubaubeubh)r6b}r7b(hUhKhjahjW5hhh}r8b(h]r9bXtest logr:bah]h]h]r;bUid232rb}r?b(hXTest Logr@bhj6bhjW5hhh}rAb(h]h]h]h]h]uhMhhh]rBbhXTest LogrCbrDb}rEb(hj@bhj>bubaubh)rFb}rGb(hX8Sample log for industrial LED stress test is shown belowrHbhj6bhjW5hhh}rIb(h]h]h]h]h]uhMhhh]rJbhX8Sample log for industrial LED stress test is shown belowrKbrLb}rMb(hjHbhjFbubaubj()rNb}rOb(hX ********************************************* * Industrial LED Test * ********************************************* Running Industrial Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 Industrial Test Passed ... ... ... Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 Industrial Test Passed Industrial Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASShj6bhjW5hj+h}rPb(hhh]h]h]h]h]uhMhhh]rQbhX ********************************************* * Industrial LED Test * ********************************************* Running Industrial Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 Industrial Test Passed ... ... ... Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 Industrial Test Passed Running Industrial Test... Verifying LED's connected to I2C IO Expander slave device... Testing Industrial LEDs Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Testing Industrial LEDs on AM65xx IDK Board Cycling LEDs 3 times Press 'y' to verify pass, 'r' to cycle leds again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 Industrial Test Passed Industrial Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASSrRbrSb}rTb(hUhjNbubaubj1)rUb}rVb(hUhj6bhjW5hj4h}rWb(h]h]h]h]h]uhM9hhh]rXbj7)rYb}rZb(hUj:KhjUbhjW5hhh}r[b(h]h]h]h]h]uhKhhh]ubaubeubeubh)r\b}r]b(hUhj\hjW5hhh}r^b(h]h]h]h]r_bUled-stress-testr`bah]rabhzauhM<hhh]rbb(h)rcb}rdb(hXLED Stress Testrebhj\bhjW5hhh}rfb(h]h]h]h]h]uhM<hhh]rgbhXLED Stress Testrhbrib}rjb(hjebhjcbubaubh)rkb}rlb(hXThis test verifies general purpose user LEDs on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.rmbhj\bhjW5hhh}rnb(h]h]h]h]h]uhM=hhh]robhXThis test verifies general purpose user LEDs on the HW platform under test. All the LEDs are turned ON and OFF for 3 times during the test. Test is repeated for 100 iterations.rpbrqb}rrb(hjmbhjkbubaubh)rsb}rtb(hUhKhj\bhjW5hhh}rub(h]rvbXtest accessoriesrwbah]h]h]rxbUid233rybah]uhMBhhh]rzb(h)r{b}r|b(hXTest Accessoriesr}bhjsbhjW5hhh}r~b(h]h]h]h]h]uhMBhhh]rbhXTest Accessoriesrbrb}rb(hj}bhj{bubaubh)rb}rb(hX=No additional accessories are required for running this test.rbhjsbhjW5hhh}rb(h]h]h]h]h]uhMChhh]rbhX=No additional accessories are required for running this test.rbrb}rb(hjbhjbubaubeubh)rb}rb(hUhKhj\bhjW5hhh}rb(h]rbX test setuprbah]h]h]rbUid234rbah]uhMFhhh]rb(h)rb}rb(hX Test SetuprbhjbhjW5hhh}rb(h]h]h]h]h]uhMFhhh]rbhX Test Setuprbrb}rb(hjbhjbubaubh)rb}rb(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rbhjbhjW5hhh}rb(h]h]h]h]h]uhMGhhh]rbhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rbrb}rb(hjbhjbubaubeubh)rb}rb(hUhKhj\bhjW5hhh}rb(h]rbXtest executionrbah]h]h]rbUid235rbah]uhMJhhh]rb(h)rb}rb(hXTest ExecutionrbhjbhjW5hhh}rb(h]h]h]h]h]uhMJhhh]rbhXTest Executionrbrb}rb(hjbhjbubaubj[)rb}rb(hUhjbhNhj^h}rb(h]h]h]h]h]uhNhhh]rbj)rb}rb(hUh}rb(jX-h]h]h]h]h]uhjbh]rb(j)rb}rb(hX2Select the menu option to run ‘ledStress_TEST’rbh}rb(h]h]h]h]h]uhjbh]rbh)rb}rb(hjbhjbhjW5hhh}rb(h]h]h]h]h]uhMKh]rbhX2Select the menu option to run ‘ledStress_TEST’rbrb}rb(hjbhjbubaubahjubj)rb}rb(hXXConfirm that all the general purpose user LEDs on the board are toggling during the testrbh}rb(h]h]h]h]h]uhjbh]rbh)rb}rb(hjbhjbhjW5hhh}rb(h]h]h]h]h]uhMLh]rbhXXConfirm that all the general purpose user LEDs on the board are toggling during the testrbrb}rb(hjbhjbubaubahjubj)rb}rb(hX&Verify the test log on serial console h}rb(h]h]h]h]h]uhjbh]rbh)rb}rb(hX%Verify the test log on serial consolerbhjbhjW5hhh}rb(h]h]h]h]h]uhMMh]rbhX%Verify the test log on serial consolerbrb}rb(hjbhjbubaubahjubehjubaubeubh)rb}rb(hUhKhj\bhjW5hhh}rb(h]rbXtest logrbah]h]h]rbUid236rbah]uhMPhhh]rb(h)rb}rb(hXTest LogrbhjbhjW5hhh}rb(h]h]h]h]h]uhMPhhh]rbhXTest Logrbrb}rb(hjbhjbubaubh)rb}rb(hX-Sample log for LED stress test is shown belowrbhjbhjW5hhh}rb(h]h]h]h]h]uhMQhhh]rbhX-Sample log for LED stress test is shown belowrbrb}rb(hjbhjbubaubj()rb}rb(hXRunning LED Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 LED Test Passed ... ... ... ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 LED Test Passed LED Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASShjbhjW5hj+h}rb(hhh]h]h]h]h]uhMKhhh]rbhXRunning LED Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 1 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 2 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 3 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 4 LED Test Passed ... ... ... ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 99 LED Test Passed ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Press 'y' to verify pass, 'r' to blink again, or any other character to indicate failure: Received: y Test PASSED! Iteration : 100 LED Test Passed LED Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASSrbrb}rb(hUhjbubaubj1)rb}rb(hUhjbhjW5hj4h}rc(h]h]h]h]h]uhMhhh]rcj7)rc}rc(hUj:KhjbhjW5hhh}rc(h]h]h]h]h]uhKhhh]ubaubeubeubh)rc}rc(hUhj\hjW5hhh}rc(h]h]h]h]rcUmemory-ddr-stress-testr cah]r chauhMhhh]r c(h)r c}r c(hXMemory (DDR) Stress TestrchjchjW5hhh}rc(h]h]h]h]h]uhMhhh]rchXMemory (DDR) Stress Testrcrc}rc(hjchj cubaubh)rc}rc(hXThis test verifies the DDR memory of the HW platform under test. Address bus test is performed with a test pattern and its compliment during the test. Walking 1s and walking 0s test is executed additionally as part of stress test.rchjchjW5hhh}rc(h]h]h]h]h]uhMhhh]rchXThis test verifies the DDR memory of the HW platform under test. Address bus test is performed with a test pattern and its compliment during the test. Walking 1s and walking 0s test is executed additionally as part of stress test.rcrc}rc(hjchjcubaubh)rc}rc(hUhKhjchjW5hhh}rc(h]rcXtest accessoriesr cah]h]h]r!cUid237r"cah]uhMhhh]r#c(h)r$c}r%c(hXTest Accessoriesr&chjchjW5hhh}r'c(h]h]h]h]h]uhMhhh]r(chXTest Accessoriesr)cr*c}r+c(hj&chj$cubaubh)r,c}r-c(hX=No additional accessories are required for running this test.r.chjchjW5hhh}r/c(h]h]h]h]h]uhMhhh]r0chX=No additional accessories are required for running this test.r1cr2c}r3c(hj.chj,cubaubeubh)r4c}r5c(hUhKhjchjW5hhh}r6c(h]r7cX test setupr8cah]h]h]r9cUid238r:cah]uhMhhh]r;c(h)rchj4chjW5hhh}r?c(h]h]h]h]h]uhMhhh]r@chX Test SetuprAcrBc}rCc(hj>chjd(h]h]h]h]h]uhKhhh]ubaubeubeubh)r?d}r@d(hUhj\hjW5hhh}rAd(h]h]h]h]rBdUnor-flash-stress-testrCdah]rDdhauhMyhhh]rEd(h)rFd}rGd(hXNOR Flash Stress TestrHdhj?dhjW5hhh}rId(h]h]h]h]h]uhMyhhh]rJdhXNOR Flash Stress TestrKdrLd}rMd(hjHdhjFdubaubh)rNd}rOd(hXThis test verifies the NOR flash memory connected to SPI interface. Whole memory of flash is written and read back for data verification during the test.rPdhj?dhjW5hhh}rQd(h]h]h]h]h]uhMzhhh]rRdhXThis test verifies the NOR flash memory connected to SPI interface. Whole memory of flash is written and read back for data verification during the test.rSdrTd}rUd(hjPdhjNdubaubh)rVd}rWd(hUhKhj?dhjW5hhh}rXd(h]rYdXtest accessoriesrZdah]h]h]r[dUid245r\dah]uhMhhh]r]d(h)r^d}r_d(hXTest Accessoriesr`dhjVdhjW5hhh}rad(h]h]h]h]h]uhMhhh]rbdhXTest Accessoriesrcdrdd}red(hj`dhj^dubaubh)rfd}rgd(hX=No additional accessories are required for running this test.rhdhjVdhjW5hhh}rid(h]h]h]h]h]uhMhhh]rjdhX=No additional accessories are required for running this test.rkdrld}rmd(hjhdhjfdubaubeubh)rnd}rod(hUhKhj?dhjW5hhh}rpd(h]rqdX test setuprrdah]h]h]rsdUid246rtdah]uhMhhh]rud(h)rvd}rwd(hX Test SetuprxdhjndhjW5hhh}ryd(h]h]h]h]h]uhMhhh]rzdhX Test Setupr{dr|d}r}d(hjxdhjvdubaubh)r~d}rd(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rdhjndhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rdrd}rd(hjdhj~dubaubeubh)rd}rd(hUhKhj?dhjW5hhh}rd(h]rdXtest executionrdah]h]h]rdUid247rdah]uhMhhh]rd(h)rd}rd(hXTest ExecutionrdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXTest Executionrdrd}rd(hjdhjdubaubj[)rd}rd(hUhjdhNhj^h}rd(h]h]h]h]h]uhNhhh]rdj)rd}rd(hUh}rd(jX-h]h]h]h]h]uhjdh]rd(j)rd}rd(hX7Select the menu option to run ‘norflashStress_TEST’rdh}rd(h]h]h]h]h]uhjdh]rdh)rd}rd(hjdhjdhjW5hhh}rd(h]h]h]h]h]uhMh]rdhX7Select the menu option to run ‘norflashStress_TEST’rdrd}rd(hjdhjdubaubahjubj)rd}rd(hX&Verify the test log on serial console h}rd(h]h]h]h]h]uhjdh]rdh)rd}rd(hX%Verify the test log on serial consolerdhjdhjW5hhh}rd(h]h]h]h]h]uhMh]rdhX%Verify the test log on serial consolerdrd}rd(hjdhjdubaubahjubehjubaubeubh)rd}rd(hUhKhj?dhjW5hhh}rd(h]rdXtest logrdah]h]h]rdUid248rdah]uhMhhh]rd(h)rd}rd(hXTest LogrdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXTest Logrdrd}rd(hjdhjdubaubh)rd}rd(hX3Sample log for NOR flash stress test is shown belowrdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhX3Sample log for NOR flash stress test is shown belowrdrd}rd(hjdhjdubaubj()rd}rd(hX************************************************ * SPI FlASH Stress Test * ************************************************ Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 1 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 2 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 3 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 4 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 5 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 6 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 7 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 8 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 9 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 10 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 11 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 12 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 13 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 14 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 15 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 16 Data Read matches with Data written SPI Flash Test Passed! ... ... ... Verifying Sector - 250 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 251 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 252 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 253 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 254 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 255 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test PassedhjdhjW5hj+h}rd(hhh]h]h]h]h]uhMhhh]rdhX************************************************ * SPI FlASH Stress Test * ************************************************ Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 1 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 2 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 3 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 4 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 5 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 6 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 7 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 8 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 9 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 10 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 11 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 12 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 13 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 14 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 15 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 16 Data Read matches with Data written SPI Flash Test Passed! ... ... ... Verifying Sector - 250 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 251 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 252 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 253 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 254 Data Read matches with Data written SPI Flash Test Passed! Verifying Sector - 255 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test Passedrdrd}rd(hUhjdubaubj1)rd}rd(hUhjdhjW5hj4h}rd(h]h]h]h]h]uhMhhh]rdj7)rd}rd(hUj:KhjdhjW5hhh}rd(h]h]h]h]h]uhKhhh]ubaubeubeubh)rd}rd(hUhj\hjW5hhh}rd(h]h]h]h]rdUospi-flash-stress-testrdah]rdhAauhMhhh]rd(h)rd}rd(hXOSPI Flash Stress TestrdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXOSPI Flash Stress Testrdrd}rd(hjdhjdubaubh)rd}rd(hXThis test verifies the flash memory connected to OSPI interface. Whole memory of OSPI flash is written and read back for data verification during the test.rdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXThis test verifies the flash memory connected to OSPI interface. Whole memory of OSPI flash is written and read back for data verification during the test.rdrd}rd(hjdhjdubaubh)rd}rd(hUhKhjdhjW5hhh}rd(h]rdXtest accessoriesrdah]h]h]rdUid249rdah]uhMhhh]rd(h)rd}rd(hXTest AccessoriesrdhjdhjW5hhh}rd(h]h]h]h]h]uhMhhh]rdhXTest Accessoriesrere}re(hjdhjdubaubh)re}re(hX=No additional accessories are required for running this test.rehjdhjW5hhh}re(h]h]h]h]h]uhMhhh]rehX=No additional accessories are required for running this test.rer e}r e(hjehjeubaubeubh)r e}r e(hUhKhjdhjW5hhh}r e(h]reX test setupreah]h]h]reUid250reah]uhM hhh]re(h)re}re(hX Test Setuprehj ehjW5hhh}re(h]h]h]h]h]uhM hhh]rehX Test Setuprere}re(hjehjeubaubh)re}re(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rehj ehjW5hhh}re(h]h]h]h]h]uhM hhh]rehXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r er!e}r"e(hjehjeubaubeubh)r#e}r$e(hUhKhjdhjW5hhh}r%e(h]r&eXtest executionr'eah]h]h]r(eUid251r)eah]uhMhhh]r*e(h)r+e}r,e(hXTest Executionr-ehj#ehjW5hhh}r.e(h]h]h]h]h]uhMhhh]r/ehXTest Executionr0er1e}r2e(hj-ehj+eubaubj[)r3e}r4e(hUhj#ehNhj^h}r5e(h]h]h]h]h]uhNhhh]r6ej)r7e}r8e(hUh}r9e(jX-h]h]h]h]h]uhj3eh]r:e(j)r;e}re(h]h]h]h]h]uhj7eh]r?eh)r@e}rAe(hj=ehj;ehjW5hhh}rBe(h]h]h]h]h]uhMh]rCehX3Select the menu option to run ‘ospiStress_TEST’rDerEe}rFe(hj=ehj@eubaubahjubj)rGe}rHe(hX&Verify the test log on serial console h}rIe(h]h]h]h]h]uhj7eh]rJeh)rKe}rLe(hX%Verify the test log on serial consolerMehjGehjW5hhh}rNe(h]h]h]h]h]uhMh]rOehX%Verify the test log on serial consolerPerQe}rRe(hjMehjKeubaubahjubehjubaubeubh)rSe}rTe(hUhKhjdhjW5hhh}rUe(h]rVeXtest logrWeah]h]h]rXeUid252rYeah]uhMhhh]rZe(h)r[e}r\e(hXTest Logr]ehjSehjW5hhh}r^e(h]h]h]h]h]uhMhhh]r_ehXTest Logr`erae}rbe(hj]ehj[eubaubh)rce}rde(hX4Sample log for OSPI flash stress test is shown belowreehjSehjW5hhh}rfe(h]h]h]h]h]uhMhhh]rgehX4Sample log for OSPI flash stress test is shown belowrherie}rje(hjeehjceubaubj()rke}rle(hXw**************************************************** * OSPI FLASH Stress Test * **************************************************** OSPI NOR device ID: 0x5b1a, manufacturer ID: 0x2c Verifying the OSPI Flash ... OSPI Flash Stress Test Iteration - 1 Verified upto Page - 0x0 Verified upto Page - 0x1000 Verified upto Page - 0x2000 Verified upto Page - 0x3000 Verified upto Page - 0x4000 Verified upto Page - 0x5000 Verified upto Page - 0x6000 Verified upto Page - 0x7000 Verified upto Page - 0x8000 Verified upto Page - 0x9000 Verified upto Page - 0xa000 Verified upto Page - 0xb000 Verified upto Page - 0xc000 Verified upto Page - 0xd000 Verified upto Page - 0xe000 Verified upto Page - 0xf000 ... ... ... Verified upto Page - 0x3ffd000 Verified upto Page - 0x3ffe000 Verified upto Page - 0x3fff000 OSPI NOR Flash verification SuccessfulhjSehjW5hj+h}rme(hhh]h]h]h]h]uhM hhh]rnehXw**************************************************** * OSPI FLASH Stress Test * **************************************************** OSPI NOR device ID: 0x5b1a, manufacturer ID: 0x2c Verifying the OSPI Flash ... OSPI Flash Stress Test Iteration - 1 Verified upto Page - 0x0 Verified upto Page - 0x1000 Verified upto Page - 0x2000 Verified upto Page - 0x3000 Verified upto Page - 0x4000 Verified upto Page - 0x5000 Verified upto Page - 0x6000 Verified upto Page - 0x7000 Verified upto Page - 0x8000 Verified upto Page - 0x9000 Verified upto Page - 0xa000 Verified upto Page - 0xb000 Verified upto Page - 0xc000 Verified upto Page - 0xd000 Verified upto Page - 0xe000 Verified upto Page - 0xf000 ... ... ... Verified upto Page - 0x3ffd000 Verified upto Page - 0x3ffe000 Verified upto Page - 0x3fff000 OSPI NOR Flash verification Successfulroerpe}rqe(hUhjkeubaubj1)rre}rse(hUhjSehjW5hj4h}rte(h]h]h]h]h]uhMOhhh]ruej7)rve}rwe(hUj:KhjrehjW5hhh}rxe(h]h]h]h]h]uhKhhh]ubaubeubeubh)rye}rze(hUhj\hjW5hhh}r{e(h]h]h]h]r|eUtemperature-sensor-stress-testr}eah]r~eh)auhMRhhh]re(h)re}re(hXTemperature Sensor Stress TestrehjyehjW5hhh}re(h]h]h]h]h]uhMRhhh]rehXTemperature Sensor Stress Testrere}re(hjehjeubaubh)re}re(hXThis test verifies reading the ambient temperature from temperature sensor interface. Test verifies all the temperature sensor devices on the board. Test is repeated for 100 iterations.rehjyehjW5hhh}re(h]h]h]h]h]uhMShhh]rehXThis test verifies reading the ambient temperature from temperature sensor interface. Test verifies all the temperature sensor devices on the board. Test is repeated for 100 iterations.rere}re(hjehjeubaubh)re}re(hUhKhjyehjW5hhh}re(h]reXtest accessoriesreah]h]h]reUid253reah]uhMXhhh]re(h)re}re(hXTest AccessoriesrehjehjW5hhh}re(h]h]h]h]h]uhMXhhh]rehXTest Accessoriesrere}re(hjehjeubaubh)re}re(hX=No additional accessories are required for running this test.rehjehjW5hhh}re(h]h]h]h]h]uhMYhhh]rehX=No additional accessories are required for running this test.rere}re(hjehjeubaubeubh)re}re(hUhKhjyehjW5hhh}re(h]reX test setupreah]h]h]reUid254reah]uhM\hhh]re(h)re}re(hX Test SetuprehjehjW5hhh}re(h]h]h]h]h]uhM\hhh]rehX Test Setuprere}re(hjehjeubaubh)re}re(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rehjehjW5hhh}re(h]h]h]h]h]uhM]hhh]rehXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.rere}re(hjehjeubaubeubh)re}re(hUhKhjyehjW5hhh}re(h]reXtest executionreah]h]h]reUid255reah]uhM`hhh]re(h)re}re(hXTest ExecutionrehjehjW5hhh}re(h]h]h]h]h]uhM`hhh]rehXTest Executionrere}re(hjehjeubaubj[)re}re(hUhjehNhj^h}re(h]h]h]h]h]uhNhhh]rej)re}re(hUh}re(jX-h]h]h]h]h]uhjeh]re(j)re}re(hX:Select the menu option to run ‘temperatureStress_TEST’reh}re(h]h]h]h]h]uhjeh]reh)re}re(hjehjehjW5hhh}re(h]h]h]h]h]uhMah]rehX:Select the menu option to run ‘temperatureStress_TEST’rere}re(hjehjeubaubahjubj)re}re(hX&Verify the test log on serial console h}re(h]h]h]h]h]uhjeh]reh)re}re(hX%Verify the test log on serial consolerehjehjW5hhh}re(h]h]h]h]h]uhMbh]rehX%Verify the test log on serial consolerere}re(hjehjeubaubahjubehjubaubeubh)re}re(hUhKhjyehjW5hhh}re(h]reXtest logreah]h]h]reUid256reah]uhMehhh]re(h)re}re(hXTest LogrehjehjW5hhh}re(h]h]h]h]h]uhMehhh]rehXTest Logrere}re(hjehjeubaubh)rf}rf(hX<Sample log for temperature sensor stress test is shown belowrfhjehjW5hhh}rf(h]h]h]h]h]uhMfhhh]rfhX<Sample log for temperature sensor stress test is shown belowrfrf}rf(hjfhjfubaubj()rf}r f(hX ********************************************* * Temperature Sensor Test * ********************************************* Running Temperature Sensor Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 1 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 2 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 3 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 4 Temperature Sensor Test Passed ... ... ... Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 99 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 100 Temperature Sensor Test Passed Temperature Sensor Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS Temperature Sensor Test PassedhjehjW5hj+h}r f(hhh]h]h]h]h]uhM` hhh]r fhX ********************************************* * Temperature Sensor Test * ********************************************* Running Temperature Sensor Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 1 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 2 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 3 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 4 Temperature Sensor Test Passed ... ... ... Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 99 Temperature Sensor Test Passed Running Temperature Sensor Test... Running temperature sensor test... Read temperature register value - 680 Temperature read from the temperature sensor slave address - 0x48 is 42 degree centigrade Read temperature register value - 616 Temperature read from the temperature sensor slave address - 0x49 is 38 degree centigrade Temperature sensor test Passed! Iteration : 100 Temperature Sensor Test Passed Temperature Sensor Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS Temperature Sensor Test Passedr fr f}rf(hUhjfubaubj1)rf}rf(hUhjehjW5hj4h}rf(h]h]h]h]h]uhMhhh]rfj7)rf}rf(hUj:KhjfhjW5hhh}rf(h]h]h]h]h]uhKhhh]ubaubeubeubh)rf}rf(hUhj\hjW5hhh}rf(h]h]h]h]rfUusb-host-stress-testrfah]rfhauhMhhh]rf(h)rf}rf(hXUSB Host Stress TestrfhjfhjW5hhh}r f(h]h]h]h]h]uhMhhh]r!fhXUSB Host Stress Testr"fr#f}r$f(hjfhjfubaubh)r%f}r&f(hXwThis test verifies USB host mode operation of the HW platform under test. USB interface functions as USB mass storage host during the test. USB device connected to the board will be enumerated, a file will be created, written with test data and read back to verify the data. USB interface operates at high-speed (USB 2.0) during the test. Test is repeated for 100 iterations.r'fhjfhjW5hhh}r(f(h]h]h]h]h]uhMhhh]r)fhXwThis test verifies USB host mode operation of the HW platform under test. USB interface functions as USB mass storage host during the test. USB device connected to the board will be enumerated, a file will be created, written with test data and read back to verify the data. USB interface operates at high-speed (USB 2.0) during the test. Test is repeated for 100 iterations.r*fr+f}r,f(hj'fhj%fubaubh)r-f}r.f(hUhKhjfhjW5hhh}r/f(h]r0fXtest accessoriesr1fah]h]h]r2fUid257r3fah]uhMhhh]r4f(h)r5f}r6f(hXTest Accessoriesr7fhj-fhjW5hhh}r8f(h]h]h]h]h]uhMhhh]r9fhXTest Accessoriesr:fr;f}rf(hX4USB OTG pen drive or normal pen drive with OTG cabler?fhj-fhjW5hhh}r@f(h]h]h]h]h]uhMhhh]rAfhX4USB OTG pen drive or normal pen drive with OTG cablerBfrCf}rDf(hj?fhj=fubaubeubh)rEf}rFf(hUhKhjfhjW5hhh}rGf(h]rHfX test setuprIfah]h]h]rJfUid258rKfah]uhMhhh]rLf(h)rMf}rNf(hX Test SetuprOfhjEfhjW5hhh}rPf(h]h]h]h]h]uhMhhh]rQfhX Test SetuprRfrSf}rTf(hjOfhjMfubaubh)rUf}rVf(hXNRefer `USB Host Test Setup `_ section for more detailsrWfhjEfhjW5hhh}rXf(h]h]h]h]h]uhMhhh]rYf(hXRefer rZfr[f}r\f(hXRefer hjUfubj)r]f}r^f(hX/`USB Host Test Setup `_h}r_f(UnameXUSB Host Test SetupjXindex_board.html#id188r`fh]h]h]h]h]uhjUfh]rafhXUSB Host Test Setuprbfrcf}rdf(hUhj]fubahj ubjW)ref}rff(hX hKhjUfhjZh}rgf(Urefurij`fh]rhfUusb-host-test-setuprifah]h]h]h]rjfhauh]ubhX section for more detailsrkfrlf}rmf(hX section for more detailshjUfubeubeubh)rnf}rof(hUhKhjfhjW5hhh}rpf(h]rqfXtest executionrrfah]h]h]rsfUid259rtfah]uhMhhh]ruf(h)rvf}rwf(hXTest ExecutionrxfhjnfhjW5hhh}ryf(h]h]h]h]h]uhMhhh]rzfhXTest Executionr{fr|f}r}f(hjxfhjvfubaubj[)r~f}rf(hUhjnfhNhj^h}rf(h]h]h]h]h]uhNhhh]rfj)rf}rf(hUh}rf(jX-h]h]h]h]h]uhj~fh]rf(j)rf}rf(hX6Select the menu option to run ‘usbHostStress_TEST’rfh}rf(h]h]h]h]h]uhjfh]rfh)rf}rf(hjfhjfhjW5hhh}rf(h]h]h]h]h]uhMh]rfhX6Select the menu option to run ‘usbHostStress_TEST’rfrf}rf(hjfhjfubaubahjubj)rf}rf(hXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkh}rf(h]h]h]h]h]uhjfh]rfh)rf}rf(hXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkrfhjfhjW5hhh}rf(h]h]h]h]h]uhMh]rfhXTest supports USB host port on CP board and SerDes board on AM65x IDK platform. Choose the board under test in the serial console while running the test on am65xx_idkrfrf}rf(hjfhjfubaubahjubj)rf}rf(hX&Verify the test log on serial console h}rf(h]h]h]h]h]uhjfh]rfh)rf}rf(hX%Verify the test log on serial consolerfhjfhjW5hhh}rf(h]h]h]h]h]uhMh]rfhX%Verify the test log on serial consolerfrf}rf(hjfhjfubaubahjubehjubaubeubh)rf}rf(hUhKhjfhjW5hhh}rf(h]rfXtest logrfah]h]h]rfUid260rfah]uhMhhh]rf(h)rf}rf(hXTest LogrfhjfhjW5hhh}rf(h]h]h]h]h]uhMhhh]rfhXTest Logrfrf}rf(hjfhjfubaubh)rf}rf(hX@Sample log for USB host stress test on am65xx_evm is shown belowrfhjfhjW5hhh}rf(h]h]h]h]h]uhMhhh]rfhX@Sample log for USB host stress test on am65xx_evm is shown belowrfrf}rf(hjfhjfubaubj()rf}rf(hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Running USB Host Test in Stress Mode for 100 Number of Times... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 1 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 2 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 3 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 4 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 5 USB Host Test Passed ... ... ... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 99 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 100 USB Host Test Passed USB Host Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS USB Host test PassedhjfhjW5hj+h}rf(hhh]h]h]h]h]uhM hhh]rfhX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Running USB Host Test in Stress Mode for 100 Number of Times... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 1 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 2 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 3 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 4 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 5 USB Host Test Passed ... ... ... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 99 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 100 USB Host Test Passed USB Host Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASS USB Host test Passedrfrf}rf(hUhjfubaubj1)rf}rf(hUhjfhjW5hj4h}rf(h]h]h]h]h]uhMohhh]rfj7)rf}rf(hUj:KhjfhjW5hhh}rf(h]h]h]h]h]uhKhhh]ubaubh)rf}rf(hXFSample log for USB host stress test on am65xx_idk board is shown belowrfhjfhjW5hhh}rf(h]h]h]h]h]uhMqhhh]rfhXFSample log for USB host stress test on am65xx_idk board is shown belowrfrf}rf(hjfhjfubaubj()rf}rf(hX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 1 Running USB Host Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 1 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 2 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 3 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 4 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 5 USB Host Test Passed ... ... ... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 99 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 100 USB Host Test Passed USB Host Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASShjfhjW5hj+h}rf(hhh]h]h]h]h]uhMk!hhh]rfhX************************************************* * USB Host Test * ************************************************* USB Host MSC example!! Select the options below on which application has to be run 1.CP board 2.Serdes Board 1 Running USB Host Test in Stress Mode for 100 Number of Times... Enter 'b' in Serial Console to Terminate the Test Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 1 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 2 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 3 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 4 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 5 USB Host Test Passed ... ... ... Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 99 USB Host Test Passed Creating a text file... File already exist..!, deleting existing file and creating a new file Successfully created text file! Verifying data...... Data verified successfully Iteration : 100 USB Host Test Passed USB Host Stress Test Status =================================== Number of Times Executed - 100 Pass Count - 100 Fail Count - 0 Overall Status - PASSrfrf}rf(hUhjfubaubj1)rf}rf(hUhjfhjW5hj4h}rf(h]h]h]h]h]uhMhhh]rfj7)rf}rf(hUj:KhjfhjW5hhh}rf(h]h]h]h]h]uhKhhh]ubaubeubeubh)rf}rf(hUhj\hjW5hhh}rf(h]h]h]h]rfUmcan-stress-testrfah]rfh'auhMhhh]rf(h)rf}rf(hXMCAN Stress TestrfhjfhjW5hhh}rf(h]h]h]h]h]uhMhhh]rfhXMCAN Stress Testrfrf}rf(hjfhjfubaubh)rf}rf(hXVerifies MCAN ports on the HW platform with two MCAN ports connected with each other. 10240 packets sent from one port and received on another port. Both the ports are verified for Tx and Rx.rfhjfhjW5hhh}rf(h]h]h]h]h]uhMhhh]rfhXVerifies MCAN ports on the HW platform with two MCAN ports connected with each other. 10240 packets sent from one port and received on another port. Both the ports are verified for Tx and Rx.rfrf}rf(hjfhjfubaubh)rf}rf(hUhKhjfhjW5hhh}rf(h]rgXtest accessoriesrgah]h]h]rgUid261rgah]uhMhhh]rg(h)rg}rg(hXTest AccessoriesrghjfhjW5hhh}rg(h]h]h]h]h]uhMhhh]r ghXTest Accessoriesr gr g}r g(hjghjgubaubh)r g}rg(hX MCAN port to port loopback cablerghjfhjW5hhh}rg(h]h]h]h]h]uhMhhh]rghX MCAN port to port loopback cablergrg}rg(hjghj gubaubeubh)rg}rg(hUhKhjfhjW5hhh}rg(h]rgX test setuprgah]h]h]rgUid262rgah]uhMhhh]rg(h)rg}rg(hX Test SetuprghjghjW5hhh}r g(h]h]h]h]h]uhMhhh]r!ghX Test Setupr"gr#g}r$g(hjghjgubaubh)r%g}r&g(hXIRefer `MCAN Test Setup `_ section for more detailsr'ghjghjW5hhh}r(g(h]h]h]h]h]uhMhhh]r)g(hXRefer r*gr+g}r,g(hXRefer hj%gubj)r-g}r.g(hX*`MCAN Test Setup `_h}r/g(UnameXMCAN Test SetupjXindex_board.html#id96r0gh]h]h]h]h]uhj%gh]r1ghXMCAN Test Setupr2gr3g}r4g(hUhj-gubahj ubjW)r5g}r6g(hX hKhj%ghjZh}r7g(Urefurij0gh]r8gUmcan-test-setupr9gah]h]h]h]r:ghauh]ubhX section for more detailsr;grg}r?g(hUhKhjfhjW5hhh}r@g(h]rAgXtest executionrBgah]h]h]rCgUid263rDgah]uhMhhh]rEg(h)rFg}rGg(hXTest ExecutionrHghj>ghjW5hhh}rIg(h]h]h]h]h]uhMhhh]rJghXTest ExecutionrKgrLg}rMg(hjHghjFgubaubj[)rNg}rOg(hUhj>ghNhj^h}rPg(h]h]h]h]h]uhNhhh]rQgj)rRg}rSg(hUh}rTg(jX-h]h]h]h]h]uhjNgh]rUg(j)rVg}rWg(hX3Select the menu option to run ‘mcanStress_TEST’rXgh}rYg(h]h]h]h]h]uhjRgh]rZgh)r[g}r\g(hjXghjVghjW5hhh}r]g(h]h]h]h]h]uhMh]r^ghX3Select the menu option to run ‘mcanStress_TEST’r_gr`g}rag(hjXghj[gubaubahjubj)rbg}rcg(hX&Verify the test log on serial console h}rdg(h]h]h]h]h]uhjRgh]regh)rfg}rgg(hX%Verify the test log on serial consolerhghjbghjW5hhh}rig(h]h]h]h]h]uhMh]rjghX%Verify the test log on serial consolerkgrlg}rmg(hjhghjfgubaubahjubehjubaubeubh)rng}rog(hUhKhjfhjW5hhh}rpg(h]rqgXtest logrrgah]h]h]rsgUid264rtgah]uhMhhh]rug(h)rvg}rwg(hXTest LogrxghjnghjW5hhh}ryg(h]h]h]h]h]uhMhhh]rzghXTest Logr{gr|g}r}g(hjxghjvgubaubh)r~g}rg(hX.Sample log for MCAN stress test is shown belowrghjnghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghX.Sample log for MCAN stress test is shown belowrgrg}rg(hjghj~gubaubj()rg}rg(hX*********************************************** * MCAN Stress Test * *********************************************** MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN0 MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN1 Transmitting Data on MCAN Port0 and Receiving on MCAN port 1 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x100008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Received Packet - 1 ... ... ... Sending Packet - 10240 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x59 Message DataByte2:0x2a Message DataByte3:0x5b Message DataByte4:0x4b Message DataByte5:0x9e Message DataByte6:0xd1 Message DataByte7:0x77 Message DataByte8:0x9d Message DataByte9:0x46 Message DataByte10:0x6d Message DataByte11:0x74 Message DataByte12:0xd7 Message DataByte13:0xc2 Message DataByte14:0x8d Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x59 Message DataByte2:0x2a Message DataByte3:0x5b Message DataByte4:0x4b Message DataByte5:0x9e Message DataByte6:0xd1 Message DataByte7:0x77 Message DataByte8:0x9d Message DataByte9:0x46 Message DataByte10:0x6d Message DataByte11:0x74 Message DataByte12:0xd7 Message DataByte13:0xc2 Message DataByte14:0x8d Received Packet - 10240 Transmitting Data on MCAN Port1 and Receiving on MCAN port 0 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x1f Message DataByte2:0x44 Message DataByte3:0x40 Message DataByte4:0x68 Message DataByte5:0x7a Message DataByte6:0x5d Message DataByte7:0xf5 Message DataByte8:0x3e Message DataByte9:0xa5 Message DataByte10:0xb7 Message DataByte11:0xe3 Message DataByte12:0x36 Message DataByte13:0x3a Message DataByte14:0x76 Received Packet - 1 ... ... ... Sending Packet - 10240 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xbd Message DataByte2:0x97 Message DataByte3:0xca Message DataByte4:0x10 Message DataByte5:0xd5 Message DataByte6:0x2c Message DataByte7:0x14 Message DataByte8:0x6e Message DataByte9:0xcc Message DataByte10:0x69 Message DataByte11:0x21 Message DataByte12:0xb8 Message DataByte13:0x94 Message DataByte14:0xf6 Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xbd Message DataByte2:0x97 Message DataByte3:0xca Message DataByte4:0x10 Message DataByte5:0xd5 Message DataByte6:0x2c Message DataByte7:0x14 Message DataByte8:0x6e Message DataByte9:0xcc Message DataByte10:0x69 Message DataByte11:0x21 Message DataByte12:0xb8 Message DataByte13:0x94 Message DataByte14:0xf6 Received Packet - 10240 MCAN diagnostic test completed. Finished running mcanStress_TEST, result passed!hjnghjW5hj+h}rg(hhh]h]h]h]h]uhM!hhh]rghX*********************************************** * MCAN Stress Test * *********************************************** MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN0 MCANSS Revision ID: scheme:0x1 Business Unit:0x2 Module ID:0x8e0 RTL Revision:0x5 Major Revision:0x1 Custom Revision:0x0 Minor Revision:0x1 CAN-FD operation is enabled through E-Fuse. Endianess Value:0x87654321 Successfully configured MCAN1 Transmitting Data on MCAN Port0 and Receiving on MCAN port 1 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x100008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x30 Message DataByte2:0xb9 Message DataByte3:0xd6 Message DataByte4:0xfb Message DataByte5:0x4b Message DataByte6:0x87 Message DataByte7:0x27 Message DataByte8:0x97 Message DataByte9:0x58 Message DataByte10:0x0 Message DataByte11:0xc0 Message DataByte12:0xd4 Message DataByte13:0xe Message DataByte14:0x3 Received Packet - 1 ... ... ... Sending Packet - 10240 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0x59 Message DataByte2:0x2a Message DataByte3:0x5b Message DataByte4:0x4b Message DataByte5:0x9e Message DataByte6:0xd1 Message DataByte7:0x77 Message DataByte8:0x9d Message DataByte9:0x46 Message DataByte10:0x6d Message DataByte11:0x74 Message DataByte12:0xd7 Message DataByte13:0xc2 Message DataByte14:0x8d Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x59 Message DataByte2:0x2a Message DataByte3:0x5b Message DataByte4:0x4b Message DataByte5:0x9e Message DataByte6:0xd1 Message DataByte7:0x77 Message DataByte8:0x9d Message DataByte9:0x46 Message DataByte10:0x6d Message DataByte11:0x74 Message DataByte12:0xd7 Message DataByte13:0xc2 Message DataByte14:0x8d Received Packet - 10240 Transmitting Data on MCAN Port1 and Receiving on MCAN port 0 Sending Packet - 1 Message successfully transferred with payload Bytes:0xf Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0x1f Message DataByte2:0x44 Message DataByte3:0x40 Message DataByte4:0x68 Message DataByte5:0x7a Message DataByte6:0x5d Message DataByte7:0xf5 Message DataByte8:0x3e Message DataByte9:0xa5 Message DataByte10:0xb7 Message DataByte11:0xe3 Message DataByte12:0x36 Message DataByte13:0x3a Message DataByte14:0x76 Received Packet - 1 ... ... ... Sending Packet - 10240 Message successfully transferred with payload Bytes:0xf Message ID:0x100000 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Store Tx Events:0x1 Message Marker:0xaa Message DataByte0:0xaa Message DataByte1:0xbd Message DataByte2:0x97 Message DataByte3:0xca Message DataByte4:0x10 Message DataByte5:0xd5 Message DataByte6:0x2c Message DataByte7:0x14 Message DataByte8:0x6e Message DataByte9:0xcc Message DataByte10:0x69 Message DataByte11:0x21 Message DataByte12:0xb8 Message DataByte13:0x94 Message DataByte14:0xf6 Receiving data on port0 Message successfully received with payload Bytes:0xf Received last message with following details: Message ID:0x110008 Message Remote Transmission Request:0x0 Message Extended Frame ID(0:11Bit ID/1:29bit ID):0x0 Message Error State Indicator(0:Error Active/1:Error Passive):0x0 Message TimeStamp:0x0 Message Data Length Code:0xf Message BRS:0x1 Message CAN FD format:0x1 Message Filter Index:0x0 Message Accept Non-matching Frame:0x0 Message DataByte0:0xaa Message DataByte1:0xbd Message DataByte2:0x97 Message DataByte3:0xca Message DataByte4:0x10 Message DataByte5:0xd5 Message DataByte6:0x2c Message DataByte7:0x14 Message DataByte8:0x6e Message DataByte9:0xcc Message DataByte10:0x69 Message DataByte11:0x21 Message DataByte12:0xb8 Message DataByte13:0x94 Message DataByte14:0xf6 Received Packet - 10240 MCAN diagnostic test completed. Finished running mcanStress_TEST, result passed!rgrg}rg(hUhjgubaubj1)rg}rg(hUhjnghjW5hj4h}rg(h]h]h]h]h]uhMhhh]rgj7)rg}rg(hUj:KhjghjW5hhh}rg(h]h]h]h]h]uhKhhh]ubaubeubeubh)rg}rg(hUhj\hjW5hhh}rg(h]h]h]h]rgUuart-stress-testrgah]rghwauhMhhh]rg(h)rg}rg(hXUART Stress TestrghjghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghXUART Stress Testrgrg}rg(hjghjgubaubh)rg}rg(hXThis test verifies the UART serial port by sending 10MB of data to the serial console. Data is received by the teraterm script on host PC and looped back to the board. Data is recieved by the test running on the board and verified to confirm data match.rghjghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghXThis test verifies the UART serial port by sending 10MB of data to the serial console. Data is received by the teraterm script on host PC and looped back to the board. Data is recieved by the test running on the board and verified to confirm data match.rgrg}rg(hjghjgubaubj)rg}rg(hX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.hjghjW5hjh}rg(h]h]h]h]h]uhNhhh]rgh)rg}rg(hX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.rghjghjW5hhh}rg(h]h]h]h]h]uhMh]rghX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.rgrg}rg(hjghjgubaubaubh)rg}rg(hUhKhjghjW5hhh}rg(h]rgXtest accessoriesrgah]h]h]rgUid265rgah]uhMhhh]rg(h)rg}rg(hXTest AccessoriesrghjghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghXTest Accessoriesrgrg}rg(hjghjgubaubj[)rg}rg(hUhjghNhj^h}rg(h]h]h]h]h]uhNhhh]rgj)rg}rg(hUh}rg(jX-h]h]h]h]h]uhjgh]rg(j)rg}rg(hXUART serial cable.rgh}rg(h]h]h]h]h]uhjgh]rgh)rg}rg(hjghjghjW5hhh}rg(h]h]h]h]h]uhMh]rghXUART serial cable.rgrg}rg(hjghjgubaubahjubj)rg}rg(hX3JTAG connection (on board or external as supported)rgh}rg(h]h]h]h]h]uhjgh]rgh)rg}rg(hjghjghjW5hhh}rg(h]h]h]h]h]uhMh]rghX3JTAG connection (on board or external as supported)rgrg}rg(hjghjgubaubahjubehjubaubh)rg}rg(hXpDifferent platforms may need different cable for accessing the serial port. Refer to HW manual for more details.rghjghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghXpDifferent platforms may need different cable for accessing the serial port. Refer to HW manual for more details.rgrg}rg(hjghjgubaubeubh)rg}rg(hUhKhjghjW5hhh}rg(h]rgX test setuprgah]h]h]rgUid266rgah]uhMhhh]rg(h)rg}rg(hX Test SetuprghjghjW5hhh}rg(h]h]h]h]h]uhMhhh]rghX Test Setuprgrg}rg(hjghjgubaubj[)rg}rh(hUhjghNhj^h}rh(h]h]h]h]h]uhNhhh]rh(j)rh}rh(hUh}rh(jX-h]h]h]h]h]uhjgh]rh(j)rh}rh(hXEConnect the UART serial cable between the board UART port and host PCr hh}r h(h]h]h]h]h]uhjhh]r hh)r h}r h(hj hhjhhjW5hhh}rh(h]h]h]h]h]uhMh]rhhXEConnect the UART serial cable between the board UART port and host PCrhrh}rh(hj hhj hubaubahjubj)rh}rh(hX-Connect the JTAG port of the board to host PCrhh}rh(h]h]h]h]h]uhjhh]rhh)rh}rh(hjhhjhhjW5hhh}rh(h]h]h]h]h]uhMh]rhhX-Connect the JTAG port of the board to host PCrhrh}rh(hjhhjhubaubahjubj)rh}r h(hXESetup serial console application on host PC with below configurationsr!hh}r"h(h]h]h]h]h]uhjhh]r#hh)r$h}r%h(hj!hhjhhjW5hhh}r&h(h]h]h]h]h]uhMh]r'hhXESetup serial console application on host PC with below configurationsr(hr)h}r*h(hj!hhj$hubaubahjubehjubj()r+h}r,h(hXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Nonehjghj+h}r-h(hhh]h]h]h]h]uhM#h]r.hhXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Noner/hr0h}r1h(hUhj+hubaubj)r2h}r3h(hUh}r4h(jX-h]h]h]h]h]uhjgh]r5hj)r6h}r7h(hXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms. h}r8h(h]h]h]h]h]uhj2hh]r9hh)r:h}r;h(hXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms.rhhXFour UART ports are verified on am65xx_evm platform and three UART ports are verified on am65xx_idk platform. Need to make above setup on all serial consoles connected to multiple ports on these platforms.r?hr@h}rAh(hjMacro' and select the script file "am65xx_uart_stress_test_script.ttl"rhhh}rih(h]h]h]h]h]uhjVhh]rjhh)rkh}rlh(hjhhhjfhhjW5hhh}rmh(h]h]h]h]h]uhMh]rnhhXRun the TTL script from all the Teraterm consoles by selecting menu 'Control->Macro' and select the script file "am65xx_uart_stress_test_script.ttl"rohrph}rqh(hjhhhjkhubaubahjubj)rrh}rsh(hX]Open CCS, launch the target config file for the platform under test and connect to the targetrthh}ruh(h]h]h]h]h]uhjVhh]rvhh)rwh}rxh(hjthhjrhhjW5hhh}ryh(h]h]h]h]h]uhMh]rzhhX]Open CCS, launch the target config file for the platform under test and connect to the targetr{hr|h}r}h(hjthhjwhubaubahjubj)r~h}rh(hXLoad and run the UART diagnostic stress test binary (uartStress_diagExample__.xfg) on the being used for the test.rhh}rh(h]h]h]h]h]uhjVhh]rhh)rh}rh(hjhhj~hhjW5hhh}rh(h]h]h]h]h]uhMh]rhhXLoad and run the UART diagnostic stress test binary (uartStress_diagExample__.xfg) on the being used for the test.rhrh}rh(hjhhjhubaubahjubj)rh}rh(hXETest script shall start displaying the messages on Teraterm consoles.rhh}rh(h]h]h]h]h]uhjVhh]rhh)rh}rh(hjhhjhhjW5hhh}rh(h]h]h]h]h]uhMh]rhhXETest script shall start displaying the messages on Teraterm consoles.rhrh}rh(hjhhjhubaubahjubj)rh}rh(hXPTest shall take few hours to complete and displays final result on the console. h}rh(h]h]h]h]h]uhjVhh]rhh)rh}rh(hXOTest shall take few hours to complete and displays final result on the console.rhhjhhjW5hhh}rh(h]h]h]h]h]uhMh]rhhXOTest shall take few hours to complete and displays final result on the console.rhrh}rh(hjhhjhubaubahjubehjubaubeubh)rh}rh(hUhKhjghjW5hhh}rh(h]rhXtest logrhah]h]h]rhUid268rhah]uhMhhh]rh(h)rh}rh(hXTest LogrhhjhhjW5hhh}rh(h]h]h]h]h]uhMhhh]rhhXTest Logrhrh}rh(hjhhjhubaubh)rh}rh(hX*Sample UART stress test log is shown belowrhhjhhjW5hhh}rh(h]h]h]h]h]uhMhhh]rhhX*Sample UART stress test log is shown belowrhrh}rh(hjhhjhubaubj()rh}rh(hX0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ .... .... .... 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789: UART Stress Test PassedhjhhjW5hj+h}rh(hhh]h]h]h]h]uhM#hhh]rhhX0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ .... .... .... 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789: UART Stress Test Passedrhrh}rh(hUhjhubaubj1)rh}rh(hUhjhhjW5hj4h}rh(h]h]h]h]h]uhMhhh]rhj7)rh}rh(hUj:KhjhhjW5hhh}rh(h]h]h]h]h]uhKhhh]ubaubeubeubh)rh}rh(hUhj\hjW5hhh}rh(h]h]h]h]rhUrs485-uart-stress-testrhah]rhhauhMhhh]rh(h)rh}rh(hXRS485 UART Stress TestrhhjhhjW5hhh}rh(h]h]h]h]h]uhMhhh]rhhXRS485 UART Stress Testrhrh}rh(hjhhjhubaubh)rh}rh(hXThis test verifies the RS485 UART serial port by sending 10MB of data to the serial console. Data is received by the teraterm script on host PC and looped back to the board. Data is recieved by the test running on the board and verified to confirm data match.rhhjhhjW5hhh}rh(h]h]h]h]h]uhMhhh]rhhXThis test verifies the RS485 UART serial port by sending 10MB of data to the serial console. Data is received by the teraterm script on host PC and looped back to the board. Data is recieved by the test running on the board and verified to confirm data match.rhrh}rh(hjhhjhubaubj)rh}rh(hX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.hjhhjW5hjh}rh(h]h]h]h]h]uhNhhh]rhh)rh}rh(hX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.rhhjhhjW5hhh}rh(h]h]h]h]h]uhMh]rhhX This test does not support SD boot execution and need to run from CCS over JTAG. Automation script is provided for teraterm application but the test should be functional with any utility that can receive the data over COM port and send it back on the same COM port.rhrh}rh(hjhhjhubaubaubh)rh}rh(hUhKhjhhjW5hhh}rh(h]rhXtest accessoriesrhah]h]h]rhUid269rhah]uhMhhh]rh(h)rh}rh(hXTest AccessoriesrhhjhhjW5hhh}rh(h]h]h]h]h]uhMhhh]rhhXTest Accessoriesrhrh}rh(hjhhjhubaubj[)rh}rh(hUhjhhNhj^h}rh(h]h]h]h]h]uhNhhh]rhj)rh}ri(hUh}ri(jX-h]h]h]h]h]uhjhh]ri(j)ri}ri(hXZUART serial cable. RS485 to RS232 USB cable is used on AM65x IDK platform to run the test.h}ri(h]h]h]h]h]uhjhh]rih)ri}ri(hXZUART serial cable. RS485 to RS232 USB cable is used on AM65x IDK platform to run the test.r ihjihjW5hhh}r i(h]h]h]h]h]uhMh]r ihXZUART serial cable. RS485 to RS232 USB cable is used on AM65x IDK platform to run the test.r ir i}ri(hj ihjiubaubahjubj)ri}ri(hX3JTAG connection (on board or external as supported)rih}ri(h]h]h]h]h]uhjhh]rih)ri}ri(hjihjihjW5hhh}ri(h]h]h]h]h]uhMh]rihX3JTAG connection (on board or external as supported)riri}ri(hjihjiubaubahjubehjubaubh)ri}ri(hXpDifferent platforms may need different cable for accessing the serial port. Refer to HW manual for more details.rihjhhjW5hhh}ri(h]h]h]h]h]uhMhhh]rihXpDifferent platforms may need different cable for accessing the serial port. Refer to HW manual for more details.r ir!i}r"i(hjihjiubaubeubh)r#i}r$i(hUhKhjhhjW5hhh}r%i(h]r&iX test setupr'iah]h]h]r(iUid270r)iah]uhMhhh]r*i(h)r+i}r,i(hX Test Setupr-ihj#ihjW5hhh}r.i(h]h]h]h]h]uhMhhh]r/ihX Test Setupr0ir1i}r2i(hj-ihj+iubaubj[)r3i}r4i(hUhj#ihjW5hj^h}r5i(h]h]h]h]h]uhNhhh]r6i(j)r7i}r8i(hUh}r9i(jX-h]h]h]h]h]uhj3ih]r:i(j)r;i}ri(h]h]h]h]h]uhj7ih]r?ih)r@i}rAi(hj=ihj;ihjW5hhh}rBi(h]h]h]h]h]uhMh]rCihXKConnect the UART serial cable between the board RS485 UART port and host PCrDirEi}rFi(hj=ihj@iubaubahjubj)rGi}rHi(hX-Connect the JTAG port of the board to host PCrIih}rJi(h]h]h]h]h]uhj7ih]rKih)rLi}rMi(hjIihjGihjW5hhh}rNi(h]h]h]h]h]uhMh]rOihX-Connect the JTAG port of the board to host PCrPirQi}rRi(hjIihjLiubaubahjubj)rSi}rTi(hXESetup serial console application on host PC with below configurationsrUih}rVi(h]h]h]h]h]uhj7ih]rWih)rXi}rYi(hjUihjSihjW5hhh}rZi(h]h]h]h]h]uhMh]r[ihXESetup serial console application on host PC with below configurationsr\ir]i}r^i(hjUihjXiubaubahjubehjubj()r_i}r`i(hXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Nonehj3ihj+h}rai(hhh]h]h]h]h]uhM#h]rbihXrBaud rate - 115200 Data length - 8 bit Parity - None Stop bits - 1 Flow control - Nonercirdi}rei(hUhj_iubaubeubeubh)rfi}rgi(hUhKhjhhjW5hhh}rhi(h]riiXtest executionrjiah]h]h]rkiUid271rliah]uhM hhh]rmi(h)rni}roi(hXTest ExecutionrpihjfihjW5hhh}rqi(h]h]h]h]h]uhM hhh]rrihXTest Executionrsirti}rui(hjpihjniubaubj[)rvi}rwi(hUhjfihNhj^h}rxi(h]h]h]h]h]uhNhhh]ryij)rzi}r{i(hUh}r|i(jX-h]h]h]h]h]uhjvih]r}i(j)r~i}ri(hX;Power ON the board and clear any data on the serial consolerih}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hjihj~ihjW5hhh}ri(h]h]h]h]h]uhM h]rihX;Power ON the board and clear any data on the serial consoleriri}ri(hjihjiubaubahjubj)ri}ri(hXRun the TTL script from the Teraterm console by selecting menu 'Control->Macro' and select the script file "am65xx_uart_stress_test_script.ttl"rih}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hjihjihjW5hhh}ri(h]h]h]h]h]uhM h]rihXRun the TTL script from the Teraterm console by selecting menu 'Control->Macro' and select the script file "am65xx_uart_stress_test_script.ttl"riri}ri(hjihjiubaubahjubj)ri}ri(hX]Open CCS, launch the target config file for the platform under test and connect to the targetrih}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hjihjihjW5hhh}ri(h]h]h]h]h]uhMh]rihX]Open CCS, launch the target config file for the platform under test and connect to the targetriri}ri(hjihjiubaubahjubj)ri}ri(hXLoad and run the UART diagnostic stress test binary (rs485_uartStress_diagExample__.xfg) on the being used for the test.rih}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hjihjihjW5hhh}ri(h]h]h]h]h]uhMh]rihXLoad and run the UART diagnostic stress test binary (rs485_uartStress_diagExample__.xfg) on the being used for the test.riri}ri(hjihjiubaubahjubj)ri}ri(hXDTest script shall start displaying the messages on Teraterm console.rih}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hjihjihjW5hhh}ri(h]h]h]h]h]uhMh]rihXDTest script shall start displaying the messages on Teraterm console.riri}ri(hjihjiubaubahjubj)ri}ri(hXPTest shall take few hours to complete and displays final result on the console. h}ri(h]h]h]h]h]uhjzih]rih)ri}ri(hXOTest shall take few hours to complete and displays final result on the console.rihjihjW5hhh}ri(h]h]h]h]h]uhMh]rihXOTest shall take few hours to complete and displays final result on the console.riri}ri(hjihjiubaubahjubehjubaubeubh)ri}ri(hUhKhjhhjW5hhh}ri(h]riXtest logriah]h]h]riUid272riah]uhMhhh]ri(h)ri}ri(hXTest LogrihjihjW5hhh}ri(h]h]h]h]h]uhMhhh]rihXTest Logriri}ri(hjihjiubaubh)ri}ri(hX0Sample RS485 UART stress test log is shown belowrihjihjW5hhh}ri(h]h]h]h]h]uhMhhh]rihX0Sample RS485 UART stress test log is shown belowriri}ri(hjihjiubaubj()ri}ri(hX0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ .... .... .... 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789: PRU-ICSS UART Stress Test PassedhjihjW5hj+h}ri(hhh]h]h]h]h]uhM$hhh]rihX0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ .... .... .... 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 0123456789: PRU-ICSS UART Stress Test Passedriri}ri(hUhjiubaubj1)ri}ri(hUhjihjW5hj4h}ri(h]h]h]h]h]uhM'hhh]rij7)ri}ri(hUj:KhjihjW5hhh}ri(h]h]h]h]h]uhKhhh]ubaubeubeubh)ri}ri(hUhj\hjW5hhh}ri(h]h]h]h]riUpower-on-self-test-postriah]rihNauhM*hhh]ri(h)ri}ri(hXPower On Self Test (POST)rihjihjW5hhh}ri(h]h]h]h]h]uhM*hhh]rihXPower On Self Test (POST)riri}ri(hjihjiubaubh)ri}ri(hXThis test runs automatically when diagnostic tests are booted. Verifies the basic memories on the board and displays the test results. It also displays the board ID content programmed onto the Board ID EEPROM. After the diag boot, POST waits for 5 secs during which entering character 'b' in the serial console skips the POST execution. After the POST is executed, default diagnostic menu shall be displayed.rihjihjW5hhh}ri(h]h]h]h]h]uhM+hhh]rihXThis test runs automatically when diagnostic tests are booted. Verifies the basic memories on the board and displays the test results. It also displays the board ID content programmed onto the Board ID EEPROM. After the diag boot, POST waits for 5 secs during which entering character 'b' in the serial console skips the POST execution. After the POST is executed, default diagnostic menu shall be displayed.rjrj}rj(hjihjiubaubh)rj}rj(hUhKhjihjW5hhh}rj(h]rjXtest accessoriesrjah]h]h]rjUid273r jah]uhM3hhh]r j(h)r j}r j(hXTest Accessoriesr jhjjhjW5hhh}rj(h]h]h]h]h]uhM3hhh]rjhXTest Accessoriesrjrj}rj(hj jhj jubaubh)rj}rj(hX=No additional accessories are required for running this test.rjhjjhjW5hhh}rj(h]h]h]h]h]uhM4hhh]rjhX=No additional accessories are required for running this test.rjrj}rj(hjjhjjubaubeubh)rj}rj(hUhKhjihjW5hhh}rj(h]rjX test setuprjah]h]h]r jUid274r!jah]uhM7hhh]r"j(h)r#j}r$j(hX Test Setupr%jhjjhjW5hhh}r&j(h]h]h]h]h]uhM7hhh]r'jhX Test Setupr(jr)j}r*j(hj%jhj#jubaubh)r+j}r,j(hXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r-jhjjhjW5hhh}r.j(h]h]h]h]h]uhM8hhh]r/jhXYNo specific test setup is needed. Use the default HW setup recommended in HW user manual.r0jr1j}r2j(hj-jhj+jubaubeubh)r3j}r4j(hUhKhjihjW5hhh}r5j(h]r6jXtest executionr7jah]h]h]r8jUid275r9jah]uhM;hhh]r:j(h)r;j}rj(h]h]h]h]h]uhM;hhh]r?jhXTest Executionr@jrAj}rBj(hj=jhj;jubaubh)rCj}rDj(hX3Test runs automatically. No execution steps needed.rEjhj3jhjW5hhh}rFj(h]h]h]h]h]uhM<hhh]rGjhX3Test runs automatically. No execution steps needed.rHjrIj}rJj(hjEjhjCjubaubeubh)rKj}rLj(hUhKhjihjW5hhh}rMj(h]rNjXtest logrOjah]h]h]rPjUid276rQjah]uhM?hhh]rRj(h)rSj}rTj(hXTest LogrUjhjKjhjW5hhh}rVj(h]h]h]h]h]uhM?hhh]rWjhXTest LogrXjrYj}rZj(hjUjhjSjubaubh)r[j}r\j(hX-Sample log for LED stress test is shown belowr]jhjKjhjW5hhh}r^j(h]h]h]h]h]uhM@hhh]r_jhX-Sample log for LED stress test is shown belowr`jraj}rbj(hj]jhj[jubaubj()rcj}rdj(hXDIAGNOSTIC TEST FRAMEWORK Version - 01.00.00.01 Build Date - Apr 6 2019, Time - 03:47:24 Command options: help - displays this help menu again run - run a diagnostic application status - prints the test status Running Power On Self Tests... Press 'b' to Skip the Test Parsing bootEepromCompliance_TEST Running bootEepromCompliance_TEST ********************************************* * Boot EEPROM Test * ********************************************* Running Boot EEPROM test Detecting the Boot EEPROM device... Boot EEPROM device detection successful Boot EEPROM boundary verification test... Verifying the Boot EEPROM first page... Verifying the Boot EEPROM last page... Boot EEPROM boundary verification test successful Boot EEPROM test Passed Finished running bootEepromCompliance_TEST, result passed! Parsing memCompliance_TEST Running memCompliance_TEST ********************************************* * DDR Memory Test * ********************************************* Testing writing and reading memory board_external_memory_test: Start address (0x80000000), end address (0xffffffff) Address Bus Test Started Writing to test area... Writing Memory 0x80000000 Writing Memory 0x80000004 Writing Memory 0x80000008 Writing Memory 0x80000010 Writing Memory 0x80000020 Writing Memory 0x80000040 Writing Memory 0x80000080 Writing Memory 0x80000100 Writing Memory 0x80000200 Writing Memory 0x80000400 Writing Memory 0x80000800 Writing Memory 0x80001000 Writing Memory 0x80002000 Writing Memory 0x80004000 Writing Memory 0x80008000 Writing Memory 0x80010000 Writing Memory 0x80020000 Writing Memory 0x80040000 Writing Memory 0x80080000 Writing Memory 0x80100000 Writing Memory 0x80200000 Writing Memory 0x80400000 Writing Memory 0x80800000 Writing Memory 0x81000000 Writing Memory 0x82000000 Writing Memory 0x84000000 Writing Memory 0x88000000 Writing Memory 0x90000000 Writing Memory 0xa0000000 Writing Memory 0xc0000000 Write finished! Checking values... Reading Memory 0x80000000 Reading Memory 0x80000004 Reading Memory 0x80000008 Reading Memory 0x80000010 Reading Memory 0x80000020 Reading Memory 0x80000040 Reading Memory 0x80000080 Reading Memory 0x80000100 Reading Memory 0x80000200 Reading Memory 0x80000400 Reading Memory 0x80000800 Reading Memory 0x80001000 Reading Memory 0x80002000 Reading Memory 0x80004000 Reading Memory 0x80008000 Reading Memory 0x80010000 Reading Memory 0x80020000 Reading Memory 0x80040000 Reading Memory 0x80080000 Reading Memory 0x80100000 Reading Memory 0x80200000 Reading Memory 0x80400000 Reading Memory 0x80800000 Reading Memory 0x81000000 Reading Memory 0x82000000 Reading Memory 0x84000000 Reading Memory 0x88000000 Reading Memory 0x90000000 Reading Memory 0xa0000000 Reading Memory 0xc0000000 Board memory test passed! Memory test passed! Finished running memCompliance_TEST, result passed! Parsing emmcCompliance_TEST Running emmcCompliance_TEST ********************************************* * eMMC Test * ********************************************* PASS: Read/Write Success for this block-0x300000 PASS: Read/Write Success for this pattern Finished running emmcCompliance_TEST, result passed! Parsing norflashCompliance_TEST Running norflashCompliance_TEST *************************************** * SPI FlASH Test * *************************************** Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test Passed Finished running norflashCompliance_TEST, result passed! Parsing ospiCompliance_TEST Running ospiCompliance_TEST ********************************************* * OSPI FLASH Test * ********************************************* OSPI NOR device ID: 0x5b1a, manufacturer ID: 0x2c Verifying the OSPI Flash first page... OSPI NOR Flash first page verification Successful OSPI NOR Flash verification Successful OSPI Flash Test Passed! Finished running ospiCompliance_TEST, result passed! Parsing ledCompliance_TEST Running ledCompliance_TEST ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Received: y Test PASSED! LED Test Passed Finished running ledCompliance_TEST, result passed! Parsing bootSwitchCompliance_TEST Running bootSwitchCompliance_TEST ********************************************* * Boot Switch Test * ********************************************* Boot Switch SW3 Value - OFF ON ON OFF OFF OFF OFF OFF OFF OFF Boot Switch SW2 Value - OFF OFF ON OFF OFF OFF OFF OFF OFF Boot Switch SW4 Value - OFF OFF Test Passed Finished running bootSwitchCompliance_TEST, result passed! Parsing eepromCompliance_TEST Running eepromCompliance_TEST ********************************************* * EEPROM Test * ********************************************* CP Board: Displaying Header Fields ======================== Header ID: 0xee3355aa Displaying Board Info Fields ============================ Board Name: AM6-COMPROCEVM Design Revision: E3 PROC Number: 0062 Variant: 03 PCB Revision: E3 Schematic and BOM Revision: E3 Software Revision: 01 Vendor ID: 01 Build Week: 30 Build Year: 18 Board ID: 4P0081 Serial Number: 0017 Displaying DDR Fields ===================== DDR Control Word: 5850 Displaying MAC Info Fields ========================== MAC Control Word: 08 MAC ADDR0: 70-ff-76-1d-4c-40 MAC ADDR1: 70-ff-76-1d-4c-41 Test Passed Finished running eepromCompliance_TEST, result passed! Power On Self Test Result All Tests PassedhjKjhjW5hj+h}rej(hhh]h]h]h]h]uhM:$hhh]rfjhXDIAGNOSTIC TEST FRAMEWORK Version - 01.00.00.01 Build Date - Apr 6 2019, Time - 03:47:24 Command options: help - displays this help menu again run - run a diagnostic application status - prints the test status Running Power On Self Tests... Press 'b' to Skip the Test Parsing bootEepromCompliance_TEST Running bootEepromCompliance_TEST ********************************************* * Boot EEPROM Test * ********************************************* Running Boot EEPROM test Detecting the Boot EEPROM device... Boot EEPROM device detection successful Boot EEPROM boundary verification test... Verifying the Boot EEPROM first page... Verifying the Boot EEPROM last page... Boot EEPROM boundary verification test successful Boot EEPROM test Passed Finished running bootEepromCompliance_TEST, result passed! Parsing memCompliance_TEST Running memCompliance_TEST ********************************************* * DDR Memory Test * ********************************************* Testing writing and reading memory board_external_memory_test: Start address (0x80000000), end address (0xffffffff) Address Bus Test Started Writing to test area... Writing Memory 0x80000000 Writing Memory 0x80000004 Writing Memory 0x80000008 Writing Memory 0x80000010 Writing Memory 0x80000020 Writing Memory 0x80000040 Writing Memory 0x80000080 Writing Memory 0x80000100 Writing Memory 0x80000200 Writing Memory 0x80000400 Writing Memory 0x80000800 Writing Memory 0x80001000 Writing Memory 0x80002000 Writing Memory 0x80004000 Writing Memory 0x80008000 Writing Memory 0x80010000 Writing Memory 0x80020000 Writing Memory 0x80040000 Writing Memory 0x80080000 Writing Memory 0x80100000 Writing Memory 0x80200000 Writing Memory 0x80400000 Writing Memory 0x80800000 Writing Memory 0x81000000 Writing Memory 0x82000000 Writing Memory 0x84000000 Writing Memory 0x88000000 Writing Memory 0x90000000 Writing Memory 0xa0000000 Writing Memory 0xc0000000 Write finished! Checking values... Reading Memory 0x80000000 Reading Memory 0x80000004 Reading Memory 0x80000008 Reading Memory 0x80000010 Reading Memory 0x80000020 Reading Memory 0x80000040 Reading Memory 0x80000080 Reading Memory 0x80000100 Reading Memory 0x80000200 Reading Memory 0x80000400 Reading Memory 0x80000800 Reading Memory 0x80001000 Reading Memory 0x80002000 Reading Memory 0x80004000 Reading Memory 0x80008000 Reading Memory 0x80010000 Reading Memory 0x80020000 Reading Memory 0x80040000 Reading Memory 0x80080000 Reading Memory 0x80100000 Reading Memory 0x80200000 Reading Memory 0x80400000 Reading Memory 0x80800000 Reading Memory 0x81000000 Reading Memory 0x82000000 Reading Memory 0x84000000 Reading Memory 0x88000000 Reading Memory 0x90000000 Reading Memory 0xa0000000 Reading Memory 0xc0000000 Board memory test passed! Memory test passed! Finished running memCompliance_TEST, result passed! Parsing emmcCompliance_TEST Running emmcCompliance_TEST ********************************************* * eMMC Test * ********************************************* PASS: Read/Write Success for this block-0x300000 PASS: Read/Write Success for this pattern Finished running emmcCompliance_TEST, result passed! Parsing norflashCompliance_TEST Running norflashCompliance_TEST *************************************** * SPI FlASH Test * *************************************** Reading Flash Device ID... Device ID 0 - 0x20 Device ID 1 - 0xba Device ID 2 - 0x18 Flash Device ID Match! Flash Device ID Read Passed! Verifying Sector - 0 Data Read matches with Data written SPI Flash Test Passed! SPI NOR Flash Test Passed Finished running norflashCompliance_TEST, result passed! Parsing ospiCompliance_TEST Running ospiCompliance_TEST ********************************************* * OSPI FLASH Test * ********************************************* OSPI NOR device ID: 0x5b1a, manufacturer ID: 0x2c Verifying the OSPI Flash first page... OSPI NOR Flash first page verification Successful OSPI NOR Flash verification Successful OSPI Flash Test Passed! Finished running ospiCompliance_TEST, result passed! Parsing ledCompliance_TEST Running ledCompliance_TEST ********************************************* * LED Test * ********************************************* Testing LED Blinking LEDs... Received: y Test PASSED! LED Test Passed Finished running ledCompliance_TEST, result passed! Parsing bootSwitchCompliance_TEST Running bootSwitchCompliance_TEST ********************************************* * Boot Switch Test * ********************************************* Boot Switch SW3 Value - OFF ON ON OFF OFF OFF OFF OFF OFF OFF Boot Switch SW2 Value - OFF OFF ON OFF OFF OFF OFF OFF OFF Boot Switch SW4 Value - OFF OFF Test Passed Finished running bootSwitchCompliance_TEST, result passed! Parsing eepromCompliance_TEST Running eepromCompliance_TEST ********************************************* * EEPROM Test * ********************************************* CP Board: Displaying Header Fields ======================== Header ID: 0xee3355aa Displaying Board Info Fields ============================ Board Name: AM6-COMPROCEVM Design Revision: E3 PROC Number: 0062 Variant: 03 PCB Revision: E3 Schematic and BOM Revision: E3 Software Revision: 01 Vendor ID: 01 Build Week: 30 Build Year: 18 Board ID: 4P0081 Serial Number: 0017 Displaying DDR Fields ===================== DDR Control Word: 5850 Displaying MAC Info Fields ========================== MAC Control Word: 08 MAC ADDR0: 70-ff-76-1d-4c-40 MAC ADDR1: 70-ff-76-1d-4c-41 Test Passed Finished running eepromCompliance_TEST, result passed! Power On Self Test Result All Tests Passedrgjrhj}rij(hUhjcjubaubj1)rjj}rkj(hUhjKjhjW5hj4h}rlj(h]h]h]h]h]uhM.hhh]rmjj7)rnj}roj(hUj:KhjjjhjW5hhh}rpj(h]h]h]h]h]uhKhhh]ubaubeubeubh)rqj}rrj(hUhj\hjW5hhh}rsj(h]h]h]h]rtjUcompliance-testsrujah]rvjhauhM1hhh]rwj(h)rxj}ryj(hXCompliance TestsrzjhjqjhjW5hhh}r{j(h]h]h]h]h]uhM1hhh]r|jhXCompliance Testsr}jr~j}rj(hjzjhjxjubaubh)rj}rj(hXDiagnostic tests include support for CE compliance verication for some of the platforms. Compliance tests can be executed by selecting the menu option '0' from the diagnostic test menu. These tests are intended for use by board vendor.rjhjqjhjW5hhh}rj(h]h]h]h]h]uhM2hhh]rjhXDiagnostic tests include support for CE compliance verication for some of the platforms. Compliance tests can be executed by selecting the menu option '0' from the diagnostic test menu. These tests are intended for use by board vendor.rjrj}rj(hjjhjjubaubeubeubeubhjW5hhh}rj(h]rjjCah]h]h]rjUid11rjah]uhKhhh]rj(h)rj}rj(hXOverviewrjhjC5hjW5hhh}rj(h]h]h]h]h]uhKhhh]rjhXOverviewrjrj}rj(hjjhjjubaubh)rj}rj(hXDetailed test procedure and additional HW setup needed for running the processor SDK board diagnostic tests are explained in the following sections. Logs shown for each test are for sample reference, actual logs may slightly vary from platform to platform.rjhjC5hjW5hhh}rj(h]h]h]h]h]uhKhhh]rjhXDetailed test procedure and additional HW setup needed for running the processor SDK board diagnostic tests are explained in the following sections. Logs shown for each test are for sample reference, actual logs may slightly vary from platform to platform.rjrj}rj(hjjhjjubaubh)rj}rj(hX8Two different modes of diagnostic tests are supported - Functional and Stress. Functional tests verify basic functionality of an interface to confirm the interface HW connectivity. Stress tests verify the functionality of an interface under stress conditions which will confirm the stability of the HW interface.rjhjC5hjW5hhh}rj(h]h]h]h]h]uhKhhh]rjhX8Two different modes of diagnostic tests are supported - Functional and Stress. Functional tests verify basic functionality of an interface to confirm the interface HW connectivity. Stress tests verify the functionality of an interface under stress conditions which will confirm the stability of the HW interface.rjrj}rj(hjjhjjubaubh)rj}rj(hXRefer to `Diagnostic Applications `_ section for details of the platforms supported by each of the diagnostic tests described below.hjC5hjW5hhh}rj(h]h]h]h]h]uhK hhh]rj(hX Refer to rjrj}rj(hX Refer to hjjubj)rj}rj(hXE`Diagnostic Applications `_h}rj(UnameXDiagnostic ApplicationsjX(index_board.html#diagnostic-applicationsrjh]h]h]h]h]uhjjh]rjhXDiagnostic Applicationsrjrj}rj(hUhjjubahj ubjW)rj}rj(hX+ hKhjjhjZh}rj(Urefurijjh]rjUid12rjah]h]h]h]rjj,auh]ubhX` section for details of the platforms supported by each of the diagnostic tests described below.rjrj}rj(hX` section for details of the platforms supported by each of the diagnostic tests described below.hjjubeubh)rj}rj(hXApplication/Daughter cards required for running the test are not mentioned in the test setup assuming the tests are run with full HW kit.rjhjC5hjW5hhh}rj(h]h]h]h]h]uhKhhh]rjhXApplication/Daughter cards required for running the test are not mentioned in the test setup assuming the tests are run with full HW kit.rjrj}rj(hjjhjjubaubeubhjW5hjYh}rj(h]UlevelKh]h]rjjjaUsourcejW5h]h]UlineKUtypej[uhKhhh]rjh)rj}rj(hX+Duplicate implicit target name: "overview".h}rj(h]h]h]h]h]uhjA5h]rjhX+Duplicate implicit target name: "overview".rjrj}rj(hUhjjubahhubaubh)rj}rj(hUhjC5hjW5hjYh}rj(h]UlevelKh]h]rjjjaUsourcehh]h]UlineK Utypej[uhK hhh]rjh)rj}rj(hX:Duplicate implicit target name: "diagnostic applications".h}rj(h]h]h]h]h]uhjjh]rjhX:Duplicate implicit target name: "diagnostic applications".rjrj}rj(hUhjjubahhubaubh)rj}rj(hUhj"6hjW5hjYh}rj(h]UlevelKh]h]rjj'6aUsourcejW5h]h]UlineK>Utypej[uhK>hhh]rjh)rj}rj(hX3Duplicate implicit target name: "test accessories".h}rj(h]h]h]h]h]uhjjh]rjhX3Duplicate implicit target name: "test accessories".rjrj}rj(hUhjjubahhubaubh)rj}rj(hUhj96hjW5hjYh}rj(h]UlevelKh]h]rjj>6aUsourcejW5h]h]UlineKBUtypej[uhKBhhh]rjh)rj}rj(hX-Duplicate implicit target name: "test setup".h}rj(h]h]h]h]h]uhjjh]rjhX-Duplicate implicit target name: "test setup".rjrj}rj(hUhjjubahhubaubh)rj}rj(hUhjP6hjW5hjYh}rj(h]UlevelKh]h]rjjU6aUsourcejW5h]h]UlineKFUtypej[uhKFhhh]rjh)rj}rj(hX1Duplicate implicit target name: "test execution".h}rj(h]h]h]h]h]uhjjh]rjhX1Duplicate implicit target name: "test execution".rjrj}rj(hUhjjubahhubaubh)rj}rk(hUhj6hjW5hjYh}rk(h]UlevelKh]h]rkj6aUsourcejW5h]h]UlineKKUtypej[uhKKhhh]rkh)rk}rk(hX+Duplicate implicit target name: "test log".h}rk(h]h]h]h]h]uhjjh]rkhX+Duplicate implicit target name: "test log".rkr k}r k(hUhjkubahhubaubh)r k}r k(hUhj6hjW5hjYh}r k(h]UlevelKh]h]rkj6aUsourcejW5h]h]UlineKaUtypej[uhKahhh]rkh)rk}rk(hX3Duplicate implicit target name: "test accessories".h}rk(h]h]h]h]h]uhj kh]rkhX3Duplicate implicit target name: "test accessories".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj6hjW5hjYh}rk(h]UlevelKh]h]rkj6aUsourcejW5h]h]UlineKeUtypej[uhKehhh]rkh)rk}rk(hX-Duplicate implicit target name: "test setup".h}rk(h]h]h]h]h]uhjkh]rkhX-Duplicate implicit target name: "test setup".r kr!k}r"k(hUhjkubahhubaubh)r#k}r$k(hUhj6hjW5hjYh}r%k(h]UlevelKh]h]r&kj6aUsourcejW5h]h]UlineKiUtypej[uhKihhh]r'kh)r(k}r)k(hX1Duplicate implicit target name: "test execution".h}r*k(h]h]h]h]h]uhj#kh]r+khX1Duplicate implicit target name: "test execution".r,kr-k}r.k(hUhj(kubahhubaubh)r/k}r0k(hUhj7hjW5hjYh}r1k(h]UlevelKh]h]r2kj!7aUsourcejW5h]h]UlineKnUtypej[uhKnhhh]r3kh)r4k}r5k(hX+Duplicate implicit target name: "test log".h}r6k(h]h]h]h]h]uhj/kh]r7khX+Duplicate implicit target name: "test log".r8kr9k}r:k(hUhj4kubahhubaubh)r;k}rkj^7aUsourcejW5h]h]UlineKUtypej[uhKhhh]r?kh)r@k}rAk(hX3Duplicate implicit target name: "test accessories".h}rBk(h]h]h]h]h]uhj;kh]rCkhX3Duplicate implicit target name: "test accessories".rDkrEk}rFk(hUhj@kubahhubaubh)rGk}rHk(hUhjp7hjW5hjYh}rIk(h]UlevelKh]h]rJkjv7aUsourcejW5h]h]UlineKUtypej[uhKhhh]rKkh)rLk}rMk(hX-Duplicate implicit target name: "test setup".h}rNk(h]h]h]h]h]uhjGkh]rOkhX-Duplicate implicit target name: "test setup".rPkrQk}rRk(hUhjLkubahhubaubh)rSk}rTk(hUhj7hjW5hjYh}rUk(h]UlevelKh]h]rVkj7aUsourcejW5h]h]UlineKUtypej[uhKhhh]rWkh)rXk}rYk(hX1Duplicate implicit target name: "test execution".h}rZk(h]h]h]h]h]uhjSkh]r[khX1Duplicate implicit target name: "test execution".r\kr]k}r^k(hUhjXkubahhubaubh)r_k}r`k(hUhj7hjW5hjYh}rak(h]UlevelKh]h]rbkj7aUsourcejW5h]h]UlineKUtypej[uhKhhh]rckh)rdk}rek(hX+Duplicate implicit target name: "test log".h}rfk(h]h]h]h]h]uhj_kh]rgkhX+Duplicate implicit target name: "test log".rhkrik}rjk(hUhjdkubahhubaubh)rkk}rlk(hUhj7hjW5hjYh}rmk(h]UlevelKh]h]UsourcejW5h]h]UlineKUtypejguhKhhh]rnkh)rok}rpk(hX=Literal block ends without a blank line; unexpected unindent.h}rqk(h]h]h]h]h]uhjkkh]rrkhX=Literal block ends without a blank line; unexpected unindent.rskrtk}ruk(hUhjokubahhubaubh)rvk}rwk(hUhj8hjW5hjYh}rxk(h]UlevelKh]h]rykj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rzkh)r{k}r|k(hX3Duplicate implicit target name: "test accessories".h}r}k(h]h]h]h]h]uhjvkh]r~khX3Duplicate implicit target name: "test accessories".rkrk}rk(hUhj{kubahhubaubh)rk}rk(hUhj8hjW5hjYh}rk(h]UlevelKh]h]rkj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX-Duplicate implicit target name: "test setup".h}rk(h]h]h]h]h]uhjkh]rkhX-Duplicate implicit target name: "test setup".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj18hjW5hjYh}rk(h]UlevelKh]h]rkj78aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX1Duplicate implicit target name: "test execution".h}rk(h]h]h]h]h]uhjkh]rkhX1Duplicate implicit target name: "test execution".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhjy8hjW5hjYh}rk(h]UlevelKh]h]rkj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX+Duplicate implicit target name: "test log".h}rk(h]h]h]h]h]uhjkh]rkhX+Duplicate implicit target name: "test log".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj8hjW5hjYh}rk(h]UlevelKh]h]rkj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX3Duplicate implicit target name: "test accessories".h}rk(h]h]h]h]h]uhjkh]rkhX3Duplicate implicit target name: "test accessories".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj8hjW5hjYh}rk(h]UlevelKh]h]rkj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX-Duplicate implicit target name: "test setup".h}rk(h]h]h]h]h]uhjkh]rkhX-Duplicate implicit target name: "test setup".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj8hjW5hjYh}rk(h]UlevelKh]h]rkj8aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX1Duplicate implicit target name: "test execution".h}rk(h]h]h]h]h]uhjkh]rkhX1Duplicate implicit target name: "test execution".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj.9hjW5hjYh}rk(h]UlevelKh]h]rkj49aUsourcejW5h]h]UlineKUtypej[uhKhhh]rkh)rk}rk(hX+Duplicate implicit target name: "test log".h}rk(h]h]h]h]h]uhjkh]rkhX+Duplicate implicit target name: "test log".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj.9hjW5hjYh}rk(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]rkh)rk}rk(hX=Literal block ends without a blank line; unexpected unindent.h}rk(h]h]h]h]h]uhjkh]rkhX=Literal block ends without a blank line; unexpected unindent.rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhjk9hjW5hjYh}rk(h]UlevelKh]h]rkjq9aUsourcejW5h]h]UlineM Utypej[uhM hhh]rkh)rk}rk(hX3Duplicate implicit target name: "test accessories".h}rk(h]h]h]h]h]uhjkh]rkhX3Duplicate implicit target name: "test accessories".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj9hjW5hjYh}rk(h]UlevelKh]h]rkj9aUsourcejW5h]h]UlineMUtypej[uhMhhh]rkh)rk}rk(hX-Duplicate implicit target name: "test setup".h}rk(h]h]h]h]h]uhjkh]rkhX-Duplicate implicit target name: "test setup".rkrk}rk(hUhjkubahhubaubh)rk}rk(hUhj9hjW5hjYh}rk(h]UlevelKh]h]rkj9aUsourcejW5h]h]UlineMUtypej[uhMhhh]rkh)rk}rk(hX1Duplicate implicit target name: "test execution".h}rl(h]h]h]h]h]uhjkh]rlhX1Duplicate implicit target name: "test execution".rlrl}rl(hUhjkubahhubaubh)rl}rl(hUhj9hjW5hjYh}rl(h]UlevelKh]h]rlj9aUsourcejW5h]h]UlineMUtypej[uhMhhh]r lh)r l}r l(hX+Duplicate implicit target name: "test log".h}r l(h]h]h]h]h]uhjlh]r lhX+Duplicate implicit target name: "test log".rlrl}rl(hUhj lubahhubaubh)rl}rl(hUhj:hjW5hjYh}rl(h]UlevelKh]h]rlj:aUsourcejW5h]h]UlineMAUtypej[uhMAhhh]rlh)rl}rl(hX3Duplicate implicit target name: "test accessories".h}rl(h]h]h]h]h]uhjlh]rlhX3Duplicate implicit target name: "test accessories".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj,:hjW5hjYh}rl(h]UlevelKh]h]r lj2:aUsourcejW5h]h]UlineMEUtypej[uhMEhhh]r!lh)r"l}r#l(hX-Duplicate implicit target name: "test setup".h}r$l(h]h]h]h]h]uhjlh]r%lhX-Duplicate implicit target name: "test setup".r&lr'l}r(l(hUhj"lubahhubaubh)r)l}r*l(hUhjD:hjW5hjYh}r+l(h]UlevelKh]h]r,ljJ:aUsourcejW5h]h]UlineMJUtypej[uhMJhhh]r-lh)r.l}r/l(hX1Duplicate implicit target name: "test execution".h}r0l(h]h]h]h]h]uhj)lh]r1lhX1Duplicate implicit target name: "test execution".r2lr3l}r4l(hUhj.lubahhubaubh)r5l}r6l(hUhjt:hjW5hjYh}r7l(h]UlevelKh]h]r8ljz:aUsourcejW5h]h]UlineMOUtypej[uhMOhhh]r9lh)r:l}r;l(hX+Duplicate implicit target name: "test log".h}rlr?l}r@l(hUhj:lubahhubaubh)rAl}rBl(hUhj:hjW5hjYh}rCl(h]UlevelKh]h]rDlj:aUsourcejW5h]h]UlineMUtypej[uhMhhh]rElh)rFl}rGl(hX3Duplicate implicit target name: "test accessories".h}rHl(h]h]h]h]h]uhjAlh]rIlhX3Duplicate implicit target name: "test accessories".rJlrKl}rLl(hUhjFlubahhubaubh)rMl}rNl(hUhj:hjW5hjYh}rOl(h]UlevelKh]h]rPlj:aUsourcejW5h]h]UlineMUtypej[uhMhhh]rQlh)rRl}rSl(hX-Duplicate implicit target name: "test setup".h}rTl(h]h]h]h]h]uhjMlh]rUlhX-Duplicate implicit target name: "test setup".rVlrWl}rXl(hUhjRlubahhubaubh)rYl}rZl(hUhj:hjW5hjYh}r[l(h]UlevelKh]h]r\lj:aUsourcejW5h]h]UlineMUtypej[uhMhhh]r]lh)r^l}r_l(hX1Duplicate implicit target name: "test execution".h}r`l(h]h]h]h]h]uhjYlh]ralhX1Duplicate implicit target name: "test execution".rblrcl}rdl(hUhj^lubahhubaubh)rel}rfl(hUhj;hjW5hjYh}rgl(h]UlevelKh]h]rhlj#;aUsourcejW5h]h]UlineMUtypej[uhMhhh]rilh)rjl}rkl(hX+Duplicate implicit target name: "test log".h}rll(h]h]h]h]h]uhjelh]rmlhX+Duplicate implicit target name: "test log".rnlrol}rpl(hUhjjlubahhubaubh)rql}rrl(hUhjZ;hjW5hjYh}rsl(h]UlevelKh]h]rtlj`;aUsourcejW5h]h]UlineM1Utypej[uhM1hhh]rulh)rvl}rwl(hX3Duplicate implicit target name: "test accessories".h}rxl(h]h]h]h]h]uhjqlh]rylhX3Duplicate implicit target name: "test accessories".rzlr{l}r|l(hUhjvlubahhubaubh)r}l}r~l(hUhjr;hjW5hjYh}rl(h]UlevelKh]h]rljx;aUsourcejW5h]h]UlineM5Utypej[uhM5hhh]rlh)rl}rl(hX-Duplicate implicit target name: "test setup".h}rl(h]h]h]h]h]uhj}lh]rlhX-Duplicate implicit target name: "test setup".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj;hjW5hjYh}rl(h]UlevelKh]h]rlj;aUsourcejW5h]h]UlineM9Utypej[uhM9hhh]rlh)rl}rl(hX1Duplicate implicit target name: "test execution".h}rl(h]h]h]h]h]uhjlh]rlhX1Duplicate implicit target name: "test execution".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj;hjW5hjYh}rl(h]UlevelKh]h]rlj;aUsourcejW5h]h]UlineM>Utypej[uhM>hhh]rlh)rl}rl(hX+Duplicate implicit target name: "test log".h}rl(h]h]h]h]h]uhjlh]rlhX+Duplicate implicit target name: "test log".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj<hjW5hjYh}rl(h]UlevelKh]h]rlj <aUsourcejW5h]h]UlineMZUtypej[uhMZhhh]rlh)rl}rl(hX3Duplicate implicit target name: "test accessories".h}rl(h]h]h]h]h]uhjlh]rlhX3Duplicate implicit target name: "test accessories".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj<hjW5hjYh}rl(h]UlevelKh]h]rlj!<aUsourcejW5h]h]UlineM^Utypej[uhM^hhh]rlh)rl}rl(hX-Duplicate implicit target name: "test setup".h}rl(h]h]h]h]h]uhjlh]rlhX-Duplicate implicit target name: "test setup".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj<hjW5hjYh}rl(h]UlevelKh]h]rlj<aUsourcejW5h]h]UlineMmUtypej[uhMmhhh]rlh)rl}rl(hX1Duplicate implicit target name: "test execution".h}rl(h]h]h]h]h]uhjlh]rlhX1Duplicate implicit target name: "test execution".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj<hjW5hjYh}rl(h]UlevelKh]h]rlj<aUsourcejW5h]h]UlineMtUtypej[uhMthhh]rlh)rl}rl(hX+Duplicate implicit target name: "test log".h}rl(h]h]h]h]h]uhjlh]rlhX+Duplicate implicit target name: "test log".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj2=hjW5hjYh}rl(h]UlevelKh]h]rlj8=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rlh)rl}rl(hX3Duplicate implicit target name: "test accessories".h}rl(h]h]h]h]h]uhjlh]rlhX3Duplicate implicit target name: "test accessories".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhjJ=hjW5hjYh}rl(h]UlevelKh]h]rljP=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rlh)rl}rl(hX-Duplicate implicit target name: "test setup".h}rl(h]h]h]h]h]uhjlh]rlhX-Duplicate implicit target name: "test setup".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhjb=hjW5hjYh}rl(h]UlevelKh]h]rljh=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rlh)rl}rl(hX1Duplicate implicit target name: "test execution".h}rl(h]h]h]h]h]uhjlh]rlhX1Duplicate implicit target name: "test execution".rlrl}rl(hUhjlubahhubaubh)rl}rl(hUhj=hjW5hjYh}rl(h]UlevelKh]h]rlj=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rlh)rl}rl(hX+Duplicate implicit target name: "test log".h}rl(h]h]h]h]h]uhjlh]rlhX+Duplicate implicit target name: "test log".rlrl}rm(hUhjlubahhubaubh)rm}rm(hUhj=hjW5hjYh}rm(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]rmh)rm}rm(hX=Literal block ends without a blank line; unexpected unindent.h}rm(h]h]h]h]h]uhjmh]rmhX=Literal block ends without a blank line; unexpected unindent.r mr m}r m(hUhjmubahhubaubh)r m}r m(hUhj=hjW5hjYh}rm(h]UlevelKh]h]rmj=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX3Duplicate implicit target name: "test accessories".h}rm(h]h]h]h]h]uhj mh]rmhX3Duplicate implicit target name: "test accessories".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj=hjW5hjYh}rm(h]UlevelKh]h]rmj=aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX-Duplicate implicit target name: "test setup".h}rm(h]h]h]h]h]uhjmh]r mhX-Duplicate implicit target name: "test setup".r!mr"m}r#m(hUhjmubahhubaubh)r$m}r%m(hUhj=hjW5hjYh}r&m(h]UlevelKh]h]r'mj>aUsourcejW5h]h]UlineM"Utypej[uhM"hhh]r(mh)r)m}r*m(hX1Duplicate implicit target name: "test execution".h}r+m(h]h]h]h]h]uhj$mh]r,mhX1Duplicate implicit target name: "test execution".r-mr.m}r/m(hUhj)mubahhubaubh)r0m}r1m(hUhj;>hjW5hjYh}r2m(h]UlevelKh]h]r3mjA>aUsourcejW5h]h]UlineM(Utypej[uhM(hhh]r4mh)r5m}r6m(hX+Duplicate implicit target name: "test log".h}r7m(h]h]h]h]h]uhj0mh]r8mhX+Duplicate implicit target name: "test log".r9mr:m}r;m(hUhj5mubahhubaubh)rhjW5hjYh}r>m(h]UlevelKh]h]r?mj~>aUsourcejW5h]h]UlineM]Utypej[uhM]hhh]r@mh)rAm}rBm(hX3Duplicate implicit target name: "test accessories".h}rCm(h]h]h]h]h]uhjhjW5hjYh}rJm(h]UlevelKh]h]rKmj>aUsourcejW5h]h]UlineMaUtypej[uhMahhh]rLmh)rMm}rNm(hX-Duplicate implicit target name: "test setup".h}rOm(h]h]h]h]h]uhjHmh]rPmhX-Duplicate implicit target name: "test setup".rQmrRm}rSm(hUhjMmubahhubaubh)rTm}rUm(hUhjJ?hjW5hjYh}rVm(h]UlevelKh]h]rWmjP?aUsourcejW5h]h]UlineMrUtypej[uhMrhhh]rXmh)rYm}rZm(hX1Duplicate implicit target name: "test execution".h}r[m(h]h]h]h]h]uhjTmh]r\mhX1Duplicate implicit target name: "test execution".r]mr^m}r_m(hUhjYmubahhubaubh)r`m}ram(hUhjz?hjW5hjYh}rbm(h]UlevelKh]h]rcmj?aUsourcejW5h]h]UlineMwUtypej[uhMwhhh]rdmh)rem}rfm(hX+Duplicate implicit target name: "test log".h}rgm(h]h]h]h]h]uhj`mh]rhmhX+Duplicate implicit target name: "test log".rimrjm}rkm(hUhjemubahhubaubh)rlm}rmm(hUhjz?hjW5hjYh}rnm(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]romh)rpm}rqm(hX=Literal block ends without a blank line; unexpected unindent.h}rrm(h]h]h]h]h]uhjlmh]rsmhX=Literal block ends without a blank line; unexpected unindent.rtmrum}rvm(hUhjpmubahhubaubh)rwm}rxm(hUhj?hjW5hjYh}rym(h]UlevelKh]h]rzmj?aUsourcejW5h]h]UlineMUtypej[uhMhhh]r{mh)r|m}r}m(hX3Duplicate implicit target name: "test accessories".h}r~m(h]h]h]h]h]uhjwmh]rmhX3Duplicate implicit target name: "test accessories".rmrm}rm(hUhj|mubahhubaubh)rm}rm(hUhj?hjW5hjYh}rm(h]UlevelKh]h]rmj?aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX-Duplicate implicit target name: "test setup".h}rm(h]h]h]h]h]uhjmh]rmhX-Duplicate implicit target name: "test setup".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj?hjW5hjYh}rm(h]UlevelKh]h]rmj?aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX1Duplicate implicit target name: "test execution".h}rm(h]h]h]h]h]uhjmh]rmhX1Duplicate implicit target name: "test execution".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj#@hjW5hjYh}rm(h]UlevelKh]h]rmj)@aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX+Duplicate implicit target name: "test log".h}rm(h]h]h]h]h]uhjmh]rmhX+Duplicate implicit target name: "test log".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj#@hjW5hjYh}rm(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]rmh)rm}rm(hX=Literal block ends without a blank line; unexpected unindent.h}rm(h]h]h]h]h]uhjmh]rmhX=Literal block ends without a blank line; unexpected unindent.rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj`@hjW5hjYh}rm(h]UlevelKh]h]rmjf@aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX3Duplicate implicit target name: "test accessories".h}rm(h]h]h]h]h]uhjmh]rmhX3Duplicate implicit target name: "test accessories".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj@hjW5hjYh}rm(h]UlevelKh]h]rmj@aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX-Duplicate implicit target name: "test setup".h}rm(h]h]h]h]h]uhjmh]rmhX-Duplicate implicit target name: "test setup".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj@hjW5hjYh}rm(h]UlevelKh]h]rmj@aUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX1Duplicate implicit target name: "test execution".h}rm(h]h]h]h]h]uhjmh]rmhX1Duplicate implicit target name: "test execution".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhj2AhjW5hjYh}rm(h]UlevelKh]h]rmj8AaUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX+Duplicate implicit target name: "test log".h}rm(h]h]h]h]h]uhjmh]rmhX+Duplicate implicit target name: "test log".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhjoAhjW5hjYh}rm(h]UlevelKh]h]rmjuAaUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX3Duplicate implicit target name: "test accessories".h}rm(h]h]h]h]h]uhjmh]rmhX3Duplicate implicit target name: "test accessories".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhjAhjW5hjYh}rm(h]UlevelKh]h]rmjAaUsourcejW5h]h]UlineMUtypej[uhMhhh]rmh)rm}rm(hX-Duplicate implicit target name: "test setup".h}rm(h]h]h]h]h]uhjmh]rmhX-Duplicate implicit target name: "test setup".rmrm}rm(hUhjmubahhubaubh)rm}rm(hUhjABhjW5hjYh}rm(h]UlevelKh]h]rmjGBaUsourcejW5h]h]UlineM Utypej[uhM hhh]rmh)rm}rn(hX1Duplicate implicit target name: "test execution".h}rn(h]h]h]h]h]uhjmh]rnhX1Duplicate implicit target name: "test execution".rnrn}rn(hUhjmubahhubaubh)rn}rn(hUhjqBhjW5hjYh}rn(h]UlevelKh]h]r njwBaUsourcejW5h]h]UlineMUtypej[uhMhhh]r nh)r n}r n(hX+Duplicate implicit target name: "test log".h}r n(h]h]h]h]h]uhjnh]rnhX+Duplicate implicit target name: "test log".rnrn}rn(hUhj nubahhubaubh)rn}rn(hUhjBhjW5hjYh}rn(h]UlevelKh]h]rnjBaUsourcejW5h]h]UlineMcUtypej[uhMchhh]rnh)rn}rn(hX3Duplicate implicit target name: "test accessories".h}rn(h]h]h]h]h]uhjnh]rnhX3Duplicate implicit target name: "test accessories".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjBhjW5hjYh}r n(h]UlevelKh]h]r!njBaUsourcejW5h]h]UlineMgUtypej[uhMghhh]r"nh)r#n}r$n(hX-Duplicate implicit target name: "test setup".h}r%n(h]h]h]h]h]uhjnh]r&nhX-Duplicate implicit target name: "test setup".r'nr(n}r)n(hUhj#nubahhubaubh)r*n}r+n(hUhjChjW5hjYh}r,n(h]UlevelKh]h]r-njCaUsourcejW5h]h]UlineMUtypej[uhMhhh]r.nh)r/n}r0n(hX1Duplicate implicit target name: "test execution".h}r1n(h]h]h]h]h]uhj*nh]r2nhX1Duplicate implicit target name: "test execution".r3nr4n}r5n(hUhj/nubahhubaubh)r6n}r7n(hUhjChjW5hjYh}r8n(h]UlevelKh]h]r9njCaUsourcejW5h]h]UlineMUtypej[uhMhhh]r:nh)r;n}rnhX+Duplicate implicit target name: "test log".r?nr@n}rAn(hUhj;nubahhubaubh)rBn}rCn(hUhjChjW5hjYh}rDn(h]UlevelKh]h]rEnjCaUsourcejW5h]h]UlineMUtypej[uhMhhh]rFnh)rGn}rHn(hX3Duplicate implicit target name: "test accessories".h}rIn(h]h]h]h]h]uhjBnh]rJnhX3Duplicate implicit target name: "test accessories".rKnrLn}rMn(hUhjGnubahhubaubh)rNn}rOn(hUhjDhjW5hjYh}rPn(h]UlevelKh]h]rQnjDaUsourcejW5h]h]UlineMUtypej[uhMhhh]rRnh)rSn}rTn(hX-Duplicate implicit target name: "test setup".h}rUn(h]h]h]h]h]uhjNnh]rVnhX-Duplicate implicit target name: "test setup".rWnrXn}rYn(hUhjSnubahhubaubh)rZn}r[n(hUhj&DhjW5hjYh}r\n(h]UlevelKh]h]r]nj,DaUsourcejW5h]h]UlineMUtypej[uhMhhh]r^nh)r_n}r`n(hX1Duplicate implicit target name: "test execution".h}ran(h]h]h]h]h]uhjZnh]rbnhX1Duplicate implicit target name: "test execution".rcnrdn}ren(hUhj_nubahhubaubh)rfn}rgn(hUhjDhjW5hjYh}rhn(h]UlevelKh]h]rinjDaUsourcejW5h]h]UlineMUtypej[uhMhhh]rjnh)rkn}rln(hX+Duplicate implicit target name: "test log".h}rmn(h]h]h]h]h]uhjfnh]rnnhX+Duplicate implicit target name: "test log".ronrpn}rqn(hUhjknubahhubaubh)rrn}rsn(hUhjDhjW5hjYh}rtn(h]UlevelKh]h]runjDaUsourcejW5h]h]UlineM?Utypej[uhM?hhh]rvnh)rwn}rxn(hX3Duplicate implicit target name: "test accessories".h}ryn(h]h]h]h]h]uhjrnh]rznhX3Duplicate implicit target name: "test accessories".r{nr|n}r}n(hUhjwnubahhubaubh)r~n}rn(hUhjDhjW5hjYh}rn(h]UlevelKh]h]rnjDaUsourcejW5h]h]UlineMCUtypej[uhMChhh]rnh)rn}rn(hX-Duplicate implicit target name: "test setup".h}rn(h]h]h]h]h]uhj~nh]rnhX-Duplicate implicit target name: "test setup".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjDhjW5hjYh}rn(h]UlevelKh]h]rnjDaUsourcejW5h]h]UlineMGUtypej[uhMGhhh]rnh)rn}rn(hX1Duplicate implicit target name: "test execution".h}rn(h]h]h]h]h]uhjnh]rnhX1Duplicate implicit target name: "test execution".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhj/EhjW5hjYh}rn(h]UlevelKh]h]rnj5EaUsourcejW5h]h]UlineMMUtypej[uhMMhhh]rnh)rn}rn(hX+Duplicate implicit target name: "test log".h}rn(h]h]h]h]h]uhjnh]rnhX+Duplicate implicit target name: "test log".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjlEhjW5hjYh}rn(h]UlevelKh]h]rnjrEaUsourcejW5h]h]UlineMjUtypej[uhMjhhh]rnh)rn}rn(hX3Duplicate implicit target name: "test accessories".h}rn(h]h]h]h]h]uhjnh]rnhX3Duplicate implicit target name: "test accessories".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjEhjW5hjYh}rn(h]UlevelKh]h]rnjEaUsourcejW5h]h]UlineMoUtypej[uhMohhh]rnh)rn}rn(hX-Duplicate implicit target name: "test setup".h}rn(h]h]h]h]h]uhjnh]rnhX-Duplicate implicit target name: "test setup".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjEhjW5hjYh}rn(h]UlevelKh]h]rnjEaUsourcejW5h]h]UlineMsUtypej[uhMshhh]rnh)rn}rn(hX1Duplicate implicit target name: "test execution".h}rn(h]h]h]h]h]uhjnh]rnhX1Duplicate implicit target name: "test execution".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjEhjW5hjYh}rn(h]UlevelKh]h]rnjEaUsourcejW5h]h]UlineMzUtypej[uhMzhhh]rnh)rn}rn(hX+Duplicate implicit target name: "test log".h}rn(h]h]h]h]h]uhjnh]rnhX+Duplicate implicit target name: "test log".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhj!FhjW5hjYh}rn(h]UlevelKh]h]rnj'FaUsourcejW5h]h]UlineMUtypej[uhMhhh]rnh)rn}rn(hX3Duplicate implicit target name: "test accessories".h}rn(h]h]h]h]h]uhjnh]rnhX3Duplicate implicit target name: "test accessories".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhj9FhjW5hjYh}rn(h]UlevelKh]h]rnj?FaUsourcejW5h]h]UlineMUtypej[uhMhhh]rnh)rn}rn(hX-Duplicate implicit target name: "test setup".h}rn(h]h]h]h]h]uhjnh]rnhX-Duplicate implicit target name: "test setup".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjQFhjW5hjYh}rn(h]UlevelKh]h]rnjWFaUsourcejW5h]h]UlineMUtypej[uhMhhh]rnh)rn}rn(hX1Duplicate implicit target name: "test execution".h}rn(h]h]h]h]h]uhjnh]rnhX1Duplicate implicit target name: "test execution".rnrn}rn(hUhjnubahhubaubh)rn}rn(hUhjFhjW5hjYh}rn(h]UlevelKh]h]rnjFaUsourcejW5h]h]UlineMUtypej[uhMhhh]rnh)rn}rn(hX+Duplicate implicit target name: "test log".h}rn(h]h]h]h]h]uhjnh]rnhX+Duplicate implicit target name: "test log".rnro}ro(hUhjnubahhubaubh)ro}ro(hUhjFhjW5hjYh}ro(h]UlevelKh]h]rojFaUsourcejW5h]h]UlineMUtypej[uhMhhh]roh)ro}ro(hX3Duplicate implicit target name: "test accessories".h}r o(h]h]h]h]h]uhjoh]r ohX3Duplicate implicit target name: "test accessories".r or o}r o(hUhjoubahhubaubh)ro}ro(hUhjFhjW5hjYh}ro(h]UlevelKh]h]rojFaUsourcejW5h]h]UlineMUtypej[uhMhhh]roh)ro}ro(hX-Duplicate implicit target name: "test setup".h}ro(h]h]h]h]h]uhjoh]rohX-Duplicate implicit target name: "test setup".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjGhjW5hjYh}ro(h]UlevelKh]h]roj GaUsourcejW5h]h]UlineMUtypej[uhMhhh]roh)ro}r o(hX1Duplicate implicit target name: "test execution".h}r!o(h]h]h]h]h]uhjoh]r"ohX1Duplicate implicit target name: "test execution".r#or$o}r%o(hUhjoubahhubaubh)r&o}r'o(hUhjNGhjW5hjYh}r(o(h]UlevelKh]h]r)ojTGaUsourcejW5h]h]UlineMUtypej[uhMhhh]r*oh)r+o}r,o(hX+Duplicate implicit target name: "test log".h}r-o(h]h]h]h]h]uhj&oh]r.ohX+Duplicate implicit target name: "test log".r/or0o}r1o(hUhj+oubahhubaubh)r2o}r3o(hUhjGhjW5hjYh}r4o(h]UlevelKh]h]r5ojGaUsourcejW5h]h]UlineMUtypej[uhMhhh]r6oh)r7o}r8o(hX3Duplicate implicit target name: "test accessories".h}r9o(h]h]h]h]h]uhj2oh]r:ohX3Duplicate implicit target name: "test accessories".r;oro}r?o(hUhjGhjW5hjYh}r@o(h]UlevelKh]h]rAojGaUsourcejW5h]h]UlineMUtypej[uhMhhh]rBoh)rCo}rDo(hX-Duplicate implicit target name: "test setup".h}rEo(h]h]h]h]h]uhj>oh]rFohX-Duplicate implicit target name: "test setup".rGorHo}rIo(hUhjCoubahhubaubh)rJo}rKo(hUhjGhjW5hjYh}rLo(h]UlevelKh]h]rMojGaUsourcejW5h]h]UlineMUtypej[uhMhhh]rNoh)rOo}rPo(hX1Duplicate implicit target name: "test execution".h}rQo(h]h]h]h]h]uhjJoh]rRohX1Duplicate implicit target name: "test execution".rSorTo}rUo(hUhjOoubahhubaubh)rVo}rWo(hUhjGhjW5hjYh}rXo(h]UlevelKh]h]rYojGaUsourcejW5h]h]UlineMUtypej[uhMhhh]rZoh)r[o}r\o(hX+Duplicate implicit target name: "test log".h}r]o(h]h]h]h]h]uhjVoh]r^ohX+Duplicate implicit target name: "test log".r_or`o}rao(hUhj[oubahhubaubh)rbo}rco(hUhj(HhjW5hjYh}rdo(h]UlevelKh]h]reoj.HaUsourcejW5h]h]UlineMUtypej[uhMhhh]rfoh)rgo}rho(hX3Duplicate implicit target name: "test accessories".h}rio(h]h]h]h]h]uhjboh]rjohX3Duplicate implicit target name: "test accessories".rkorlo}rmo(hUhjgoubahhubaubh)rno}roo(hUhj@HhjW5hjYh}rpo(h]UlevelKh]h]rqojFHaUsourcejW5h]h]UlineMUtypej[uhMhhh]rroh)rso}rto(hX-Duplicate implicit target name: "test setup".h}ruo(h]h]h]h]h]uhjnoh]rvohX-Duplicate implicit target name: "test setup".rworxo}ryo(hUhjsoubahhubaubh)rzo}r{o(hUhjHhjW5hjYh}r|o(h]UlevelKh]h]r}ojHaUsourcejW5h]h]UlineM#Utypej[uhM#hhh]r~oh)ro}ro(hX1Duplicate implicit target name: "test execution".h}ro(h]h]h]h]h]uhjzoh]rohX1Duplicate implicit target name: "test execution".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjHhjW5hjYh}ro(h]UlevelKh]h]rojHaUsourcejW5h]h]UlineM(Utypej[uhM(hhh]roh)ro}ro(hX+Duplicate implicit target name: "test log".h}ro(h]h]h]h]h]uhjoh]rohX+Duplicate implicit target name: "test log".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjIhjW5hjYh}ro(h]UlevelKh]h]rojIaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX3Duplicate implicit target name: "test accessories".h}ro(h]h]h]h]h]uhjoh]rohX3Duplicate implicit target name: "test accessories".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjCIhjW5hjYh}ro(h]UlevelKh]h]rojIIaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX-Duplicate implicit target name: "test setup".h}ro(h]h]h]h]h]uhjoh]rohX-Duplicate implicit target name: "test setup".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjIhjW5hjYh}ro(h]UlevelKh]h]rojIaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX1Duplicate implicit target name: "test execution".h}ro(h]h]h]h]h]uhjoh]rohX1Duplicate implicit target name: "test execution".roro}ro(hUhjoubahhubaubh)ro}ro(hUhj@JhjW5hjYh}ro(h]UlevelKh]h]rojFJaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX+Duplicate implicit target name: "test log".h}ro(h]h]h]h]h]uhjoh]rohX+Duplicate implicit target name: "test log".roro}ro(hUhjoubahhubaubh)ro}ro(hUhj}JhjW5hjYh}ro(h]UlevelKh]h]rojJaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX3Duplicate implicit target name: "test accessories".h}ro(h]h]h]h]h]uhjoh]rohX3Duplicate implicit target name: "test accessories".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjJhjW5hjYh}ro(h]UlevelKh]h]rojJaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX-Duplicate implicit target name: "test setup".h}ro(h]h]h]h]h]uhjoh]rohX-Duplicate implicit target name: "test setup".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjJhjW5hjYh}ro(h]UlevelKh]h]rojJaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX1Duplicate implicit target name: "test execution".h}ro(h]h]h]h]h]uhjoh]rohX1Duplicate implicit target name: "test execution".roro}ro(hUhjoubahhubaubh)ro}ro(hUhj1KhjW5hjYh}ro(h]UlevelKh]h]roj7KaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX+Duplicate implicit target name: "test log".h}ro(h]h]h]h]h]uhjoh]rohX+Duplicate implicit target name: "test log".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjvKhjW5hjYh}ro(h]UlevelKh]h]roj|KaUsourcejW5h]h]UlineM Utypej[uhM hhh]roh)ro}ro(hX3Duplicate implicit target name: "test accessories".h}ro(h]h]h]h]h]uhjoh]rohX3Duplicate implicit target name: "test accessories".roro}ro(hUhjoubahhubaubh)ro}ro(hUhjKhjW5hjYh}rp(h]UlevelKh]h]rpjKaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX-Duplicate implicit target name: "test setup".h}rp(h]h]h]h]h]uhjoh]rphX-Duplicate implicit target name: "test setup".rprp}r p(hUhjpubahhubaubh)r p}r p(hUhjHLhjW5hjYh}r p(h]UlevelKh]h]r pjNLaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX1Duplicate implicit target name: "test execution".h}rp(h]h]h]h]h]uhj ph]rphX1Duplicate implicit target name: "test execution".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjLhjW5hjYh}rp(h]UlevelKh]h]rpjLaUsourcejW5h]h]UlineM% Utypej[uhM% hhh]rph)rp}rp(hX+Duplicate implicit target name: "test log".h}rp(h]h]h]h]h]uhjph]rphX+Duplicate implicit target name: "test log".rpr p}r!p(hUhjpubahhubaubh)r"p}r#p(hUhjLhjW5hjYh}r$p(h]UlevelKh]h]UsourcejW5h]h]UlineM6 UtypejguhM5 hhh]r%ph)r&p}r'p(hX=Literal block ends without a blank line; unexpected unindent.h}r(p(h]h]h]h]h]uhj"ph]r)phX=Literal block ends without a blank line; unexpected unindent.r*pr+p}r,p(hUhj&pubahhubaubh)r-p}r.p(hUhjLhjW5hjYh}r/p(h]UlevelKh]h]r0pjLaUsourcejW5h]h]UlineM> Utypej[uhM> hhh]r1ph)r2p}r3p(hX3Duplicate implicit target name: "test accessories".h}r4p(h]h]h]h]h]uhj-ph]r5phX3Duplicate implicit target name: "test accessories".r6pr7p}r8p(hUhj2pubahhubaubh)r9p}r:p(hUhjLhjW5hjYh}r;p(h]UlevelKh]h]rp}r?p(hX-Duplicate implicit target name: "test setup".h}r@p(h]h]h]h]h]uhj9ph]rAphX-Duplicate implicit target name: "test setup".rBprCp}rDp(hUhj>pubahhubaubh)rEp}rFp(hUhjLhjW5hjYh}rGp(h]UlevelKh]h]rHpjLaUsourcejW5h]h]UlineMF Utypej[uhMF hhh]rIph)rJp}rKp(hX1Duplicate implicit target name: "test execution".h}rLp(h]h]h]h]h]uhjEph]rMphX1Duplicate implicit target name: "test execution".rNprOp}rPp(hUhjJpubahhubaubh)rQp}rRp(hUhj!MhjW5hjYh}rSp(h]UlevelKh]h]rTpj'MaUsourcejW5h]h]UlineMK Utypej[uhMK hhh]rUph)rVp}rWp(hX+Duplicate implicit target name: "test log".h}rXp(h]h]h]h]h]uhjQph]rYphX+Duplicate implicit target name: "test log".rZpr[p}r\p(hUhjVpubahhubaubh)r]p}r^p(hUhj^MhjW5hjYh}r_p(h]UlevelKh]h]r`pjdMaUsourcejW5h]h]UlineM Utypej[uhM hhh]raph)rbp}rcp(hX3Duplicate implicit target name: "test accessories".h}rdp(h]h]h]h]h]uhj]ph]rephX3Duplicate implicit target name: "test accessories".rfprgp}rhp(hUhjbpubahhubaubh)rip}rjp(hUhjvMhjW5hjYh}rkp(h]UlevelKh]h]rlpj|MaUsourcejW5h]h]UlineM Utypej[uhM hhh]rmph)rnp}rop(hX-Duplicate implicit target name: "test setup".h}rpp(h]h]h]h]h]uhjiph]rqphX-Duplicate implicit target name: "test setup".rrprsp}rtp(hUhjnpubahhubaubh)rup}rvp(hUhjMhjW5hjYh}rwp(h]UlevelKh]h]rxpjMaUsourcejW5h]h]UlineM Utypej[uhM hhh]ryph)rzp}r{p(hX1Duplicate implicit target name: "test execution".h}r|p(h]h]h]h]h]uhjuph]r}phX1Duplicate implicit target name: "test execution".r~prp}rp(hUhjzpubahhubaubh)rp}rp(hUhjMhjW5hjYh}rp(h]UlevelKh]h]rpjMaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX+Duplicate implicit target name: "test log".h}rp(h]h]h]h]h]uhjph]rphX+Duplicate implicit target name: "test log".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjMhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX3Duplicate implicit target name: "test accessories".h}rp(h]h]h]h]h]uhjph]rphX3Duplicate implicit target name: "test accessories".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjNhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX-Duplicate implicit target name: "test setup".h}rp(h]h]h]h]h]uhjph]rphX-Duplicate implicit target name: "test setup".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhj+NhjW5hjYh}rp(h]UlevelKh]h]rpj1NaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX1Duplicate implicit target name: "test execution".h}rp(h]h]h]h]h]uhjph]rphX1Duplicate implicit target name: "test execution".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhj[NhjW5hjYh}rp(h]UlevelKh]h]rpjaNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX+Duplicate implicit target name: "test log".h}rp(h]h]h]h]h]uhjph]rphX+Duplicate implicit target name: "test log".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjNhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX3Duplicate implicit target name: "test accessories".h}rp(h]h]h]h]h]uhjph]rphX3Duplicate implicit target name: "test accessories".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjNhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX-Duplicate implicit target name: "test setup".h}rp(h]h]h]h]h]uhjph]rphX-Duplicate implicit target name: "test setup".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjNhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX1Duplicate implicit target name: "test execution".h}rp(h]h]h]h]h]uhjph]rphX1Duplicate implicit target name: "test execution".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjNhjW5hjYh}rp(h]UlevelKh]h]rpjNaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX+Duplicate implicit target name: "test log".h}rp(h]h]h]h]h]uhjph]rphX+Duplicate implicit target name: "test log".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhj5OhjW5hjYh}rp(h]UlevelKh]h]rpj;OaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX3Duplicate implicit target name: "test accessories".h}rp(h]h]h]h]h]uhjph]rphX3Duplicate implicit target name: "test accessories".rprp}rp(hUhjpubahhubaubh)rp}rp(hUhjMOhjW5hjYh}rp(h]UlevelKh]h]rpjSOaUsourcejW5h]h]UlineM Utypej[uhM hhh]rph)rp}rp(hX-Duplicate implicit target name: "test setup".h}rq(h]h]h]h]h]uhjph]rqhX-Duplicate implicit target name: "test setup".rqrq}rq(hUhjpubahhubaubh)rq}rq(hUhjeOhjW5hjYh}rq(h]UlevelKh]h]rqjkOaUsourcejW5h]h]UlineM Utypej[uhM hhh]r qh)r q}r q(hX1Duplicate implicit target name: "test execution".h}r q(h]h]h]h]h]uhjqh]r qhX1Duplicate implicit target name: "test execution".rqrq}rq(hUhj qubahhubaubh)rq}rq(hUhjOhjW5hjYh}rq(h]UlevelKh]h]rqjOaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX+Duplicate implicit target name: "test log".h}rq(h]h]h]h]h]uhjqh]rqhX+Duplicate implicit target name: "test log".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjOhjW5hjYh}rq(h]UlevelKh]h]r qjOaUsourcejW5h]h]UlineM> Utypej[uhM> hhh]r!qh)r"q}r#q(hX3Duplicate implicit target name: "test accessories".h}r$q(h]h]h]h]h]uhjqh]r%qhX3Duplicate implicit target name: "test accessories".r&qr'q}r(q(hUhj"qubahhubaubh)r)q}r*q(hUhjOhjW5hjYh}r+q(h]UlevelKh]h]r,qjOaUsourcejW5h]h]UlineMB Utypej[uhMB hhh]r-qh)r.q}r/q(hX-Duplicate implicit target name: "test setup".h}r0q(h]h]h]h]h]uhj)qh]r1qhX-Duplicate implicit target name: "test setup".r2qr3q}r4q(hUhj.qubahhubaubh)r5q}r6q(hUhjPhjW5hjYh}r7q(h]UlevelKh]h]r8qjPaUsourcejW5h]h]UlineMF Utypej[uhMF hhh]r9qh)r:q}r;q(hX1Duplicate implicit target name: "test execution".h}rqr?q}r@q(hUhj:qubahhubaubh)rAq}rBq(hUhj2PhjW5hjYh}rCq(h]UlevelKh]h]rDqj8PaUsourcejW5h]h]UlineMK Utypej[uhMK hhh]rEqh)rFq}rGq(hX+Duplicate implicit target name: "test log".h}rHq(h]h]h]h]h]uhjAqh]rIqhX+Duplicate implicit target name: "test log".rJqrKq}rLq(hUhjFqubahhubaubh)rMq}rNq(hUhj2PhjW5hjYh}rOq(h]UlevelKh]h]UsourcejW5h]h]UlineM] UtypejguhM\ hhh]rPqh)rQq}rRq(hX=Literal block ends without a blank line; unexpected unindent.h}rSq(h]h]h]h]h]uhjMqh]rTqhX=Literal block ends without a blank line; unexpected unindent.rUqrVq}rWq(hUhjQqubahhubaubh)rXq}rYq(hUhj{PhjW5hjYh}rZq(h]UlevelKh]h]r[qjPaUsourcejW5h]h]UlineMi Utypej[uhMi hhh]r\qh)r]q}r^q(hX3Duplicate implicit target name: "test accessories".h}r_q(h]h]h]h]h]uhjXqh]r`qhX3Duplicate implicit target name: "test accessories".raqrbq}rcq(hUhj]qubahhubaubh)rdq}req(hUhjPhjW5hjYh}rfq(h]UlevelKh]h]rgqjPaUsourcejW5h]h]UlineMn Utypej[uhMn hhh]rhqh)riq}rjq(hX-Duplicate implicit target name: "test setup".h}rkq(h]h]h]h]h]uhjdqh]rlqhX-Duplicate implicit target name: "test setup".rmqrnq}roq(hUhjiqubahhubaubh)rpq}rqq(hUhjPhjW5hjYh}rrq(h]UlevelKh]h]rsqjPaUsourcejW5h]h]UlineMr Utypej[uhMr hhh]rtqh)ruq}rvq(hX1Duplicate implicit target name: "test execution".h}rwq(h]h]h]h]h]uhjpqh]rxqhX1Duplicate implicit target name: "test execution".ryqrzq}r{q(hUhjuqubahhubaubh)r|q}r}q(hUhjQhjW5hjYh}r~q(h]UlevelKh]h]rqjQaUsourcejW5h]h]UlineMy Utypej[uhMy hhh]rqh)rq}rq(hX+Duplicate implicit target name: "test log".h}rq(h]h]h]h]h]uhj|qh]rqhX+Duplicate implicit target name: "test log".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjrQhjW5hjYh}rq(h]UlevelKh]h]rqjxQaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX3Duplicate implicit target name: "test accessories".h}rq(h]h]h]h]h]uhjqh]rqhX3Duplicate implicit target name: "test accessories".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjQhjW5hjYh}rq(h]UlevelKh]h]rqjQaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX-Duplicate implicit target name: "test setup".h}rq(h]h]h]h]h]uhjqh]rqhX-Duplicate implicit target name: "test setup".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjQhjW5hjYh}rq(h]UlevelKh]h]rqjQaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX1Duplicate implicit target name: "test execution".h}rq(h]h]h]h]h]uhjqh]rqhX1Duplicate implicit target name: "test execution".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjRhjW5hjYh}rq(h]UlevelKh]h]rqjRaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX+Duplicate implicit target name: "test log".h}rq(h]h]h]h]h]uhjqh]rqhX+Duplicate implicit target name: "test log".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjiRhjW5hjYh}rq(h]UlevelKh]h]rqjoRaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX3Duplicate implicit target name: "test accessories".h}rq(h]h]h]h]h]uhjqh]rqhX3Duplicate implicit target name: "test accessories".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjRhjW5hjYh}rq(h]UlevelKh]h]rqjRaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX-Duplicate implicit target name: "test setup".h}rq(h]h]h]h]h]uhjqh]rqhX-Duplicate implicit target name: "test setup".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjRhjW5hjYh}rq(h]UlevelKh]h]rqjRaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX1Duplicate implicit target name: "test execution".h}rq(h]h]h]h]h]uhjqh]rqhX1Duplicate implicit target name: "test execution".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjRhjW5hjYh}rq(h]UlevelKh]h]rqjRaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX+Duplicate implicit target name: "test log".h}rq(h]h]h]h]h]uhjqh]rqhX+Duplicate implicit target name: "test log".rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjRhjW5hjYh}rq(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rqh)rq}rq(hX=Literal block ends without a blank line; unexpected unindent.h}rq(h]h]h]h]h]uhjqh]rqhX=Literal block ends without a blank line; unexpected unindent.rqrq}rq(hUhjqubahhubaubh)rq}rq(hUhjShjW5hjYh}rq(h]UlevelKh]h]rqj SaUsourcejW5h]h]UlineM Utypej[uhM hhh]rqh)rq}rq(hX3Duplicate implicit target name: "test accessories".h}rq(h]h]h]h]h]uhjqh]rqhX3Duplicate implicit target name: "test accessories".rqrq}rq(hUhjqubahhubaubh)rq}rr(hUhjShjW5hjYh}rr(h]UlevelKh]h]rrj$SaUsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hX-Duplicate implicit target name: "test setup".h}rr(h]h]h]h]h]uhjqh]rrhX-Duplicate implicit target name: "test setup".rrr r}r r(hUhjrubahhubaubh)r r}r r(hUhj6ShjW5hjYh}r r(h]UlevelKh]h]rrj Utypej[uhM> hhh]r2rh)r3r}r4r(hX3Duplicate implicit target name: "test accessories".h}r5r(h]h]h]h]h]uhj.rh]r6rhX3Duplicate implicit target name: "test accessories".r7rr8r}r9r(hUhj3rubahhubaubh)r:r}r;r(hUhjqThjW5hjYh}rrh)r?r}r@r(hX-Duplicate implicit target name: "test setup".h}rAr(h]h]h]h]h]uhj:rh]rBrhX-Duplicate implicit target name: "test setup".rCrrDr}rEr(hUhj?rubahhubaubh)rFr}rGr(hUhjThjW5hjYh}rHr(h]UlevelKh]h]rIrjTaUsourcejW5h]h]UlineMF Utypej[uhMF hhh]rJrh)rKr}rLr(hX1Duplicate implicit target name: "test execution".h}rMr(h]h]h]h]h]uhjFrh]rNrhX1Duplicate implicit target name: "test execution".rOrrPr}rQr(hUhjKrubahhubaubh)rRr}rSr(hUhjThjW5hjYh}rTr(h]UlevelKh]h]rUrjTaUsourcejW5h]h]UlineMK Utypej[uhMK hhh]rVrh)rWr}rXr(hX+Duplicate implicit target name: "test log".h}rYr(h]h]h]h]h]uhjRrh]rZrhX+Duplicate implicit target name: "test log".r[rr\r}r]r(hUhjWrubahhubaubh)r^r}r_r(hUhjThjW5hjYh}r`r(h]UlevelKh]h]UsourcejW5h]h]UlineMV UtypejguhMU hhh]rarh)rbr}rcr(hX=Literal block ends without a blank line; unexpected unindent.h}rdr(h]h]h]h]h]uhj^rh]rerhX=Literal block ends without a blank line; unexpected unindent.rfrrgr}rhr(hUhjbrubahhubaubh)rir}rjr(hUhjThjW5hjYh}rkr(h]UlevelKh]h]rlrjTaUsourcejW5h]h]UlineM] Utypej[uhM] hhh]rmrh)rnr}ror(hX3Duplicate implicit target name: "test accessories".h}rpr(h]h]h]h]h]uhjirh]rqrhX3Duplicate implicit target name: "test accessories".rrrrsr}rtr(hUhjnrubahhubaubh)rur}rvr(hUhjUhjW5hjYh}rwr(h]UlevelKh]h]rxrjUaUsourcejW5h]h]UlineMa Utypej[uhMa hhh]ryrh)rzr}r{r(hX-Duplicate implicit target name: "test setup".h}r|r(h]h]h]h]h]uhjurh]r}rhX-Duplicate implicit target name: "test setup".r~rrr}rr(hUhjzrubahhubaubh)rr}rr(hUhj&UhjW5hjYh}rr(h]UlevelKh]h]rrj,UaUsourcejW5h]h]UlineMe Utypej[uhMe hhh]rrh)rr}rr(hX1Duplicate implicit target name: "test execution".h}rr(h]h]h]h]h]uhjrh]rrhX1Duplicate implicit target name: "test execution".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjbUhjW5hjYh}rr(h]UlevelKh]h]rrjhUaUsourcejW5h]h]UlineMk Utypej[uhMk hhh]rrh)rr}rr(hX+Duplicate implicit target name: "test log".h}rr(h]h]h]h]h]uhjrh]rrhX+Duplicate implicit target name: "test log".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjUhjW5hjYh}rr(h]UlevelKh]h]rrjUaUsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hX3Duplicate implicit target name: "test accessories".h}rr(h]h]h]h]h]uhjrh]rrhX3Duplicate implicit target name: "test accessories".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjUhjW5hjYh}rr(h]UlevelKh]h]rrjUaUsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hX-Duplicate implicit target name: "test setup".h}rr(h]h]h]h]h]uhjrh]rrhX-Duplicate implicit target name: "test setup".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjUhjW5hjYh}rr(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rrh)rr}rr(hX%Line block ends without a blank line.h}rr(h]h]h]h]h]uhjrh]rrhX%Line block ends without a blank line.rrrr}rr(hUhjrubahhubaubh)rr}rr(hUh}rr(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhjVh]rrh)rr}rr(hX;Bullet list ends without a blank line; unexpected unindent.h}rr(h]h]h]h]h]uhjrh]rrhX;Bullet list ends without a blank line; unexpected unindent.rrrr}rr(hUhjrubahhubahjYubh)rr}rr(hUhj)VhjW5hjYh}rr(h]UlevelKh]h]rrj/VaUsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hX1Duplicate implicit target name: "test execution".h}rr(h]h]h]h]h]uhjrh]rrhX1Duplicate implicit target name: "test execution".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhj)VhjW5hjYh}rr(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rrh)rr}rr(hX?Definition list ends without a blank line; unexpected unindent.h}rr(h]h]h]h]h]uhjrh]rrhX?Definition list ends without a blank line; unexpected unindent.rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhj)VhjW5hjYh}rr(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rrh)rr}rr(hX%Line block ends without a blank line.h}rr(h]h]h]h]h]uhjrh]rrhX%Line block ends without a blank line.rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjVhjW5hjYh}rr(h]UlevelKh]h]rrjVaUsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hX+Duplicate implicit target name: "test log".h}rr(h]h]h]h]h]uhjrh]rrhX+Duplicate implicit target name: "test log".rrrr}rr(hUhjrubahhubaubh)rr}rr(hUhjVhjW5hjYh}rr(h]UlevelKh]h]UsourcejW5h]h]UlineM Utypej[uhM hhh]rrh)rr}rr(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rr(h]h]h]h]h]uhjrh]rrhXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rrrr}rr(hUhjrubahhubaubh)rs}rs(hUhjVhjW5hjYh}rs(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rsh)rs}rs(hX=Literal block ends without a blank line; unexpected unindent.h}rs(h]h]h]h]h]uhjsh]rshX=Literal block ends without a blank line; unexpected unindent.rsr s}r s(hUhjsubahhubaubh)r s}r s(hUhjVhjW5hjYh}r s(h]UlevelKh]h]UsourcejW5h]h]UlineM Utypej[uhM hhh]rsh)rs}rs(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rs(h]h]h]h]h]uhj sh]rshXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjVhjW5hjYh}rs(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rsh)rs}rs(hX=Literal block ends without a blank line; unexpected unindent.h}rs(h]h]h]h]h]uhjsh]rshX=Literal block ends without a blank line; unexpected unindent.rsrs}r s(hUhjsubahhubaubh)r!s}r"s(hUhjWhjW5hjYh}r#s(h]UlevelKh]h]r$sjWaUsourcejW5h]h]UlineM Utypej[uhM hhh]r%sh)r&s}r's(hX3Duplicate implicit target name: "test accessories".h}r(s(h]h]h]h]h]uhj!sh]r)shX3Duplicate implicit target name: "test accessories".r*sr+s}r,s(hUhj&subahhubaubh)r-s}r.s(hUhj)WhjW5hjYh}r/s(h]UlevelKh]h]r0sj/WaUsourcejW5h]h]UlineM Utypej[uhM hhh]r1sh)r2s}r3s(hX-Duplicate implicit target name: "test setup".h}r4s(h]h]h]h]h]uhj-sh]r5shX-Duplicate implicit target name: "test setup".r6sr7s}r8s(hUhj2subahhubaubh)r9s}r:s(hUhjAWhjW5hjYh}r;s(h]UlevelKh]h]rs}r?s(hX1Duplicate implicit target name: "test execution".h}r@s(h]h]h]h]h]uhj9sh]rAshX1Duplicate implicit target name: "test execution".rBsrCs}rDs(hUhj>subahhubaubh)rEs}rFs(hUhjqWhjW5hjYh}rGs(h]UlevelKh]h]rHsjwWaUsourcejW5h]h]UlineM Utypej[uhM hhh]rIsh)rJs}rKs(hX+Duplicate implicit target name: "test log".h}rLs(h]h]h]h]h]uhjEsh]rMshX+Duplicate implicit target name: "test log".rNsrOs}rPs(hUhjJsubahhubaubh)rQs}rRs(hUhjqWhjW5hjYh}rSs(h]UlevelKh]h]UsourcejW5h]h]UlineM UtypejguhM hhh]rTsh)rUs}rVs(hX=Literal block ends without a blank line; unexpected unindent.h}rWs(h]h]h]h]h]uhjQsh]rXshX=Literal block ends without a blank line; unexpected unindent.rYsrZs}r[s(hUhjUsubahhubaubh)r\s}r]s(hUhjWhjW5hjYh}r^s(h]UlevelKh]h]r_sjWaUsourcejW5h]h]UlineM Utypej[uhM hhh]r`sh)ras}rbs(hX3Duplicate implicit target name: "test accessories".h}rcs(h]h]h]h]h]uhj\sh]rdshX3Duplicate implicit target name: "test accessories".resrfs}rgs(hUhjasubahhubaubh)rhs}ris(hUhjWhjW5hjYh}rjs(h]UlevelKh]h]rksjWaUsourcejW5h]h]UlineM Utypej[uhM hhh]rlsh)rms}rns(hX-Duplicate implicit target name: "test setup".h}ros(h]h]h]h]h]uhjhsh]rpshX-Duplicate implicit target name: "test setup".rqsrrs}rss(hUhjmsubahhubaubh)rts}rus(hUhjWhjW5hjYh}rvs(h]UlevelKh]h]rwsjWaUsourcejW5h]h]UlineMUtypej[uhMhhh]rxsh)rys}rzs(hX1Duplicate implicit target name: "test execution".h}r{s(h]h]h]h]h]uhjtsh]r|shX1Duplicate implicit target name: "test execution".r}sr~s}rs(hUhjysubahhubaubh)rs}rs(hUhjXhjW5hjYh}rs(h]UlevelKh]h]rsjXaUsourcejW5h]h]UlineMUtypej[uhMhhh]rsh)rs}rs(hX+Duplicate implicit target name: "test log".h}rs(h]h]h]h]h]uhjsh]rshX+Duplicate implicit target name: "test log".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjKXhjW5hjYh}rs(h]UlevelKh]h]rsjQXaUsourcejW5h]h]UlineM!Utypej[uhM!hhh]rsh)rs}rs(hX3Duplicate implicit target name: "test accessories".h}rs(h]h]h]h]h]uhjsh]rshX3Duplicate implicit target name: "test accessories".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjcXhjW5hjYh}rs(h]UlevelKh]h]rsjiXaUsourcejW5h]h]UlineM%Utypej[uhM%hhh]rsh)rs}rs(hX-Duplicate implicit target name: "test setup".h}rs(h]h]h]h]h]uhjsh]rshX-Duplicate implicit target name: "test setup".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhj{XhjW5hjYh}rs(h]UlevelKh]h]rsjXaUsourcejW5h]h]UlineM)Utypej[uhM)hhh]rsh)rs}rs(hX1Duplicate implicit target name: "test execution".h}rs(h]h]h]h]h]uhjsh]rshX1Duplicate implicit target name: "test execution".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjXhjW5hjYh}rs(h]UlevelKh]h]rsjXaUsourcejW5h]h]UlineM0Utypej[uhM0hhh]rsh)rs}rs(hX+Duplicate implicit target name: "test log".h}rs(h]h]h]h]h]uhjsh]rshX+Duplicate implicit target name: "test log".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjXhjW5hjYh}rs(h]UlevelKh]h]UsourcejW5h]h]UlineM@UtypejguhM?hhh]rsh)rs}rs(hX=Literal block ends without a blank line; unexpected unindent.h}rs(h]h]h]h]h]uhjsh]rshX=Literal block ends without a blank line; unexpected unindent.rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjYhjW5hjYh}rs(h]UlevelKh]h]rsjYaUsourcejW5h]h]UlineMHUtypej[uhMHhhh]rsh)rs}rs(hX3Duplicate implicit target name: "test accessories".h}rs(h]h]h]h]h]uhjsh]rshX3Duplicate implicit target name: "test accessories".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjYhjW5hjYh}rs(h]UlevelKh]h]rsjYaUsourcejW5h]h]UlineMNUtypej[uhMNhhh]rsh)rs}rs(hX-Duplicate implicit target name: "test setup".h}rs(h]h]h]h]h]uhjsh]rshX-Duplicate implicit target name: "test setup".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUh}rs(h]UlevelKh]h]UsourcejW5h]h]UlineMQUtypejguhj(Yh]rsh)rs}rs(hX;Bullet list ends without a blank line; unexpected unindent.h}rs(h]h]h]h]h]uhjsh]rshX;Bullet list ends without a blank line; unexpected unindent.rsrs}rs(hUhjsubahhubahjYubh)rs}rs(hUhj_YhjW5hjYh}rs(h]UlevelKh]h]rsjeYaUsourcejW5h]h]UlineM]Utypej[uhM]hhh]rsh)rs}rs(hX1Duplicate implicit target name: "test execution".h}rs(h]h]h]h]h]uhjsh]rshX1Duplicate implicit target name: "test execution".rsrs}rs(hUhjsubahhubaubh)rs}rs(hUhjYhjW5hjYh}rs(h]UlevelKh]h]rsjYaUsourcejW5h]h]UlineMcUtypej[uhMchhh]rsh)rs}rs(hX+Duplicate implicit target name: "test log".h}rs(h]h]h]h]h]uhjsh]rshX+Duplicate implicit target name: "test log".rsrt}rt(hUhjsubahhubaubh)rt}rt(hUhjYhjW5hjYh}rt(h]UlevelKh]h]rtjYaUsourcejW5h]h]UlineMyUtypej[uhMyhhh]rth)rt}rt(hX3Duplicate implicit target name: "test accessories".h}r t(h]h]h]h]h]uhjth]r thX3Duplicate implicit target name: "test accessories".r tr t}r t(hUhjtubahhubaubh)rt}rt(hUhjYhjW5hjYh}rt(h]UlevelKh]h]rtjYaUsourcejW5h]h]UlineM}Utypej[uhM}hhh]rth)rt}rt(hX-Duplicate implicit target name: "test setup".h}rt(h]h]h]h]h]uhjth]rthX-Duplicate implicit target name: "test setup".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUh}rt(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhjYh]rth)rt}rt(hX;Bullet list ends without a blank line; unexpected unindent.h}r t(h]h]h]h]h]uhjth]r!thX;Bullet list ends without a blank line; unexpected unindent.r"tr#t}r$t(hUhjtubahhubahjYubh)r%t}r&t(hUhjZhjW5hjYh}r't(h]UlevelKh]h]r(tj!ZaUsourcejW5h]h]UlineMUtypej[uhMhhh]r)th)r*t}r+t(hX1Duplicate implicit target name: "test execution".h}r,t(h]h]h]h]h]uhj%th]r-thX1Duplicate implicit target name: "test execution".r.tr/t}r0t(hUhj*tubahhubaubh)r1t}r2t(hUhjKZhjW5hjYh}r3t(h]UlevelKh]h]r4tjQZaUsourcejW5h]h]UlineMUtypej[uhMhhh]r5th)r6t}r7t(hX+Duplicate implicit target name: "test log".h}r8t(h]h]h]h]h]uhj1th]r9thX+Duplicate implicit target name: "test log".r:tr;t}rt(hUhjKZhjW5hjYh}r?t(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypej[uhMhhh]r@th)rAt}rBt(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rCt(h]h]h]h]h]uhj=th]rDthXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rEtrFt}rGt(hUhjAtubahhubaubh)rHt}rIt(hUhjKZhjW5hjYh}rJt(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]rKth)rLt}rMt(hX=Literal block ends without a blank line; unexpected unindent.h}rNt(h]h]h]h]h]uhjHth]rOthX=Literal block ends without a blank line; unexpected unindent.rPtrQt}rRt(hUhjLtubahhubaubh)rSt}rTt(hUhjKZhjW5hjYh}rUt(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypej[uhMhhh]rVth)rWt}rXt(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rYt(h]h]h]h]h]uhjSth]rZthXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.r[tr\t}r]t(hUhjWtubahhubaubh)r^t}r_t(hUhjZhjW5hjYh}r`t(h]UlevelKh]h]ratjZaUsourcejW5h]h]UlineMUtypej[uhMhhh]rbth)rct}rdt(hX3Duplicate implicit target name: "test accessories".h}ret(h]h]h]h]h]uhj^th]rfthX3Duplicate implicit target name: "test accessories".rgtrht}rit(hUhjctubahhubaubh)rjt}rkt(hUhjZhjW5hjYh}rlt(h]UlevelKh]h]rmtjZaUsourcejW5h]h]UlineMUtypej[uhMhhh]rnth)rot}rpt(hX-Duplicate implicit target name: "test setup".h}rqt(h]h]h]h]h]uhjjth]rrthX-Duplicate implicit target name: "test setup".rstrtt}rut(hUhjotubahhubaubh)rvt}rwt(hUhj>[hjW5hjYh}rxt(h]UlevelKh]h]rytjD[aUsourcejW5h]h]UlineMUtypej[uhMhhh]rzth)r{t}r|t(hX1Duplicate implicit target name: "test execution".h}r}t(h]h]h]h]h]uhjvth]r~thX1Duplicate implicit target name: "test execution".rtrt}rt(hUhj{tubahhubaubh)rt}rt(hUhj[hjW5hjYh}rt(h]UlevelKh]h]rtj[aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX+Duplicate implicit target name: "test log".h}rt(h]h]h]h]h]uhjth]rthX+Duplicate implicit target name: "test log".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj[hjW5hjYh}rt(h]UlevelKh]h]rtj[aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX3Duplicate implicit target name: "test accessories".h}rt(h]h]h]h]h]uhjth]rthX3Duplicate implicit target name: "test accessories".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj[hjW5hjYh}rt(h]UlevelKh]h]rtj[aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX-Duplicate implicit target name: "test setup".h}rt(h]h]h]h]h]uhjth]rthX-Duplicate implicit target name: "test setup".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj]\hjW5hjYh}rt(h]UlevelKh]h]rtjc\aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX1Duplicate implicit target name: "test execution".h}rt(h]h]h]h]h]uhjth]rthX1Duplicate implicit target name: "test execution".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj\hjW5hjYh}rt(h]UlevelKh]h]rtj\aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX+Duplicate implicit target name: "test log".h}rt(h]h]h]h]h]uhjth]rthX+Duplicate implicit target name: "test log".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj\hjW5hjYh}rt(h]UlevelKh]h]UsourcejW5h]h]UlineMKUtypejuhMJhhh]rth)rt}rt(hXUnexpected indentation.h}rt(h]h]h]h]h]uhjth]rthXUnexpected indentation.rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj]]hjW5hjYh}rt(h]UlevelKh]h]rtjc]aUsourcejW5h]h]UlineM\Utypej[uhM\hhh]rth)rt}rt(hX3Duplicate implicit target name: "test accessories".h}rt(h]h]h]h]h]uhjth]rthX3Duplicate implicit target name: "test accessories".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhju]hjW5hjYh}rt(h]UlevelKh]h]rtj{]aUsourcejW5h]h]UlineM`Utypej[uhM`hhh]rth)rt}rt(hX-Duplicate implicit target name: "test setup".h}rt(h]h]h]h]h]uhjth]rthX-Duplicate implicit target name: "test setup".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj]hjW5hjYh}rt(h]UlevelKh]h]rtj]aUsourcejW5h]h]UlineMdUtypej[uhMdhhh]rth)rt}rt(hX1Duplicate implicit target name: "test execution".h}rt(h]h]h]h]h]uhjth]rthX1Duplicate implicit target name: "test execution".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj]hjW5hjYh}rt(h]UlevelKh]h]rtj]aUsourcejW5h]h]UlineMiUtypej[uhMihhh]rth)rt}rt(hX+Duplicate implicit target name: "test log".h}rt(h]h]h]h]h]uhjth]rthX+Duplicate implicit target name: "test log".rtrt}rt(hUhjtubahhubaubh)rt}rt(hUhj]hjW5hjYh}rt(h]UlevelKh]h]rtj^aUsourcejW5h]h]UlineMUtypej[uhMhhh]rth)rt}rt(hX3Duplicate implicit target name: "test accessories".h}ru(h]h]h]h]h]uhjth]ruhX3Duplicate implicit target name: "test accessories".ruru}ru(hUhjtubahhubaubh)ru}ru(hUhj^hjW5hjYh}ru(h]UlevelKh]h]ruj^aUsourcejW5h]h]UlineMUtypej[uhMhhh]r uh)r u}r u(hX-Duplicate implicit target name: "test setup".h}r u(h]h]h]h]h]uhjuh]r uhX-Duplicate implicit target name: "test setup".ruru}ru(hUhj uubahhubaubh)ru}ru(hUhj*^hjW5hjYh}ru(h]UlevelKh]h]ruj0^aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX1Duplicate implicit target name: "test execution".h}ru(h]h]h]h]h]uhjuh]ruhX1Duplicate implicit target name: "test execution".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhjZ^hjW5hjYh}ru(h]UlevelKh]h]r uj`^aUsourcejW5h]h]UlineMUtypej[uhMhhh]r!uh)r"u}r#u(hX+Duplicate implicit target name: "test log".h}r$u(h]h]h]h]h]uhjuh]r%uhX+Duplicate implicit target name: "test log".r&ur'u}r(u(hUhj"uubahhubaubh)r)u}r*u(hUhj^hjW5hjYh}r+u(h]UlevelKh]h]r,uj^aUsourcejW5h]h]UlineMUtypej[uhMhhh]r-uh)r.u}r/u(hX3Duplicate implicit target name: "test accessories".h}r0u(h]h]h]h]h]uhj)uh]r1uhX3Duplicate implicit target name: "test accessories".r2ur3u}r4u(hUhj.uubahhubaubh)r5u}r6u(hUhj^hjW5hjYh}r7u(h]UlevelKh]h]r8uj^aUsourcejW5h]h]UlineMUtypej[uhMhhh]r9uh)r:u}r;u(hX-Duplicate implicit target name: "test setup".h}rur?u}r@u(hUhj:uubahhubaubh)rAu}rBu(hUhj^hjW5hjYh}rCu(h]UlevelKh]h]rDuj^aUsourcejW5h]h]UlineMUtypej[uhMhhh]rEuh)rFu}rGu(hX1Duplicate implicit target name: "test execution".h}rHu(h]h]h]h]h]uhjAuh]rIuhX1Duplicate implicit target name: "test execution".rJurKu}rLu(hUhjFuubahhubaubh)rMu}rNu(hUhj_hjW5hjYh}rOu(h]UlevelKh]h]rPuj_aUsourcejW5h]h]UlineMUtypej[uhMhhh]rQuh)rRu}rSu(hX+Duplicate implicit target name: "test log".h}rTu(h]h]h]h]h]uhjMuh]rUuhX+Duplicate implicit target name: "test log".rVurWu}rXu(hUhjRuubahhubaubh)rYu}rZu(hUhjE_hjW5hjYh}r[u(h]UlevelKh]h]r\ujK_aUsourcejW5h]h]UlineMUtypej[uhMhhh]r]uh)r^u}r_u(hX3Duplicate implicit target name: "test accessories".h}r`u(h]h]h]h]h]uhjYuh]rauhX3Duplicate implicit target name: "test accessories".rburcu}rdu(hUhj^uubahhubaubh)reu}rfu(hUhj]_hjW5hjYh}rgu(h]UlevelKh]h]rhujc_aUsourcejW5h]h]UlineMUtypej[uhMhhh]riuh)rju}rku(hX-Duplicate implicit target name: "test setup".h}rlu(h]h]h]h]h]uhjeuh]rmuhX-Duplicate implicit target name: "test setup".rnurou}rpu(hUhjjuubahhubaubh)rqu}rru(hUhju_hjW5hjYh}rsu(h]UlevelKh]h]rtuj{_aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruuh)rvu}rwu(hX1Duplicate implicit target name: "test execution".h}rxu(h]h]h]h]h]uhjquh]ryuhX1Duplicate implicit target name: "test execution".rzur{u}r|u(hUhjvuubahhubaubh)r}u}r~u(hUhj_hjW5hjYh}ru(h]UlevelKh]h]ruj_aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX+Duplicate implicit target name: "test log".h}ru(h]h]h]h]h]uhj}uh]ruhX+Duplicate implicit target name: "test log".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj_hjW5hjYh}ru(h]UlevelKh]h]UsourcejW5h]h]UlineM7UtypejguhM6hhh]ruh)ru}ru(hX=Literal block ends without a blank line; unexpected unindent.h}ru(h]h]h]h]h]uhjuh]ruhX=Literal block ends without a blank line; unexpected unindent.ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj_hjW5hjYh}ru(h]UlevelKh]h]ruj_aUsourcejW5h]h]UlineM@Utypej[uhM@hhh]ruh)ru}ru(hX3Duplicate implicit target name: "test accessories".h}ru(h]h]h]h]h]uhjuh]ruhX3Duplicate implicit target name: "test accessories".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj_hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMDUtypej[uhMDhhh]ruh)ru}ru(hX-Duplicate implicit target name: "test setup".h}ru(h]h]h]h]h]uhjuh]ruhX-Duplicate implicit target name: "test setup".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj`hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMHUtypej[uhMHhhh]ruh)ru}ru(hX1Duplicate implicit target name: "test execution".h}ru(h]h]h]h]h]uhjuh]ruhX1Duplicate implicit target name: "test execution".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhjB`hjW5hjYh}ru(h]UlevelKh]h]rujH`aUsourcejW5h]h]UlineMMUtypej[uhMMhhh]ruh)ru}ru(hX+Duplicate implicit target name: "test log".h}ru(h]h]h]h]h]uhjuh]ruhX+Duplicate implicit target name: "test log".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj`hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX3Duplicate implicit target name: "test accessories".h}ru(h]h]h]h]h]uhjuh]ruhX3Duplicate implicit target name: "test accessories".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj`hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX-Duplicate implicit target name: "test setup".h}ru(h]h]h]h]h]uhjuh]ruhX-Duplicate implicit target name: "test setup".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj`hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX1Duplicate implicit target name: "test execution".h}ru(h]h]h]h]h]uhjuh]ruhX1Duplicate implicit target name: "test execution".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj`hjW5hjYh}ru(h]UlevelKh]h]ruj`aUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX+Duplicate implicit target name: "test log".h}ru(h]h]h]h]h]uhjuh]ruhX+Duplicate implicit target name: "test log".ruru}ru(hUhjuubahhubaubh)ru}ru(hUhj-ahjW5hjYh}ru(h]UlevelKh]h]ruj3aaUsourcejW5h]h]UlineMUtypej[uhMhhh]ruh)ru}ru(hX3Duplicate implicit target name: "test accessories".h}ru(h]h]h]h]h]uhjuh]ruhX3Duplicate implicit target name: "test accessories".ruru}ru(hUhjuubahhubaubh)rv}rv(hUhjEahjW5hjYh}rv(h]UlevelKh]h]rvjKaaUsourcejW5h]h]UlineMUtypej[uhMhhh]rvh)rv}rv(hX-Duplicate implicit target name: "test setup".h}rv(h]h]h]h]h]uhjvh]rvhX-Duplicate implicit target name: "test setup".r vr v}r v(hUhjvubahhubaubh)r v}r v(hUhj]ahjW5hjYh}rv(h]UlevelKh]h]rvjcaaUsourcejW5h]h]UlineMUtypej[uhMhhh]rvh)rv}rv(hX1Duplicate implicit target name: "test execution".h}rv(h]h]h]h]h]uhj vh]rvhX1Duplicate implicit target name: "test execution".rvrv}rv(hUhjvubahhubaubh)rv}rv(hUhjahjW5hjYh}rv(h]UlevelKh]h]rvjaaUsourcejW5h]h]UlineMUtypej[uhMhhh]rvh)rv}rv(hX+Duplicate implicit target name: "test log".h}rv(h]h]h]h]h]uhjvh]r vhX+Duplicate implicit target name: "test log".r!vr"v}r#v(hUhjvubahhubaubh)r$v}r%v(hUhjahjW5hjYh}r&v(h]UlevelKh]h]r'vjaaUsourcejW5h]h]UlineMUtypej[uhMhhh]r(vh)r)v}r*v(hX3Duplicate implicit target name: "test accessories".h}r+v(h]h]h]h]h]uhj$vh]r,vhX3Duplicate implicit target name: "test accessories".r-vr.v}r/v(hUhj)vubahhubaubh)r0v}r1v(hUhjahjW5hjYh}r2v(h]UlevelKh]h]r3vjaaUsourcejW5h]h]UlineMUtypej[uhMhhh]r4vh)r5v}r6v(hX-Duplicate implicit target name: "test setup".h}r7v(h]h]h]h]h]uhj0vh]r8vhX-Duplicate implicit target name: "test setup".r9vr:v}r;v(hUhj5vubahhubaubh)rv(h]UlevelKh]h]r?vjbaUsourcejW5h]h]UlineMUtypej[uhMhhh]r@vh)rAv}rBv(hX1Duplicate implicit target name: "test execution".h}rCv(h]h]h]h]h]uhjw(hX+Duplicate implicit target name: "test log".h}r?w(h]h]h]h]h]uhj8wh]r@whX+Duplicate implicit target name: "test log".rAwrBw}rCw(hUhj=wubahhubaubh)rDw}rEw(hUhjehjW5hjYh}rFw(h]UlevelKh]h]rGwjeaUsourcejW5h]h]UlineMXUtypej[uhMXhhh]rHwh)rIw}rJw(hX3Duplicate implicit target name: "test accessories".h}rKw(h]h]h]h]h]uhjDwh]rLwhX3Duplicate implicit target name: "test accessories".rMwrNw}rOw(hUhjIwubahhubaubh)rPw}rQw(hUhjehjW5hjYh}rRw(h]UlevelKh]h]rSwjeaUsourcejW5h]h]UlineM\Utypej[uhM\hhh]rTwh)rUw}rVw(hX-Duplicate implicit target name: "test setup".h}rWw(h]h]h]h]h]uhjPwh]rXwhX-Duplicate implicit target name: "test setup".rYwrZw}r[w(hUhjUwubahhubaubh)r\w}r]w(hUhjehjW5hjYh}r^w(h]UlevelKh]h]r_wjeaUsourcejW5h]h]UlineM`Utypej[uhM`hhh]r`wh)raw}rbw(hX1Duplicate implicit target name: "test execution".h}rcw(h]h]h]h]h]uhj\wh]rdwhX1Duplicate implicit target name: "test execution".rewrfw}rgw(hUhjawubahhubaubh)rhw}riw(hUhjehjW5hjYh}rjw(h]UlevelKh]h]rkwjeaUsourcejW5h]h]UlineMeUtypej[uhMehhh]rlwh)rmw}rnw(hX+Duplicate implicit target name: "test log".h}row(h]h]h]h]h]uhjhwh]rpwhX+Duplicate implicit target name: "test log".rqwrrw}rsw(hUhjmwubahhubaubh)rtw}ruw(hUhjehjW5hjYh}rvw(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]rwwh)rxw}ryw(hX=Literal block ends without a blank line; unexpected unindent.h}rzw(h]h]h]h]h]uhjtwh]r{whX=Literal block ends without a blank line; unexpected unindent.r|wr}w}r~w(hUhjxwubahhubaubh)rw}rw(hUhj-fhjW5hjYh}rw(h]UlevelKh]h]rwj3faUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX3Duplicate implicit target name: "test accessories".h}rw(h]h]h]h]h]uhjwh]rwhX3Duplicate implicit target name: "test accessories".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjEfhjW5hjYh}rw(h]UlevelKh]h]rwjKfaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX-Duplicate implicit target name: "test setup".h}rw(h]h]h]h]h]uhjwh]rwhX-Duplicate implicit target name: "test setup".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjnfhjW5hjYh}rw(h]UlevelKh]h]rwjtfaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX1Duplicate implicit target name: "test execution".h}rw(h]h]h]h]h]uhjwh]rwhX1Duplicate implicit target name: "test execution".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjfhjW5hjYh}rw(h]UlevelKh]h]rwjfaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX+Duplicate implicit target name: "test log".h}rw(h]h]h]h]h]uhjwh]rwhX+Duplicate implicit target name: "test log".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjfhjW5hjYh}rw(h]UlevelKh]h]rwjgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX3Duplicate implicit target name: "test accessories".h}rw(h]h]h]h]h]uhjwh]rwhX3Duplicate implicit target name: "test accessories".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjghjW5hjYh}rw(h]UlevelKh]h]rwjgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX-Duplicate implicit target name: "test setup".h}rw(h]h]h]h]h]uhjwh]rwhX-Duplicate implicit target name: "test setup".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhj>ghjW5hjYh}rw(h]UlevelKh]h]rwjDgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX1Duplicate implicit target name: "test execution".h}rw(h]h]h]h]h]uhjwh]rwhX1Duplicate implicit target name: "test execution".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjnghjW5hjYh}rw(h]UlevelKh]h]rwjtgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX+Duplicate implicit target name: "test log".h}rw(h]h]h]h]h]uhjwh]rwhX+Duplicate implicit target name: "test log".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjghjW5hjYh}rw(h]UlevelKh]h]rwjgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX3Duplicate implicit target name: "test accessories".h}rw(h]h]h]h]h]uhjwh]rwhX3Duplicate implicit target name: "test accessories".rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjghNhjYh}rw(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhNhhh]rwh)rw}rw(hX;Block quote ends without a blank line; unexpected unindent.h}rw(h]h]h]h]h]uhjwh]rwhX;Block quote ends without a blank line; unexpected unindent.rwrw}rw(hUhjwubahhubaubh)rw}rw(hUhjghjW5hjYh}rw(h]UlevelKh]h]rwjgaUsourcejW5h]h]UlineMUtypej[uhMhhh]rwh)rw}rw(hX-Duplicate implicit target name: "test setup".h}rw(h]h]h]h]h]uhjwh]rwhX-Duplicate implicit target name: "test setup".rwrx}rx(hUhjwubahhubaubh)rx}rx(hUh}rx(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhjgh]rxh)rx}rx(hX;Bullet list ends without a blank line; unexpected unindent.h}rx(h]h]h]h]h]uhjxh]r xhX;Bullet list ends without a blank line; unexpected unindent.r xr x}r x(hUhjxubahhubahjYubh)r x}rx(hUhjBhhjW5hjYh}rx(h]UlevelKh]h]rxjHhaUsourcejW5h]h]UlineMUtypej[uhMhhh]rxh)rx}rx(hX1Duplicate implicit target name: "test execution".h}rx(h]h]h]h]h]uhj xh]rxhX1Duplicate implicit target name: "test execution".rxrx}rx(hUhjxubahhubaubh)rx}rx(hUhjhhjW5hjYh}rx(h]UlevelKh]h]rxjhaUsourcejW5h]h]UlineMUtypej[uhMhhh]rxh)rx}rx(hX+Duplicate implicit target name: "test log".h}r x(h]h]h]h]h]uhjxh]r!xhX+Duplicate implicit target name: "test log".r"xr#x}r$x(hUhjxubahhubaubh)r%x}r&x(hUhjhhjW5hjYh}r'x(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhMhhh]r(xh)r)x}r*x(hX=Literal block ends without a blank line; unexpected unindent.h}r+x(h]h]h]h]h]uhj%xh]r,xhX=Literal block ends without a blank line; unexpected unindent.r-xr.x}r/x(hUhj)xubahhubaubh)r0x}r1x(hUhjhhjW5hjYh}r2x(h]UlevelKh]h]r3xjhaUsourcejW5h]h]UlineMUtypej[uhMhhh]r4xh)r5x}r6x(hX3Duplicate implicit target name: "test accessories".h}r7x(h]h]h]h]h]uhj0xh]r8xhX3Duplicate implicit target name: "test accessories".r9xr:x}r;x(hUhj5xubahhubaubh)rx(h]UlevelKh]h]UsourcejW5h]h]UlineMUtypejguhNhhh]r?xh)r@x}rAx(hX;Block quote ends without a blank line; unexpected unindent.h}rBx(h]h]h]h]h]uhj`__.hjxhjxhhh}rx(h]h]h]h]h]uhKhhh]rx(hX_The Power-On Self Test (POST) boot is designed to execute a series of platform/EVM factory tests on reset and indicate a PASS/FAIL condition using the LEDs and write test result to UART. A PASS result indicates that the EVM can be booted. POST is supported on K2H/K2E/K2L/C66x devices, this functionality is provided on other devices (e.g., AM57x) by rxrx}rx(hX_The Power-On Self Test (POST) boot is designed to execute a series of platform/EVM factory tests on reset and indicate a PASS/FAIL condition using the LEDs and write test result to UART. A PASS result indicates that the EVM can be booted. POST is supported on K2H/K2E/K2L/C66x devices, this functionality is provided on other devices (e.g., AM57x) by hjxubj)rx}rx(hX.`Diagnostics `__h}rx(UnameX DiagnosticsjXindex_board.html#diagnosticsh]h]h]h]h]uhjxh]rxhX Diagnosticsrxrx}rx(hUhjxubahj ubhX.rx}rx(hX.hjxubeubh)rx}rx(hX1POST will perform the following functional tests:rxhjxhjxhhh}rx(h]h]h]h]h]uhK hhh]ryhX1POST will perform the following functional tests:ryry}ry(hjxhjxubaubj)ry}ry(hUhjxhjxhjh}ry(jX-h]h]h]h]h]uhKhhh]ry(j)ry}r y(hXExternal memory read/write testr yhjyhjxhjh}r y(h]h]h]h]h]uhNhhh]r yh)r y}ry(hj yhjyhjxhhh}ry(h]h]h]h]h]uhKh]ryhXExternal memory read/write testryry}ry(hj yhj yubaubaubj)ry}ry(hXNAND read testryhjyhjxhjh}ry(h]h]h]h]h]uhNhhh]ryh)ry}ry(hjyhjyhjxhhh}ry(h]h]h]h]h]uhKh]ryhXNAND read testryry}ry(hjyhjyubaubaubj)r y}r!y(hX NOR read testr"yhjyhjxhjh}r#y(h]h]h]h]h]uhNhhh]r$yh)r%y}r&y(hj"yhj yhjxhhh}r'y(h]h]h]h]h]uhKh]r(yhX NOR read testr)yr*y}r+y(hj"yhj%yubaubaubj)r,y}r-y(hXEEPROM read testr.yhjyhjxhjh}r/y(h]h]h]h]h]uhNhhh]r0yh)r1y}r2y(hj.yhj,yhjxhhh}r3y(h]h]h]h]h]uhKh]r4yhXEEPROM read testr5yr6y}r7y(hj.yhj1yubaubaubj)r8y}r9y(hXUART write testr:yhjyhjxhjh}r;y(h]h]h]h]h]uhNhhh]ry(hj:yhj8yhjxhhh}r?y(h]h]h]h]h]uhKh]r@yhXUART write testrAyrBy}rCy(hj:yhj=yubaubaubj)rDy}rEy(hX LED test hjyhjxhjh}rFy(h]h]h]h]h]uhNhhh]rGyh)rHy}rIy(hXLED testrJyhjDyhjxhhh}rKy(h]h]h]h]h]uhKh]rLyhXLED testrMyrNy}rOy(hjJyhjHyubaubaubeubh)rPy}rQy(hX=Additionally, POST provides the following useful information:rRyhjxhjxhhh}rSy(h]h]h]h]h]uhKhhh]rTyhX=Additionally, POST provides the following useful information:rUyrVy}rWy(hjRyhjPyubaubj)rXy}rYy(hUhjxhjxhjh}rZy(jX-h]h]h]h]h]uhKhhh]r[y(j)r\y}r]y(hX FPGA versionr^yhjXyhjxhjh}r_y(h]h]h]h]h]uhNhhh]r`yh)ray}rby(hj^yhj\yhjxhhh}rcy(h]h]h]h]h]uhKh]rdyhX FPGA versionreyrfy}rgy(hj^yhjayubaubaubj)rhy}riy(hXBoard serial numberrjyhjXyhjxhjh}rky(h]h]h]h]h]uhNhhh]rlyh)rmy}rny(hjjyhjhyhjxhhh}roy(h]h]h]h]h]uhKh]rpyhXBoard serial numberrqyrry}rsy(hjjyhjmyubaubaubj)rty}ruy(hX EFUSE MAC IDrvyhjXyhjxhjh}rwy(h]h]h]h]h]uhNhhh]rxyh)ryy}rzy(hjvyhjtyhjxhhh}r{y(h]h]h]h]h]uhKh]r|yhX EFUSE MAC IDr}yr~y}ry(hjvyhjyyubaubaubj)ry}ry(hX,Indication of whether SA is available on SOCryhjXyhjxhjh}ry(h]h]h]h]h]uhNhhh]ryh)ry}ry(hjyhjyhjxhhh}ry(h]h]h]h]h]uhKh]ryhX,Indication of whether SA is available on SOCryry}ry(hjyhjyubaubaubj)ry}ry(hXPLL Reset Type status register hjXyhjxhjh}ry(h]h]h]h]h]uhNhhh]ryh)ry}ry(hXPLL Reset Type status registerryhjyhjxhhh}ry(h]h]h]h]h]uhKh]ryhXPLL Reset Type status registerryry}ry(hjyhjyubaubaubeubj1)ry}ry(hUhjxhjxhj4h}ry(h]h]h]h]h]uhKhhh]ryj7)ry}ry(hUj:Khjyhjxhhh}ry(h]h]h]h]h]uhKhhh]ubaubjx)ry}ry(hX Compilationryhjxhjxhjxh}ry(h]ryU compilationryah]h]h]h]ryhDauhNhhh]ryhX Compilationryry}ry(hjyhjyubaubh)ry}ry(hXThe recommended rule-of-thumb to compiling projects in the Processor SDK RTOS package is to use the makefiles provided. The makefiles are usable after setting up your shell/terminal/command prompt environment with the setupenv.bat or setupenv.sh script located inryhjxhjxhhh}ry(h]h]h]h]h]uhK#hhh]ryhXThe recommended rule-of-thumb to compiling projects in the Processor SDK RTOS package is to use the makefiles provided. The makefiles are usable after setting up your shell/terminal/command prompt environment with the setupenv.bat or setupenv.sh script located inryry}ry(hjyhjyubaubj()ry}ry(hX:[SDK Install Path]/processor_sdk_rtos__hjxhjxhj+h}ry(hhh]h]h]h]h]uhMa%hhh]ryhX:[SDK Install Path]/processor_sdk_rtos__ryry}ry(hUhjyubaubh)ry}ry(hXRefer to `Processor SDK RTOS Building the SDK `__ guide on how to setup your environment for building within any of the Processor SDK RTOS packages.hjxhjxhhh}ry(h]h]h]h]h]uhK,hhh]ry(hX Refer to ryry}ry(hX Refer to hjyubj)ry}ry(hXN`Processor SDK RTOS Building the SDK `__h}ry(UnameX#Processor SDK RTOS Building the SDKjX$index_overview.html#building-the-sdkh]h]h]h]h]uhjyh]ryhX#Processor SDK RTOS Building the SDKryry}ry(hUhjyubahj ubhXc guide on how to setup your environment for building within any of the Processor SDK RTOS packages.ryry}ry(hXc guide on how to setup your environment for building within any of the Processor SDK RTOS packages.hjyubeubh)ry}ry(hX To compile the POST application:ryhjxhjxhhh}ry(h]h]h]h]h]uhK0hhh]ryhX To compile the POST application:ryry}ry(hjyhjyubaubj()ry}ry(hX^cd [SDK Install Path]/pdk__/packages/ti/boot/post//build make allhjxhjxhj+h}ry(hhh]h]h]h]h]uhMk%hhh]ryhX^cd [SDK Install Path]/pdk__/packages/ti/boot/post//build make allryry}ry(hUhjyubaubh)ry}ry(hX?This will create the .out executable that can be loaded via CCSryhjxhjxhhh}ry(h]h]h]h]h]uhK7hhh]ryhX?This will create the .out executable that can be loaded via CCSryry}ry(hjyhjyubaubj1)ry}ry(hUhjxhjxhj4h}ry(h]h]h]h]h]uhK9hhh]ryj7)ry}ry(hUj:Khjyhjxhhh}ry(h]h]h]h]h]uhKhhh]ubaubjx)ry}ry(hXFlashing POST Imageryhjxhjxhjxh}ry(h]ryUflashing-post-imageryah]h]h]h]ryh/auhNhhh]ryhXFlashing POST Imageryry}ry(hjyhjyubaubh)ry}ry(hXTo flash a bootable image of POST, please refer to the `SDK RTOS Flashing Bootable Images `__ guide.hjxhjxhhh}ry(h]h]h]h]h]uhK>hhh]ry(hX7To flash a bootable image of POST, please refer to the ryry}ry(hX7To flash a bootable image of POST, please refer to the hjyubj)ry}ry(hXl`SDK RTOS Flashing Bootable Images `__h}ry(UnameX!SDK RTOS Flashing Bootable ImagesjXDindex_how_to_guides.html#flash-bootable-images-c66x-k2h-k2e-k2l-onlyh]h]h]h]h]uhjyh]ryhX!SDK RTOS Flashing Bootable Imagesryry}rz(hUhjyubahj ubhX guide.rzrz}rz(hX guide.hjyubeubj1)rz}rz(hUhjxhjxhj4h}rz(h]h]h]h]h]uhKAhhh]rzj7)rz}r z(hUj:Khjzhjxhhh}r z(h]h]h]h]h]uhKhhh]ubaubjx)r z}r z(hX C66x LED Coder zhjxhjxhjxh}rz(h]rzU c66x-led-coderzah]h]h]h]rzh[auhNhhh]rzhX C66x LED Coderzrz}rz(hj zhj zubaubh)rz}rz(hXsFor C66x, the on-board LEDs can also provide diagnostic information on POST routines. Refer to the following table:rzhjxhjxhhh}rz(h]h]h]h]h]uhKFhhh]rzhXsFor C66x, the on-board LEDs can also provide diagnostic information on POST routines. Refer to the following table:rzrz}rz(hjzhjzubaubj)rz}rz(hUhjxhjxhj h}r z(h]h]h]h]h]uhNhhh]r!zj)r"z}r#z(hUh}r$z(h]h]h]h]h]UcolsKuhjzh]r%z(j)r&z}r'z(hUh}r(z(h]h]h]h]h]UcolwidthKuhj"zh]hjubj)r)z}r*z(hUh}r+z(h]h]h]h]h]UcolwidthKuhj"zh]hjubj)r,z}r-z(hUh}r.z(h]h]h]h]h]UcolwidthKuhj"zh]hjubj)r/z}r0z(hUh}r1z(h]h]h]h]h]UcolwidthKuhj"zh]hjubj)r2z}r3z(hUh}r4z(h]h]h]h]h]UcolwidthKuhj"zh]hjubj3)r5z}r6z(hUh}r7z(h]h]h]h]h]uhj"zh]r8zj8)r9z}r:z(hUh}r;z(h]h]h]h]h]uhj5zh]rz(hUh}r?z(h]h]h]h]h]uhj9zh]r@zh)rAz}rBz(hX Test ResultrCzhj=zhjxhhh}rDz(h]h]h]h]h]uhKJh]rEzhX Test ResultrFzrGz}rHz(hjCzhjAzubaubahjJubj=)rIz}rJz(hUh}rKz(h]h]h]h]h]uhj9zh]rLzh)rMz}rNz(hXLED1rOzhjIzhjxhhh}rPz(h]h]h]h]h]uhKJh]rQzhXLED1rRzrSz}rTz(hjOzhjMzubaubahjJubj=)rUz}rVz(hUh}rWz(h]h]h]h]h]uhj9zh]rXzh)rYz}rZz(hXLED2r[zhjUzhjxhhh}r\z(h]h]h]h]h]uhKJh]r]zhXLED2r^zr_z}r`z(hj[zhjYzubaubahjJubj=)raz}rbz(hUh}rcz(h]h]h]h]h]uhj9zh]rdzh)rez}rfz(hXLED3rgzhjazhjxhhh}rhz(h]h]h]h]h]uhKJh]rizhXLED3rjzrkz}rlz(hjgzhjezubaubahjJubj=)rmz}rnz(hUh}roz(h]h]h]h]h]uhj9zh]rpzh)rqz}rrz(hXLED4rszhjmzhjxhhh}rtz(h]h]h]h]h]uhKJh]ruzhXLED4rvzrwz}rxz(hjszhjqzubaubahjJubehjubahjubj)ryz}rzz(hUh}r{z(h]h]h]h]h]uhj"zh]r|z(j8)r}z}r~z(hUh}rz(h]h]h]h]h]uhjyzh]rz(j=)rz}rz(hUh}rz(h]h]h]h]h]uhj}zh]rzh)rz}rz(hXTest in progressrzhjzhjxhhh}rz(h]h]h]h]h]uhKLh]rzhXTest in progressrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhj}zh]rzh)rz}rz(hXonrzhjzhjxhhh}rz(h]h]h]h]h]uhKLh]rzhXonrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhj}zh]rzh)rz}rz(hXonrzhjzhjxhhh}rz(h]h]h]h]h]uhKLh]rzhXonrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhj}zh]rzh)rz}rz(hXonrzhjzhjxhhh}rz(h]h]h]h]h]uhKLh]rzhXonrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhj}zh]rzh)rz}rz(hXonrzhjzhjxhhh}rz(h]h]h]h]h]uhKLh]rzhXonrzrz}rz(hjzhjzubaubahjJubehjubj8)rz}rz(hUh}rz(h]h]h]h]h]uhjyzh]rz(j=)rz}rz(hUh}rz(h]h]h]h]h]uhjzh]rzh)rz}rz(hXAll tests passedrzhjzhjxhhh}rz(h]h]h]h]h]uhKNh]rzhXAll tests passedrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhjzh]rzh)rz}rz(hXoffrzhjzhjxhhh}rz(h]h]h]h]h]uhKNh]rzhXoffrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhjzh]rzh)rz}rz(hXoffrzhjzhjxhhh}rz(h]h]h]h]h]uhKNh]rzhXoffrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhjzh]rzh)rz}rz(hXoffrzhjzhjxhhh}rz(h]h]h]h]h]uhKNh]rzhXoffrzrz}rz(hjzhjzubaubahjJubj=)rz}rz(hUh}rz(h]h]h]h]h]uhjzh]rzh)rz}rz(hXoffrzhjzhjxhhh}rz(h]h]h]h]h]uhKNh]rzhXoffrzrz}rz(hjzhjzubaubahjJubehjubj8)rz}rz(hUh}rz(h]h]h]h]h]uhjyzh]r{(j=)r{}r{(hUh}r{(h]h]h]h]h]uhjzh]r{h)r{}r{(hXExternal memory test failedr{hj{hjxhhh}r{(h]h]h]h]h]uhKPh]r {hXExternal memory test failedr {r {}r {(hj{hj{ubaubahjJubj=)r {}r{(hUh}r{(h]h]h]h]h]uhjzh]r{h)r{}r{(hXblinkr{hj {hjxhhh}r{(h]h]h]h]h]uhKPh]r{hXblinkr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhjzh]r{h)r{}r{(hXoffr{hj{hjxhhh}r {(h]h]h]h]h]uhKPh]r!{hXoffr"{r#{}r${(hj{hj{ubaubahjJubj=)r%{}r&{(hUh}r'{(h]h]h]h]h]uhjzh]r({h)r){}r*{(hXoffr+{hj%{hjxhhh}r,{(h]h]h]h]h]uhKPh]r-{hXoffr.{r/{}r0{(hj+{hj){ubaubahjJubj=)r1{}r2{(hUh}r3{(h]h]h]h]h]uhjzh]r4{h)r5{}r6{(hXoffr7{hj1{hjxhhh}r8{(h]h]h]h]h]uhKPh]r9{hXoffr:{r;{}r<{(hj7{hj5{ubaubahjJubehjubj8)r={}r>{(hUh}r?{(h]h]h]h]h]uhjyzh]r@{(j=)rA{}rB{(hUh}rC{(h]h]h]h]h]uhj={h]rD{h)rE{}rF{(hXI2C EEPROM read failedrG{hjA{hjxhhh}rH{(h]h]h]h]h]uhKRh]rI{hXI2C EEPROM read failedrJ{rK{}rL{(hjG{hjE{ubaubahjJubj=)rM{}rN{(hUh}rO{(h]h]h]h]h]uhj={h]rP{h)rQ{}rR{(hXoffrS{hjM{hjxhhh}rT{(h]h]h]h]h]uhKRh]rU{hXoffrV{rW{}rX{(hjS{hjQ{ubaubahjJubj=)rY{}rZ{(hUh}r[{(h]h]h]h]h]uhj={h]r\{h)r]{}r^{(hXblinkr_{hjY{hjxhhh}r`{(h]h]h]h]h]uhKRh]ra{hXblinkrb{rc{}rd{(hj_{hj]{ubaubahjJubj=)re{}rf{(hUh}rg{(h]h]h]h]h]uhj={h]rh{h)ri{}rj{(hXoffrk{hje{hjxhhh}rl{(h]h]h]h]h]uhKRh]rm{hXoffrn{ro{}rp{(hjk{hji{ubaubahjJubj=)rq{}rr{(hUh}rs{(h]h]h]h]h]uhj={h]rt{h)ru{}rv{(hXoffrw{hjq{hjxhhh}rx{(h]h]h]h]h]uhKRh]ry{hXoffrz{r{{}r|{(hjw{hju{ubaubahjJubehjubj8)r}{}r~{(hUh}r{(h]h]h]h]h]uhjyzh]r{(j=)r{}r{(hUh}r{(h]h]h]h]h]uhj}{h]r{h)r{}r{(hXEMIF16 NAND read failedr{hj{hjxhhh}r{(h]h]h]h]h]uhKTh]r{hXEMIF16 NAND read failedr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj}{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKTh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj}{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKTh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj}{h]r{h)r{}r{(hXblinkr{hj{hjxhhh}r{(h]h]h]h]h]uhKTh]r{hXblinkr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj}{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKTh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubehjubj8)r{}r{(hUh}r{(h]h]h]h]h]uhjyzh]r{(j=)r{}r{(hUh}r{(h]h]h]h]h]uhj{h]r{h)r{}r{(hXSPI NOR read failedr{hj{hjxhhh}r{(h]h]h]h]h]uhKVh]r{hXSPI NOR read failedr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKVh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKVh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj{h]r{h)r{}r{(hXoffr{hj{hjxhhh}r{(h]h]h]h]h]uhKVh]r{hXoffr{r{}r{(hj{hj{ubaubahjJubj=)r{}r{(hUh}r{(h]h]h]h]h]uhj{h]r{h)r{}r{(hXblinkr{hj{hjxhhh}r{(h]h]h]h]h]uhKVh]r{hXblinkr{r{}r{(hj{hj{ubaubahjJubehjubj8)r{}r{(hUh}r{(h]h]h]h]h]uhjyzh]r|(j=)r|}r|(hUh}r|(h]h]h]h]h]uhj{h]r|h)r|}r|(hXUART write failedr|hj|hjxhhh}r|(h]h]h]h]h]uhKXh]r |hXUART write failedr |r |}r |(hj|hj|ubaubahjJubj=)r |}r|(hUh}r|(h]h]h]h]h]uhj{h]r|h)r|}r|(hXblinkr|hj |hjxhhh}r|(h]h]h]h]h]uhKXh]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj{h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r |(h]h]h]h]h]uhKXh]r!|hXblinkr"|r#|}r$|(hj|hj|ubaubahjJubj=)r%|}r&|(hUh}r'|(h]h]h]h]h]uhj{h]r(|h)r)|}r*|(hXoffr+|hj%|hjxhhh}r,|(h]h]h]h]h]uhKXh]r-|hXoffr.|r/|}r0|(hj+|hj)|ubaubahjJubj=)r1|}r2|(hUh}r3|(h]h]h]h]h]uhj{h]r4|h)r5|}r6|(hXoffr7|hj1|hjxhhh}r8|(h]h]h]h]h]uhKXh]r9|hXoffr:|r;|}r<|(hj7|hj5|ubaubahjJubehjubj8)r=|}r>|(hUh}r?|(h]h]h]h]h]uhjyzh]r@|(j=)rA|}rB|(hUh}rC|(h]h]h]h]h]uhj=|h]rD|h)rE|}rF|(hXPLL initialization failedrG|hjA|hjxhhh}rH|(h]h]h]h]h]uhKZh]rI|hXPLL initialization failedrJ|rK|}rL|(hjG|hjE|ubaubahjJubj=)rM|}rN|(hUh}rO|(h]h]h]h]h]uhj=|h]rP|h)rQ|}rR|(hXoffrS|hjM|hjxhhh}rT|(h]h]h]h]h]uhKZh]rU|hXoffrV|rW|}rX|(hjS|hjQ|ubaubahjJubj=)rY|}rZ|(hUh}r[|(h]h]h]h]h]uhj=|h]r\|h)r]|}r^|(hXoffr_|hjY|hjxhhh}r`|(h]h]h]h]h]uhKZh]ra|hXoffrb|rc|}rd|(hj_|hj]|ubaubahjJubj=)re|}rf|(hUh}rg|(h]h]h]h]h]uhj=|h]rh|h)ri|}rj|(hXblinkrk|hje|hjxhhh}rl|(h]h]h]h]h]uhKZh]rm|hXblinkrn|ro|}rp|(hjk|hji|ubaubahjJubj=)rq|}rr|(hUh}rs|(h]h]h]h]h]uhj=|h]rt|h)ru|}rv|(hXblinkrw|hjq|hjxhhh}rx|(h]h]h]h]h]uhKZh]ry|hXblinkrz|r{|}r||(hjw|hju|ubaubahjJubehjubj8)r}|}r~|(hUh}r|(h]h]h]h]h]uhjyzh]r|(j=)r|}r|(hUh}r|(h]h]h]h]h]uhj}|h]r|h)r|}r|(hXNAND initialization failedr|hj|hjxhhh}r|(h]h]h]h]h]uhK\h]r|hXNAND initialization failedr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj}|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK\h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj}|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK\h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj}|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK\h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj}|h]r|h)r|}r|(hXoffr|hj|hjxhhh}r|(h]h]h]h]h]uhK\h]r|hXoffr|r|}r|(hj|hj|ubaubahjJubehjubj8)r|}r|(hUh}r|(h]h]h]h]h]uhjyzh]r|(j=)r|}r|(hUh}r|(h]h]h]h]h]uhj|h]r|h)r|}r|(hXNOR initialization failedr|hj|hjxhhh}r|(h]h]h]h]h]uhK^h]r|hXNOR initialization failedr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj|h]r|h)r|}r|(hXoffr|hj|hjxhhh}r|(h]h]h]h]h]uhK^h]r|hXoffr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK^h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK^h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubj=)r|}r|(hUh}r|(h]h]h]h]h]uhj|h]r|h)r|}r|(hXblinkr|hj|hjxhhh}r|(h]h]h]h]h]uhK^h]r|hXblinkr|r|}r|(hj|hj|ubaubahjJubehjubj8)r|}r|(hUh}r|(h]h]h]h]h]uhjyzh]r}(j=)r}}r}(hUh}r}(h]h]h]h]h]uhj|h]r}h)r}}r}(hXEMAC loopback failedr}hj}hjxhhh}r}(h]h]h]h]h]uhK`h]r }hXEMAC loopback failedr }r }}r }(hj}hj}ubaubahjJubj=)r }}r}(hUh}r}(h]h]h]h]h]uhj|h]r}h)r}}r}(hXonr}hj }hjxhhh}r}(h]h]h]h]h]uhK`h]r}hXonr}r}}r}(hj}hj}ubaubahjJubj=)r}}r}(hUh}r}(h]h]h]h]h]uhj|h]r}h)r}}r}(hXblinkr}hj}hjxhhh}r }(h]h]h]h]h]uhK`h]r!}hXblinkr"}r#}}r$}(hj}hj}ubaubahjJubj=)r%}}r&}(hUh}r'}(h]h]h]h]h]uhj|h]r(}h)r)}}r*}(hXblinkr+}hj%}hjxhhh}r,}(h]h]h]h]h]uhK`h]r-}hXblinkr.}r/}}r0}(hj+}hj)}ubaubahjJubj=)r1}}r2}(hUh}r3}(h]h]h]h]h]uhj|h]r4}h)r5}}r6}(hXblinkr7}hj1}hjxhhh}r8}(h]h]h]h]h]uhK`h]r9}hXblinkr:}r;}}r<}(hj7}hj5}ubaubahjJubehjubj8)r=}}r>}(hUh}r?}(h]h]h]h]h]uhjyzh]r@}(j=)rA}}rB}(hUh}rC}(h]h]h]h]h]uhj=}h]rD}h)rE}}rF}(hXOther failuresrG}hjA}hjxhhh}rH}(h]h]h]h]h]uhKbh]rI}hXOther failuresrJ}rK}}rL}(hjG}hjE}ubaubahjJubj=)rM}}rN}(hUh}rO}(h]h]h]h]h]uhj=}h]rP}h)rQ}}rR}(hXblinkrS}hjM}hjxhhh}rT}(h]h]h]h]h]uhKbh]rU}hXblinkrV}rW}}rX}(hjS}hjQ}ubaubahjJubj=)rY}}rZ}(hUh}r[}(h]h]h]h]h]uhj=}h]r\}h)r]}}r^}(hXblinkr_}hjY}hjxhhh}r`}(h]h]h]h]h]uhKbh]ra}hXblinkrb}rc}}rd}(hj_}hj]}ubaubahjJubj=)re}}rf}(hUh}rg}(h]h]h]h]h]uhj=}h]rh}h)ri}}rj}(hXblinkrk}hje}hjxhhh}rl}(h]h]h]h]h]uhKbh]rm}hXblinkrn}ro}}rp}(hjk}hji}ubaubahjJubj=)rq}}rr}(hUh}rs}(h]h]h]h]h]uhj=}h]rt}h)ru}}rv}(hXblinkrw}hjq}hjxhhh}rx}(h]h]h]h]h]uhKbh]ry}hXblinkrz}r{}}r|}(hjw}hju}ubaubahjJubehjubehjUubehjVubaubeubhXeinternal padding after source/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/POST.rst.incr}}hjYh}r~}(h]UlevelKh]h]Usourcejxh]h]UlineKeUtypejuhKfhhh]r}(h)r}}r}(hX;Content block expected for the "raw" directive; none found.h}r}(h]h]h]h]h]uhjxh]r}hX;Content block expected for the "raw" directive; none found.r}r}}r}(hUhj}ubahhubj()r}}r}(hX.. raw:: html h}r}(hhh]h]h]h]h]uhjxh]r}hX.. raw:: html r}r}}r}(hUhj}ubahj+ubeubh)r}}r}(hUhh)r}}r}(hUhKhh)r}}r}(hUhh)r}}r}(hUhhhhhhh}r}(h]h]h]h]r}U board-utilsr}ah]r}h;auhKhhh]r}(h)r}}r}(hX Board Utilsr}hj}hhhhh}r}(h]h]h]h]h]uhKhhh]r}hX Board Utilsr}r}}r}(hj}hj}ubaubj}h)r}}r}(hUhj}hhhhh}r}(h]h]h]h]r}Uuart-apploaderr}ah]r}hqauhKhhh]r}(h)r}}r}(hXUART Apploaderr}hj}hhhhh}r}(h]h]h]h]h]uhKhhh]r}hXUART Apploaderr}r}}r}(hj}hj}ubaubh)r}}r}(hXUART AppLoader is a standalone application to download the application images over UART. Check the link `UART AppLoader `__ for more details on UART AppLoader.hj}hhhhh}r}(h]h]h]h]h]uhKhhh]r}(hXhUART AppLoader is a standalone application to download the application images over UART. Check the link r}r}}r}(hXhUART AppLoader is a standalone application to download the application images over UART. Check the link hj}ubj)r}}r}(hXF`UART AppLoader `__h}r}(UnameXUART AppLoaderjX1index_Foundational_Components.html#uart-apploaderh]h]h]h]h]uhj}h]r}hXUART AppLoaderr}r}}r}(hUhj}ubahj ubhX$ for more details on UART AppLoader.r}r}}r}(hX$ for more details on UART AppLoader.hj}ubeubj)r}}r}(hUhj}hhhj h}r}(h]h]h]h]h]uhNhhh]r}j)r}}r}(hUh}r}(h]h]h]h]h]UcolsKuhj}h]r}(j)r}}r}(hUh}r}(h]h]h]h]h]UcolwidthK uhj}h]hjubj)r}}r}(hUh}r}(h]h]h]h]h]UcolwidthKbuhj}h]hjubj)r}}r}(hUh}r}(h]h]h]h]h]uhj}h]r}j8)r}}r}(hUh}r}(h]h]h]h]h]uhj}h]r}(j=)r}}r}(hUh}r}(h]h]h]h]h]uhj}h]r}j)r}}r}(hX.. Image:: ../images/E2e.jpgh}r}(UuriXrtos/../images/E2e.jpgr}h]h]h]h]j}r}U*j}sh]uhj}h]hjubahjJubj=)r}}r}(hUh}r}(h]h]h]h]h]uhj}h]r}h)r}}r}(hX_For technical support please post your questions at `http://e2e.ti.com `__.r}hj}hhhhh}r}(h]h]h]h]h]uhKh]r}(hX4For technical support please post your questions at r}r}}r}(hX4For technical support please post your questions at hj}ubj)r}}r}(hX*`http://e2e.ti.com `__h}r}(UnameXhttp://e2e.ti.comjXhttp://e2e.ti.com/h]h]h]h]h]uhj}h]r}hXhttp://e2e.ti.comr}r}}r}(hUhj}ubahj ubhX.r}}r}(hX.hj}ubeubahjJubehjubahjUubehjVubaubeubeubhhhhh}r}(h]h]h]h]r}Uuniflashr}ah]r}hPauhKhhh]r}(h)r}}r}(hXUniflashr}hj}hhhhh}r}(h]h]h]h]h]uhKhhh]r~hXUniflashr~r~}r~(hj}hj}ubaubj}h)r~}r~(hUhj}hhXRsource/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Uniflash.rst.incr~r~}r~bhhh}r ~(h]h]h]h]r ~Usupported-platformsr ~ah]r ~h0auhKhhh]r ~(h)r~}r~(hXSupported Platformsr~hj~hj~hhh}r~(h]h]h]h]h]uhKhhh]r~hXSupported Platformsr~r~}r~(hj~hj~ubaubh)r~}r~(hXBelow table shows the platforms supported by Uniflash and flash devices supported on each platform. Download mode indicates the mode of communication for downloading flash programmer to target platform.r~hj~hj~hhh}r~(h]h]h]h]h]uhKhhh]r~hXBelow table shows the platforms supported by Uniflash and flash devices supported on each platform. Download mode indicates the mode of communication for downloading flash programmer to target platform.r~r~}r~(hj~hj~ubaubj)r~}r~(hUhj~hj~hj h}r ~(h]h]h]h]h]uhNhhh]r!~j)r"~}r#~(hUh}r$~(h]h]h]h]h]UcolsK uhj~h]r%~(j)r&~}r'~(hUh}r(~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r)~}r*~(hUh}r+~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r,~}r-~(hUh}r.~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r/~}r0~(hUh}r1~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r2~}r3~(hUh}r4~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r5~}r6~(hUh}r7~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r8~}r9~(hUh}r:~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r;~}r<~(hUh}r=~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj)r>~}r?~(hUh}r@~(h]h]h]h]h]UcolwidthK uhj"~h]hjubj)rA~}rB~(hUh}rC~(h]h]h]h]h]UcolwidthKuhj"~h]hjubj3)rD~}rE~(hUh}rF~(h]h]h]h]h]uhj"~h]rG~(j8)rH~}rI~(hUh}rJ~(h]h]h]h]h]uhjD~h]rK~(j=)rL~}rM~(hUh}rN~(h]h]h]h]UmorerowsKh]uhjH~h]rO~h)rP~}rQ~(hXSOCrR~hjL~hj~hhh}rS~(h]h]h]h]h]uhK!h]rT~hXSOCrU~rV~}rW~(hjR~hjP~ubaubahjJubj=)rX~}rY~(hUh}rZ~(h]h]h]h]UmorerowsKh]uhjH~h]r[~h)r\~}r]~(hXSOC Corer^~hjX~hj~hhh}r_~(h]h]h]h]h]uhK!h]r`~hXSOC Corera~rb~}rc~(hj^~hj\~ubaubahjJubj=)rd~}re~(hUh}rf~(h]h]h]h]UmorerowsKh]uhjH~h]rg~h)rh~}ri~(hXPLATFORMrj~hjd~hj~hhh}rk~(h]h]h]h]h]uhK!h]rl~hXPLATFORMrm~rn~}ro~(hjj~hjh~ubaubahjJubj=)rp~}rq~(hUh}rr~(h]UmorecolsKh]h]h]h]uhjH~h]rs~h)rt~}ru~(hX FLASH DEVICErv~hjp~hj~hhh}rw~(h]h]h]h]h]uhK!h]rx~hX FLASH DEVICEry~rz~}r{~(hjv~hjt~ubaubahjJubj=)r|~}r}~(hUh}r~~(h]UmorecolsKh]h]h]h]uhjH~h]r~h)r~}r~(hX DOWNLOAD MODEr~hj|~hj~hhh}r~(h]h]h]h]h]uhK!h]r~hX DOWNLOAD MODEr~r~}r~(hj~hj~ubaubahjJubehjubj8)r~}r~(hUh}r~(h]h]h]h]h]uhjD~h]r~(j=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXSPIr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXSPIr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXQSPIr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXQSPIr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXOSPIr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXOSPIr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXEMMCr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXEMMCr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXUARTr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXUARTr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]UmorecolsKh]h]h]h]uhj~h]r~h)r~}r~(hXJTAGr~hj~hj~hhh}r~(h]h]h]h]h]uhK#h]r~hXJTAGr~r~}r~(hj~hj~ubaubahjJubehjubj8)r~}r~(hUh}r~(h]h]h]h]h]uhjD~h]r~(j=)r~}r~(hUh}r~(h]h]h]h]h]uhj~h]r~h)r~}r~(hX Uniflash CLIr~hj~hj~hhh}r~(h]h]h]h]h]uhK%h]r~hX Uniflash CLIr~r~}r~(hj~hj~ubaubahjJubj=)r~}r~(hUh}r~(h]h]h]h]h]uhj~h]r~h)r~}r~(hXManualr~hj~hj~hhh}r~(h]h]h]h]h]uhK%h]r~hXManualr~r~}r~(hj~hj~ubaubahjJubehjubehjubj)r~}r~(hUh}r~(h]h]h]h]h]uhj"~h]r~(j8)r~}r~(hUh}r~(h]h]h]h]h]uhj~h]r~(j=)r~}r~(hUh}r~(h]h]h]h]UmorerowsKh]uhj~h]r~h)r~}r~(hXAM335xr~hj~hj~hhh}r~(h]h]h]h]h]uhK'h]rhXAM335xrr}r(hj~hj~ubaubahjJubj=)r}r(hUh}r(h]h]h]h]UmorerowsKh]uhj~h]rh)r}r (hX Cortex-A8r hjhj~hhh}r (h]h]h]h]h]uhK'h]r hX Cortex-A8r r}r(hj hjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj~h]rh)r}r(hX AM335x GP EVMrhjhj~hhh}r(h]h]h]h]h]uhK'h]rhX AM335x GP EVMrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj~h]rh)r }r!(hXXhjhj~hhh}r"(h]h]h]h]h]uhK'h]r#hXXr$}r%(hXXhj ubaubahjJubj=)r&}r'(hUh}r((h]h]h]h]h]uhj~h]hjJubj=)r)}r*(hUh}r+(h]h]h]h]h]uhj~h]hjJubj=)r,}r-(hUh}r.(h]h]h]h]h]uhj~h]hjJubj=)r/}r0(hUh}r1(h]h]h]h]h]uhj~h]r2h)r3}r4(hXXhj/hj~hhh}r5(h]h]h]h]h]uhK'h]r6hXXr7}r8(hXXhj3ubaubahjJubj=)r9}r:(hUh}r;(h]h]h]h]h]uhj~h]r<h)r=}r>(hXXhj9hj~hhh}r?(h]h]h]h]h]uhK'h]r@hXXrA}rB(hXXhj=ubaubahjJubj=)rC}rD(hUh}rE(h]h]h]h]h]uhj~h]hjJubehjubj8)rF}rG(hUh}rH(h]h]h]h]h]uhj~h]rI(j=)rJ}rK(hUh}rL(h]h]h]h]h]uhjFh]rMh)rN}rO(hX AM335x ICEv2rPhjJhj~hhh}rQ(h]h]h]h]h]uhK)h]rRhX AM335x ICEv2rSrT}rU(hjPhjNubaubahjJubj=)rV}rW(hUh}rX(h]h]h]h]h]uhjFh]rYh)rZ}r[(hXXhjVhj~hhh}r\(h]h]h]h]h]uhK)h]r]hXXr^}r_(hXXhjZubaubahjJubj=)r`}ra(hUh}rb(h]h]h]h]h]uhjFh]hjJubj=)rc}rd(hUh}re(h]h]h]h]h]uhjFh]hjJubj=)rf}rg(hUh}rh(h]h]h]h]h]uhjFh]hjJubj=)ri}rj(hUh}rk(h]h]h]h]h]uhjFh]hjJubj=)rl}rm(hUh}rn(h]h]h]h]h]uhjFh]roh)rp}rq(hXXhjlhj~hhh}rr(h]h]h]h]h]uhK)h]rshXXrt}ru(hXXhjpubaubahjJubj=)rv}rw(hUh}rx(h]h]h]h]h]uhjFh]hjJubehjubj8)ry}rz(hUh}r{(h]h]h]h]h]uhj~h]r|(j=)r}}r~(hUh}r(h]h]h]h]h]uhjyh]rh)r}r(hX AMIC110 ICErhj}hj~hhh}r(h]h]h]h]h]uhK+h]rhX AMIC110 ICErr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK+h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK+h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK+h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjyh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXAM437xrhjhj~hhh}r(h]h]h]h]h]uhK-h]rhXAM437xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX Cortex-A9rhjhj~hhh}r(h]h]h]h]h]uhK-h]rhX Cortex-A9rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX AM437x IDKrhjhj~hhh}r(h]h]h]h]h]uhK-h]rhX AM437x IDKrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK-h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK-h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXAM571xrhjhj~hhh}r (h]h]h]h]h]uhK/h]r hXAM571xr r }r (hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX Cortex-A15rhjhj~hhh}r(h]h]h]h]h]uhK/h]rhX Cortex-A15rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX AM571x IDKr hjhj~hhh}r!(h]h]h]h]h]uhK/h]r"hX AM571x IDKr#r$}r%(hj hjubaubahjJubj=)r&}r'(hUh}r((h]h]h]h]h]uhjh]hjJubj=)r)}r*(hUh}r+(h]h]h]h]h]uhjh]r,h)r-}r.(hXXhj)hj~hhh}r/(h]h]h]h]h]uhK/h]r0hXXr1}r2(hXXhj-ubaubahjJubj=)r3}r4(hUh}r5(h]h]h]h]h]uhjh]hjJubj=)r6}r7(hUh}r8(h]h]h]h]h]uhjh]hjJubj=)r9}r:(hUh}r;(h]h]h]h]h]uhjh]hjJubj=)r<}r=(hUh}r>(h]h]h]h]h]uhjh]r?h)r@}rA(hXXhj<hj~hhh}rB(h]h]h]h]h]uhK/h]rChXXrD}rE(hXXhj@ubaubahjJubj=)rF}rG(hUh}rH(h]h]h]h]h]uhjh]hjJubehjubj8)rI}rJ(hUh}rK(h]h]h]h]h]uhj~h]rL(j=)rM}rN(hUh}rO(h]h]h]h]h]uhjIh]rPh)rQ}rR(hXAM572xrShjMhj~hhh}rT(h]h]h]h]h]uhK1h]rUhXAM572xrVrW}rX(hjShjQubaubahjJubj=)rY}rZ(hUh}r[(h]h]h]h]h]uhjIh]r\h)r]}r^(hX Cortex-A15r_hjYhj~hhh}r`(h]h]h]h]h]uhK1h]rahX Cortex-A15rbrc}rd(hj_hj]ubaubahjJubj=)re}rf(hUh}rg(h]h]h]h]h]uhjIh]rhh)ri}rj(hX AM572x IDKrkhjehj~hhh}rl(h]h]h]h]h]uhK1h]rmhX AM572x IDKrnro}rp(hjkhjiubaubahjJubj=)rq}rr(hUh}rs(h]h]h]h]h]uhjIh]hjJubj=)rt}ru(hUh}rv(h]h]h]h]h]uhjIh]rwh)rx}ry(hXXhjthj~hhh}rz(h]h]h]h]h]uhK1h]r{hXXr|}r}(hXXhjxubaubahjJubj=)r~}r(hUh}r(h]h]h]h]h]uhjIh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjIh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjIh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjIh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK1h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjIh]hjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXAM574xrhjhj~hhh}r(h]h]h]h]h]uhK3h]rhXAM574xrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX Cortex-A15rhjhj~hhh}r(h]h]h]h]h]uhK3h]rhX Cortex-A15rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX AM574x IDKrhjhj~hhh}r(h]h]h]h]h]uhK3h]rhX AM574x IDKrr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]r€h)rÀ}rĀ(hXXhjhj~hhh}rŀ(h]h]h]h]h]uhK3h]rƀhXXrǀ}rȀ(hXXhjÀubaubahjJubj=)rɀ}rʀ(hUh}rˀ(h]h]h]h]h]uhjh]hjJubj=)r̀}r̀(hUh}r΀(h]h]h]h]h]uhjh]hjJubj=)rπ}rЀ(hUh}rр(h]h]h]h]h]uhjh]hjJubj=)rҀ}rӀ(hUh}rԀ(h]h]h]h]h]uhjh]rՀh)rր}r׀(hXXhjҀhj~hhh}r؀(h]h]h]h]h]uhK3h]rـhXXrڀ}rۀ(hXXhjրubaubahjJubj=)r܀}r݀(hUh}rހ(h]h]h]h]h]uhjh]hjJubehjubj8)r߀}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]UmorerowsKh]uhj߀h]rh)r}r(hXK2Grhjhj~hhh}r(h]h]h]h]h]uhK5h]rhXK2Grr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]UmorerowsKh]uhj߀h]rh)r}r(hX Cortex-A15rhjhj~hhh}r(h]h]h]h]h]uhK5h]rhX Cortex-A15rr}r(hjhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj߀h]rh)r}r(hX K2G GP EVMrhjhj~hhh}r(h]h]h]h]h]uhK5h]rhX K2G GP EVMrr}r(hjhjubaubahjJubj=)r}r(hUh}r (h]h]h]h]h]uhj߀h]hjJubj=)r }r (hUh}r (h]h]h]h]h]uhj߀h]r h)r}r(hXXhj hj~hhh}r(h]h]h]h]h]uhK5h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj߀h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj߀h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj߀h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj߀h]r h)r!}r"(hXXhjhj~hhh}r#(h]h]h]h]h]uhK5h]r$hXXr%}r&(hXXhj!ubaubahjJubj=)r'}r((hUh}r)(h]h]h]h]h]uhj߀h]hjJubehjubj8)r*}r+(hUh}r,(h]h]h]h]h]uhj~h]r-(j=)r.}r/(hUh}r0(h]h]h]h]h]uhj*h]r1h)r2}r3(hXK2G ICEr4hj.hj~hhh}r5(h]h]h]h]h]uhK7h]r6hXK2G ICEr7r8}r9(hj4hj2ubaubahjJubj=)r:}r;(hUh}r<(h]h]h]h]h]uhj*h]hjJubj=)r=}r>(hUh}r?(h]h]h]h]h]uhj*h]r@h)rA}rB(hXXhj=hj~hhh}rC(h]h]h]h]h]uhK7h]rDhXXrE}rF(hXXhjAubaubahjJubj=)rG}rH(hUh}rI(h]h]h]h]h]uhj*h]hjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhj*h]hjJubj=)rM}rN(hUh}rO(h]h]h]h]h]uhj*h]hjJubj=)rP}rQ(hUh}rR(h]h]h]h]h]uhj*h]rSh)rT}rU(hXXhjPhj~hhh}rV(h]h]h]h]h]uhK7h]rWhXXrX}rY(hXXhjTubaubahjJubj=)rZ}r[(hUh}r\(h]h]h]h]h]uhj*h]hjJubehjubj8)r]}r^(hUh}r_(h]h]h]h]h]uhj~h]r`(j=)ra}rb(hUh}rc(h]h]h]h]UmorerowsKh]uhj]h]rdh)re}rf(hXAM65XXrghjahj~hhh}rh(h]h]h]h]h]uhK9h]rihXAM65XXrjrk}rl(hjghjeubaubahjJubj=)rm}rn(hUh}ro(h]h]h]h]UmorerowsKh]uhj]h]rph)rq}rr(hX Cortex-R5rshjmhj~hhh}rt(h]h]h]h]h]uhK9h]ruhX Cortex-R5rvrw}rx(hjshjqubaubahjJubj=)ry}rz(hUh}r{(h]h]h]h]h]uhj]h]r|h)r}}r~(hX AM65xx EVMrhjyhj~hhh}r(h]h]h]h]h]uhK9h]rhX AM65xx EVMrr}r(hjhj}ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK9h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK9h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK9h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhj]h]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK9h]rhXXr}r(hXXhjubaubahjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX AM65xx IDKrhjhj~hhh}r(h]h]h]h]h]uhK;h]rhX AM65xx IDKrÁrā}rŁ(hjhjubaubahjJubj=)rƁ}rǁ(hUh}rȁ(h]h]h]h]h]uhjh]hjJubj=)rɁ}rʁ(hUh}rˁ(h]h]h]h]h]uhjh]hjJubj=)ŕ}ŕ(hUh}r΁(h]h]h]h]h]uhjh]rρh)rЁ}rс(hXXhj́hj~hhh}rҁ(h]h]h]h]h]uhK;h]rӁhXXrԁ}rՁ(hXXhjЁubaubahjJubj=)rց}rׁ(hUh}r؁(h]h]h]h]h]uhjh]rفh)rځ}rہ(hXXhjցhj~hhh}r܁(h]h]h]h]h]uhK;h]r݁hXXrށ}r߁(hXXhjځubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK;h]rhXXr}r(hXXhjubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]hjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXXhjhj~hhh}r(h]h]h]h]h]uhK;h]rhXXr}r(hXXhjubaubahjJubehjubj8)r}r(hUh}r(h]h]h]h]h]uhj~h]r(j=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXJ721Erhjhj~hhh}r(h]h]h]h]h]uhK=h]rhXJ721Err}r(hjhjubaubahjJubj=)r}r(hUh}r (h]h]h]h]h]uhjh]r h)r }r (hX Cortex-R5r hjhj~hhh}r(h]h]h]h]h]uhK=h]rhX Cortex-R5rr}r(hj hj ubaubahjJubj=)r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hX J721E EVMrhjhj~hhh}r(h]h]h]h]h]uhK=h]rhX J721E EVMrr}r(hjhjubaubahjJubj=)r}r (hUh}r!(h]h]h]h]h]uhjh]hjJubj=)r"}r#(hUh}r$(h]h]h]h]h]uhjh]r%h)r&}r'(hXXhj"hj~hhh}r((h]h]h]h]h]uhK=h]r)hXXr*}r+(hXXhj&ubaubahjJubj=)r,}r-(hUh}r.(h]h]h]h]h]uhjh]r/h)r0}r1(hXXhj,hj~hhh}r2(h]h]h]h]h]uhK=h]r3hXXr4}r5(hXXhj0ubaubahjJubj=)r6}r7(hUh}r8(h]h]h]h]h]uhjh]r9h)r:}r;(hXXhj6hj~hhh}r<(h]h]h]h]h]uhK=h]r=hXXr>}r?(hXXhj:ubaubahjJubj=)r@}rA(hUh}rB(h]h]h]h]h]uhjh]rCh)rD}rE(hXXhj@hj~hhh}rF(h]h]h]h]h]uhK=h]rGhXXrH}rI(hXXhjDubaubahjJubj=)rJ}rK(hUh}rL(h]h]h]h]h]uhjh]hjJubj=)rM}rN(hUh}rO(h]h]h]h]h]uhjh]rPh)rQ}rR(hXXhjMhj~hhh}rS(h]h]h]h]h]uhK=h]rThXXrU}rV(hXXhjQubaubahjJubehjubehjUubehjVubaubh)rW}rX(hXwhere,rYhj~hj~hhh}rZ(h]h]h]h]h]uhKAhhh]r[hXwhere,r\r]}r^(hjYhjWubaubj[)r_}r`(hUhj~hNhj^h}ra(h]h]h]h]h]uhNhhh]rbj)rc}rd(hUh}re(jX-h]h]h]h]h]uhj_h]rfj)rg}rh(hXX : Supported h}ri(h]h]h]h]h]uhjch]rjh)rk}rl(hXX : Supportedrmhjghj~hhh}rn(h]h]h]h]h]uhKCh]rohXX : Supportedrprq}rr(hjmhjkubaubahjubahjubaubj)rs}rt(hXFor the platforms which support both UART and JTAG mode, UART is the recommended mode for downloading flash programmer. JTAG mode is supported along with UART for debug purpose.hj~hj~hjh}ru(h]h]h]h]h]uhNhhh]rvh)rw}rx(hXFor the platforms which support both UART and JTAG mode, UART is the recommended mode for downloading flash programmer. JTAG mode is supported along with UART for debug purpose.ryhjshj~hhh}rz(h]h]h]h]h]uhKEh]r{hXFor the platforms which support both UART and JTAG mode, UART is the recommended mode for downloading flash programmer. JTAG mode is supported along with UART for debug purpose.r|r}}r~(hjyhjwubaubaubeubh)r}r(hUhj}hj~hhh}r(h]h]h]h]rUgetting-started-with-uniflashrah]rh\auhKJhhh]r(h)r}r(hXGetting Started with Uniflashrhjhj~hhh}r(h]h]h]h]h]uhKJhhh]rhXGetting Started with Uniflashrr}r(hjhjubaubh)r}r(hUhjhj~hhh}r(h]h]h]h]rU downloadsrah]rhauhKMhhh]r(h)r}r(hX Downloadsrhjhj~hhh}r(h]h]h]h]h]uhKMhhh]rhX Downloadsrr}r(hjhjubaubh)r}r(hX`Latest version of Uniflash can be downloaded `here `__rhjhj~hhh}r(h]h]h]h]h]uhKNhhh]r(hX-Latest version of Uniflash can be downloaded rr}r(hX-Latest version of Uniflash can be downloaded hjubj)r}r(hX3`here `__h}r(UnameXherejX(http://www.ti.com/tool/download/UNIFLASHh]h]h]h]h]uhjh]rhXhererr}r(hUhjubahj ubeubeubh)r}r(hUhjhj~hhh}r(h]h]h]h]rUcommand-optionsrah]rhauhKRhhh]r(h)r}r(hXCommand Optionsrhjhj~hhh}r(h]h]h]h]h]uhKRhhh]rhXCommand Optionsrr}r(hjhjubaubh)r}r(hXUniflash CLI supports set of commands and configuration flags which are provided through dslite script. Run the help command as described below to see all the options supported by Uniflash.rhjhj~hhh}r(h]h]h]h]h]uhKShhh]rhXUniflash CLI supports set of commands and configuration flags which are provided through dslite script. Run the help command as described below to see all the options supported by Uniflash.rr}r‚(hjhjubaubh)rÂ}rĂ(hXFor Windows ::hjhj~hhh}rł(h]h]h]h]h]uhKVhhh]rƂhX For WindowsrǂrȂ}rɂ(hX For WindowshjÂubaubj()rʂ}r˂(hXE# cd # dslite.bat --mode processors -hhjhj~hj+h}r̂(hhh]h]h]h]h]uhM%hhh]r͂hXE# cd # dslite.bat --mode processors -hr΂rς}rЂ(hUhjʂubaubh)rт}r҂(hX For Linuxrӂhjhj~hhh}rԂ(h]h]h]h]h]uhK^hhh]rՂhX For Linuxrւrׂ}r؂(hjӂhjтubaubj()rق}rڂ(hXK# cd # sudo ./dslite.sh --mode processors -hhjhj~hj+h}rۂ(hhh]h]h]h]h]uhM&hhh]r܂hXK# cd # sudo ./dslite.sh --mode processors -hr݂rނ}r߂(hUhjقubaubh)r}r(hXPThis will display help menu. Following is the sample output for help command. ::hjhj~hhh}r(h]h]h]h]h]uhKghhh]rhXMThis will display help menu. Following is the sample output for help command.rr}r(hXMThis will display help menu. Following is the sample output for help command.hjubaubj()r}r(hXyFor more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Displaying Help.. Usage: dslite.bat --mode processors -c -f -d -i -e -o Device_Type: 0 - NAND 1 - SPI 2 - QSPI 3 - OSPI 4 - eMMC 5 - HyperFlash 6 - UFS Image_Type: 0 - Flash 1 - MLO 2 - Uboot 3 - UImage 4 - Firmware 5 - Custom Image erase_length:Length in Bytes Note: File Path should not be specified for Flash Erase commandhjhj~hj+h}r(hhh]h]h]h]h]uhM&hhh]rhXyFor more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Displaying Help.. Usage: dslite.bat --mode processors -c -f -d -i -e -o Device_Type: 0 - NAND 1 - SPI 2 - QSPI 3 - OSPI 4 - eMMC 5 - HyperFlash 6 - UFS Image_Type: 0 - Flash 1 - MLO 2 - Uboot 3 - UImage 4 - Firmware 5 - Custom Image erase_length:Length in Bytes Note: File Path should not be specified for Flash Erase commandrr}r(hUhjubaubj)r}r(hXmOffset option(-o) expects hexadecimal value by default. The offset value can be provided with or without "0x"hjhj~hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hXmOffset option(-o) expects hexadecimal value by default. The offset value can be provided with or without "0x"rhjhj~hhh}r(h]h]h]h]h]uhKh]rhXmOffset option(-o) expects hexadecimal value by default. The offset value can be provided with or without "0x"rr}r(hjhjubaubaubeubh)r}r(hUhjhj~hhh}r(h]h]h]h]rUuniflash-execution-stepsrah]rh,auhKhhh]r(h)r}r(hXUniflash Execution Stepsrhjhj~hhh}r(h]h]h]h]h]uhKhhh]rhXUniflash Execution Stepsrr}r(hjhjubaubh)r }r (hXUniflash provides two modes of communication for downloading the flash programmer - UART and JTAG. In JTAG mode Uniflash commnad-line interface is supported for most of the platforms. Manual loading of the flash programmer through CCS is required for few cases. Below diagram shows the execution steps for flashing the application images based on the Uniflash supported mode for downloading the flash programmer.r hjhj~hhh}r (h]h]h]h]h]uhKhhh]r hXUniflash provides two modes of communication for downloading the flash programmer - UART and JTAG. In JTAG mode Uniflash commnad-line interface is supported for most of the platforms. Manual loading of the flash programmer through CCS is required for few cases. Below diagram shows the execution steps for flashing the application images based on the Uniflash supported mode for downloading the flash programmer.rr}r(hj hj ubaubj)r}r(hXk.. Image:: ../images/Uniflash_Execution_Steps.png :width: 650px :align: center :height: 1000px hjhj~hjh}r(h]UalignXcenterUuriX+rtos/../images/Uniflash_Execution_Steps.pngrh]h]UwidthX650pxh]j}rU*jsh]UheightX1000pxuhNhhh]ubh)r}r(hXCheck the `Supported Platforms `__ for details of the mode of communication supported for downloading the flash programmer on each platform.hjhj~hhh}r(h]h]h]h]h]uhKhhh]r(hX Check the rr}r(hX Check the hjubj)r}r(hX>`Supported Platforms `__h}r(UnameXSupported PlatformsjX$index_board.html#supported-platformsh]h]h]h]h]uhjh]r hXSupported Platformsr!r"}r#(hUhjubahj ubhXj for details of the mode of communication supported for downloading the flash programmer on each platform.r$r%}r&(hXj for details of the mode of communication supported for downloading the flash programmer on each platform.hjubeubeubeubh)r'}r((hUhj}hj~hhh}r)(h]h]h]h]r*Udownloading-flash-programmerr+ah]r,hdauhKhhh]r-(h)r.}r/(hXDownloading Flash Programmerr0hj'hj~hhh}r1(h]h]h]h]h]uhKhhh]r2hXDownloading Flash Programmerr3r4}r5(hj0hj.ubaubh)r6}r7(hUhj'hj~hhh}r8(h]h]h]h]r9U uart-loadr:ah]r;hauhKhhh]r<(h)r=}r>(hX UART Loadr?hj6hj~hhh}r@(h]h]h]h]h]uhKhhh]rAhX UART LoadrBrC}rD(hj?hj=ubaubh)rE}rF(hX@Follow below steps for downloading the flash programer over UARTrGhj6hj~hhh}rH(h]h]h]h]h]uhKhhh]rIhX@Follow below steps for downloading the flash programer over UARTrJrK}rL(hjGhjEubaubj[)rM}rN(hUhj6hNhj^h}rO(h]h]h]h]h]uhNhhh]rPj)rQ}rR(hUh}rS(jX-h]h]h]h]h]uhjMh]rT(j)rU}rV(hX7Confgure boot mode of the target platform to UART boot.rWh}rX(h]h]h]h]h]uhjQh]rYh)rZ}r[(hjWhjUhj~hhh}r\(h]h]h]h]h]uhKh]r]hX7Confgure boot mode of the target platform to UART boot.r^r_}r`(hjWhjZubaubahjubj)ra}rb(hX:Connect UART serial port of the target platform to host PCrch}rd(h]h]h]h]h]uhjQh]reh)rf}rg(hjchjahj~hhh}rh(h]h]h]h]h]uhKh]rihX:Connect UART serial port of the target platform to host PCrjrk}rl(hjchjfubaubahjubj)rm}rn(hXPower cycle the target platformroh}rp(h]h]h]h]h]uhjQh]rqh)rr}rs(hjohjmhj~hhh}rt(h]h]h]h]h]uhKh]ruhXPower cycle the target platformrvrw}rx(hjohjrubaubahjubj)ry}rz(hXjOpen a serial console application (Minicom, TeraTerm etc) on host PC and configure it for 115200 baud 8n1.r{h}r|(h]h]h]h]h]uhjQh]r}h)r~}r(hj{hjyhj~hhh}r(h]h]h]h]h]uhKh]rhXjOpen a serial console application (Minicom, TeraTerm etc) on host PC and configure it for 115200 baud 8n1.rr}r(hj{hj~ubaubahjubj)r}r(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.h}r(h]h]h]h]h]uhjQh]rh)r}r(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.rhjhj~hhh}r(h]h]h]h]h]uhKh]rhXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.rr}r(hjhjubaubahjubj)r}r(hX5Close all the serial console applications on host PC.rh}r(h]h]h]h]h]uhjQh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhKh]rhX5Close all the serial console applications on host PC.rr}r(hjhjubaubahjubj)r}r(hXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rh}r(h]h]h]h]h]uhjQh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhKh]rhXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rr}r(hjhjubaubahjubj)r}r(hX<Run below commands on the Host PC from Uniflash root folder h}r(h]h]h]h]h]uhjQh]rh)r}r(hX;Run below commands on the Host PC from Uniflash root folderrhjhj~hhh}r(h]h]h]h]h]uhKh]rhX;Run below commands on the Host PC from Uniflash root folderrr}r(hjhjubaubahjubehjubaubh)r}r(hXFor Windows ::hj6hj~hhh}r(h]h]h]h]h]uhKhhh]rhX For Windowsrr}r(hX For Windowshjubaubj()r}r(hX# cd # dslite.bat --mode processors -c -f -i 0 Example: # dslite.bat --mode processors -c COM10 -f \processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0hj6hj~hj+h}r(hhh]h]h]h]h]uhM]&hhh]rhX# cd # dslite.bat --mode processors -c -f -i 0 Example: # dslite.bat --mode processors -c COM10 -f \processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0rr}rƒ(hUhjubaubh)rÃ}ră(hX For LinuxrŃhj6hj~hhh}rƃ(h]h]h]h]h]uhKhhh]rǃhX For LinuxrȃrɃ}rʃ(hjŃhjÃubaubj()r˃}r̃(hX(# cd # sudo ./dslite.sh --mode processors -c -f -i 0 Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -f /processors/FlashWriter/am65xx_evm/uart_am65xx_evm_flash_programmer.tiimage -i 0hj6hj~hj+h}r̓(hhh]h]h]h]h]uhMg&hhh]r΃hX(# cd # sudo ./dslite.sh --mode processors -c -f -i 0 Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -f /processors/FlashWriter/am65xx_evm/uart_am65xx_evm_flash_programmer.tiimage -i 0rσrЃ}rу(hUhj˃ubaubj)r҃}rӃ(hX]Specifying the image type with -i option is mandatory while downloading the flash programmer.rԃhj6hj~hjh}rՃ(h]h]h]h]h]uhNhhh]rփh)r׃}r؃(hjԃhj҃hj~hhh}rك(h]h]h]h]h]uhKh]rڃhX]Specifying the image type with -i option is mandatory while downloading the flash programmer.rۃr܃}r݃(hjԃhj׃ubaubaubh)rރ}r߃(hXUniflash CLI shows the progress of file transfer on the command console. Following is the sample output for downloading Flash programmer over UART.rhj6hj~hhh}r(h]h]h]h]h]uhKhhh]rhXUniflash CLI shows the progress of file transfer on the command console. Following is the sample output for downloading Flash programmer over UART.rr}r(hjhjރubaubj()r}r(hXC:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -f C:\ti\uniflash_5.2.0\processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\uniflash_5.2.0\processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Downloading Flash Programmer.. Enabling SysFw transfer!!! Transferring File of size 182621 bytes File Transfer complete! Header Transfer complete Transferring System Firmware.. Transferring File of size 263083 bytes File Transfer complete!hj6hj~hj+h}r(hhh]h]h]h]h]uhMs&hhh]rhXC:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -f C:\ti\uniflash_5.2.0\processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\uniflash_5.2.0\processors\FlashWriter\am65xx_evm\uart_am65xx_evm_flash_programmer.tiimage -i 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Downloading Flash Programmer.. Enabling SysFw transfer!!! Transferring File of size 182621 bytes File Transfer complete! Header Transfer complete Transferring System Firmware.. Transferring File of size 263083 bytes File Transfer complete!rr}r(hUhjubaubj1)r}r(hUhj6hj~hj4h}r(h]h]h]h]h]uhKhhh]r(j7)r}r(hX- After successful download of the flash programmer, `Program the flash device `__ or `Erase the flash device `__ by following the steps described in the corresponding secions.j:Khjhj~hhh}r(h]h]h]h]h]uhKhhh]r(hX5- After successful download of the flash programmer, rr}r(hX5- After successful download of the flash programmer, hjubj)r}r(hXL`Program the flash device `__h}r(UnameXProgram the flash devicejX-index_board.html#programming-the-flash-deviceh]h]h]h]h]uhjh]rhXProgram the flash devicerr}r(hUhjubahj ubhX or rr}r(hX or hjubj)r}r(hXF`Erase the flash device `__h}r(UnameXErase the flash devicejX)index_board.html#erasing-the-flash-deviceh]h]h]h]h]uhjh]rhXErase the flash devicerr}r(hUhjubahj ubhXA by following the steps described in the corresponding secions.r r }r (hXA by following the steps described in the corresponding secions.hjubeubj7)r }r (hUj:Khjhj~hhh}r(h]h]h]h]h]uhKhhh]ubeubeubh)r}r(hUhj'hj~hhh}r(h]h]h]h]rU jtag-loadrah]rhYauhKhhh]r(h)r}r(hX JTAG Loadrhjhj~hhh}r(h]h]h]h]h]uhKhhh]rhX JTAG Loadrr}r(hjhjubaubh)r}r(hUhjhj~hhh}r (h]h]h]h]r!Uuniflash-cli-jtag-loadr"ah]r#hpauhKhhh]r$(h)r%}r&(hXUniflash CLI JTAG Loadr'hjhj~hhh}r((h]h]h]h]h]uhKhhh]r)hXUniflash CLI JTAG Loadr*r+}r,(hj'hj%ubaubh)r-}r.(hXSFollow below steps for downloading the flash programer over JTAG using Uniflash CLIr/hjhj~hhh}r0(h]h]h]h]h]uhKhhh]r1hXSFollow below steps for downloading the flash programer over JTAG using Uniflash CLIr2r3}r4(hj/hj-ubaubj[)r5}r6(hUhjhNhj^h}r7(h]h]h]h]h]uhNhhh]r8j)r9}r:(hUh}r;(jX-h]h]h]h]h]uhj5h]r<(j)r=}r>(hXEConfgure boot mode of the target platform to 'No Boot' or 'JTAG mode'r?h}r@(h]h]h]h]h]uhj9h]rAh)rB}rC(hj?hj=hj~hhh}rD(h]h]h]h]h]uhKh]rEhXEConfgure boot mode of the target platform to 'No Boot' or 'JTAG mode'rFrG}rH(hj?hjBubaubahjubj)rI}rJ(hX:Connect UART serial port of the target platform to host PCrKh}rL(h]h]h]h]h]uhj9h]rMh)rN}rO(hjKhjIhj~hhh}rP(h]h]h]h]h]uhKh]rQhX:Connect UART serial port of the target platform to host PCrRrS}rT(hjKhjNubaubahjubj)rU}rV(hXPower cycle the target platformrWh}rX(h]h]h]h]h]uhj9h]rYh)rZ}r[(hjWhjUhj~hhh}r\(h]h]h]h]h]uhKh]r]hXPower cycle the target platformr^r_}r`(hjWhjZubaubahjubj)ra}rb(hXcPrepare the CCS target configuration file for the platform under test and JTAG emulator being used.rch}rd(h]h]h]h]h]uhj9h]reh)rf}rg(hjchjahj~hhh}rh(h]h]h]h]h]uhKh]rihXcPrepare the CCS target configuration file for the platform under test and JTAG emulator being used.rjrk}rl(hjchjfubaubahjubj)rm}rn(hX:Connect the JTAG port of the board to host PC running CCS.roh}rp(h]h]h]h]h]uhj9h]rqh)rr}rs(hjohjmhj~hhh}rt(h]h]h]h]h]uhKh]ruhX:Connect the JTAG port of the board to host PC running CCS.rvrw}rx(hjohjrubaubahjubj)ry}rz(hX=Run below commands on the Host PC from Uniflash root folder h}r{(h]h]h]h]h]uhj9h]r|h)r}}r~(hX;Run below commands on the Host PC from Uniflash root folderrhjyhj~hhh}r(h]h]h]h]h]uhKh]rhX;Run below commands on the Host PC from Uniflash root folderrr}r(hjhj}ubaubahjubehjubaubh)r}r(hX For Windowsrhjhj~hhh}r(h]h]h]h]h]uhKhhh]rhX For Windowsrr}r(hjhjubaubj()r}r(hX# cd # dslite.bat --mode load --config= -f -n Example: # dslite.bat --mode load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f C:\ti\uniflash_5.2.0\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8hjhj~hj+h}r(hhh]h]h]h]h]uhM&hhh]rhX# cd # dslite.bat --mode load --config= -f -n Example: # dslite.bat --mode load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f C:\ti\uniflash_5.2.0\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8rr}r(hUhjubaubh)r}r(hX For Linuxrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhX For Linuxrr}r(hjhjubaubj()r}r(hX# cd # sudo ./dslite.sh --mode load --config= -f -n Example: # sudo ./dslite.sh --mode load --config=/home/ti/CCSTargetConfigurations/idkAM574x.ccxml -f /home/user/ti/uniflash_5.2.0/processors/FlashWriter/idkAM574x/uart_idkAM574x_flash_programmer.out -n 8hjhj~hj+h}r(hhh]h]h]h]h]uhM&hhh]rhX# cd # sudo ./dslite.sh --mode load --config= -f -n Example: # sudo ./dslite.sh --mode load --config=/home/ti/CCSTargetConfigurations/idkAM574x.ccxml -f /home/user/ti/uniflash_5.2.0/processors/FlashWriter/idkAM574x/uart_idkAM574x_flash_programmer.out -n 8rr}r(hUhjubaubh)r}r(hXsUniflash CLI shows the progress of file transfer on the command console. Following is the sample output on Windows.rhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhXsUniflash CLI shows the progress of file transfer on the command console. Following is the sample output on Windows.rr}r(hjhjubaubj()r}r(hXC:\ti\uniflash_5.2.0>dslite.bat --mode load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f C:\ti\uniflash_5.2.0\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8 Executing the following command: > "C:\ti\uniflash_5.2.0\deskdb\content\TICloudAgent\win\ccs_base\DebugServer\bin\DSLite" load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f .\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8 For more details and examples, please refer to the UniFlash Quick Start guide. DSLite version 9.2.0.1723 Configuring Debugger (may take a few minutes on first launch)... Initializing Register Database... Initializing: IcePick_D Executing Startup Scripts: IcePick_D Initializing: ARM9_ICONT1 Executing Startup Scripts: ARM9_ICONT1 Initializing: ARM9_ICONT2 Executing Startup Scripts: ARM9_ICONT2 Initializing: CS_DAP_IPU_1_C0 Executing Startup Scripts: CS_DAP_IPU_1_C0 Initializing: Cortex_M4_IPU1_C0 Executing Startup Scripts: Cortex_M4_IPU1_C0 GEL: Cortex_M4_IPU1_C0: GEL Output: --->>> AM574x Cortex M4 Startup Sequence In Progress... <<<--- GEL: Cortex_M4_IPU1_C0: GEL Output: --->>> AM574x Cortex M4 Startup Sequence DONE! <<<--- . . . . . . . . . GEL: CortexA15_0: GEL Output: --->>> IVAHD Initialization is DONE! ... <<<--- GEL: CortexA15_0: GEL Output: --->>> PRUSS 1 and 2 Initialization is in progress ... <<<--- GEL: CortexA15_0: GEL Output: --->>> PRUSS 1 and 2 Initialization is in complete ... <<<--- Loading Program: .\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out Preparing ... .text: 0 of 72000 at 0x40330074 .text: 32752 of 72000 at 0x40330074: 15% .text: 65504 of 72000 at 0x40330074: 30% Finished: 30% Setting PC to entry point.: 30% Running... Successhjhj~hj+h}r(hhh]h]h]h]h]uhM&hhh]rhXC:\ti\uniflash_5.2.0>dslite.bat --mode load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f C:\ti\uniflash_5.2.0\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8 Executing the following command: > "C:\ti\uniflash_5.2.0\deskdb\content\TICloudAgent\win\ccs_base\DebugServer\bin\DSLite" load --config=C:\Users\username\ti\CCSTargetConfigurations\idkAM574x.ccxml -f .\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out -n 8 For more details and examples, please refer to the UniFlash Quick Start guide. DSLite version 9.2.0.1723 Configuring Debugger (may take a few minutes on first launch)... Initializing Register Database... Initializing: IcePick_D Executing Startup Scripts: IcePick_D Initializing: ARM9_ICONT1 Executing Startup Scripts: ARM9_ICONT1 Initializing: ARM9_ICONT2 Executing Startup Scripts: ARM9_ICONT2 Initializing: CS_DAP_IPU_1_C0 Executing Startup Scripts: CS_DAP_IPU_1_C0 Initializing: Cortex_M4_IPU1_C0 Executing Startup Scripts: Cortex_M4_IPU1_C0 GEL: Cortex_M4_IPU1_C0: GEL Output: --->>> AM574x Cortex M4 Startup Sequence In Progress... <<<--- GEL: Cortex_M4_IPU1_C0: GEL Output: --->>> AM574x Cortex M4 Startup Sequence DONE! <<<--- . . . . . . . . . GEL: CortexA15_0: GEL Output: --->>> IVAHD Initialization is DONE! ... <<<--- GEL: CortexA15_0: GEL Output: --->>> PRUSS 1 and 2 Initialization is in progress ... <<<--- GEL: CortexA15_0: GEL Output: --->>> PRUSS 1 and 2 Initialization is in complete ... <<<--- Loading Program: .\processors\FlashWriter\idkAM574x\uart_idkAM574x_flash_programmer.out Preparing ... .text: 0 of 72000 at 0x40330074 .text: 32752 of 72000 at 0x40330074: 15% .text: 65504 of 72000 at 0x40330074: 30% Finished: 30% Setting PC to entry point.: 30% Running... Successrr}r(hUhjubaubj1)r}r(hUhjhj~hj4h}r(h]h]h]h]h]uhM<hhh]rj7)r}r(hUj:Khjhj~hhh}r(h]h]h]h]h]uhKhhh]ubaubj[)r}r(hUhjhNhj^h}r(h]h]h]h]h]uhNhhh]rj)r}r(hUh}r(jX-h]h]h]h]h]uhjh]r(j)r}r„(hXhOpen serial console application (Ex: Minicom, TeraTerm) on host PC and configure it for 115200 baud 8n1.rÄh}rĄ(h]h]h]h]h]uhjh]rńh)rƄ}rDŽ(hjÄhjhj~hhh}rȄ(h]h]h]h]h]uhM>h]rɄhXhOpen serial console application (Ex: Minicom, TeraTerm) on host PC and configure it for 115200 baud 8n1.rʄr˄}r̄(hjÄhjƄubaubahjubj)r̈́}r΄(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.h}rτ(h]h]h]h]h]uhjh]rЄh)rф}r҄(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.rӄhj̈́hj~hhh}rԄ(h]h]h]h]h]uhM?h]rՄhXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.rքrׄ}r؄(hjӄhjфubaubahjubj)rل}rڄ(hX5Close all the serial console applications on host PC.rۄh}r܄(h]h]h]h]h]uhjh]r݄h)rބ}r߄(hjۄhjلhj~hhh}r(h]h]h]h]h]uhMAh]rhX5Close all the serial console applications on host PC.rr}r(hjۄhjބubaubahjubj)r}r(hXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rh}r(h]h]h]h]h]uhjh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMBh]rhXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rr}r(hjhjubaubahjubj)r}r(hXAfter successful download of the flash programmer, `Program the flash device `__ or `Erase the flash device `__ by following the steps described in the corresponding secions.h}r(h]h]h]h]h]uhjh]rh)r}r(hXAfter successful download of the flash programmer, `Program the flash device `__ or `Erase the flash device `__ by following the steps described in the corresponding secions.hjhj~hhh}r(h]h]h]h]h]uhMCh]r(hX3After successful download of the flash programmer, rr}r(hX3After successful download of the flash programmer, hjubj)r}r(hXL`Program the flash device `__h}r(UnameXProgram the flash devicejX-index_board.html#programming-the-flash-deviceh]h]h]h]h]uhjh]rhXProgram the flash devicerr}r(hUhjubahj ubhX or rr}r(hX or hjubj)r}r(hXF`Erase the flash device `__h}r(UnameXErase the flash devicejX)index_board.html#erasing-the-flash-deviceh]h]h]h]h]uhjh]r hXErase the flash devicer r }r (hUhjubahj ubhX? by following the steps described in the corresponding secions.r r}r(hX? by following the steps described in the corresponding secions.hjubeubahjubehjubaubj1)r}r(hUhjhj~hj4h}r(h]h]h]h]h]uhMFhhh]rj7)r}r(hUj:Khjhj~hhh}r(h]h]h]h]h]uhKhhh]ubaubeubh)r}r(hUhjhj~hhh}r(h]h]h]h]rUmanual-jtag-loadrah]rh(auhMIhhh]r(h)r}r(hXManual JTAG Loadr hjhj~hhh}r!(h]h]h]h]h]uhMIhhh]r"hXManual JTAG Loadr#r$}r%(hj hjubaubh)r&}r'(hXIFollow below steps for downloading the flash programer over JTAG manuallyr(hjhj~hhh}r)(h]h]h]h]h]uhMJhhh]r*hXIFollow below steps for downloading the flash programer over JTAG manuallyr+r,}r-(hj(hj&ubaubj[)r.}r/(hUhjhNhj^h}r0(h]h]h]h]h]uhNhhh]r1j)r2}r3(hUh}r4(jX-h]h]h]h]h]uhj.h]r5(j)r6}r7(hXEConfgure boot mode of the target platform to 'No Boot' or 'JTAG mode'r8h}r9(h]h]h]h]h]uhj2h]r:h)r;}r<(hj8hj6hj~hhh}r=(h]h]h]h]h]uhMLh]r>hXEConfgure boot mode of the target platform to 'No Boot' or 'JTAG mode'r?r@}rA(hj8hj;ubaubahjubj)rB}rC(hX:Connect UART serial port of the target platform to host PCrDh}rE(h]h]h]h]h]uhj2h]rFh)rG}rH(hjDhjBhj~hhh}rI(h]h]h]h]h]uhMMh]rJhX:Connect UART serial port of the target platform to host PCrKrL}rM(hjDhjGubaubahjubj)rN}rO(hXbSetup the CCS target configuration file for the platform under test and JTAG emulator being used. h}rP(h]h]h]h]h]uhj2h]rQh)rR}rS(hXaSetup the CCS target configuration file for the platform under test and JTAG emulator being used.rThjNhj~hhh}rU(h]h]h]h]h]uhMNh]rVhXaSetup the CCS target configuration file for the platform under test and JTAG emulator being used.rWrX}rY(hjThjRubaubahjubehjubaubj)rZ}r[(hXRefer the `Platform Specific Information `__ for more details on additional setup needed for CCS target configuration.hjhj~hjh}r\(h]h]h]h]h]uhNhhh]r]h)r^}r_(hXRefer the `Platform Specific Information `__ for more details on additional setup needed for CCS target configuration.hjZhj~hhh}r`(h]h]h]h]h]uhMPh]ra(hX Refer the rbrc}rd(hX Refer the hj^ubj)re}rf(hXR`Platform Specific Information `__h}rg(UnameXPlatform Specific InformationjX.index_board.html#platform-specific-informationh]h]h]h]h]uhj^h]rhhXPlatform Specific Informationrirj}rk(hUhjeubahj ubhXJ for more details on additional setup needed for CCS target configuration.rlrm}rn(hXJ for more details on additional setup needed for CCS target configuration.hj^ubeubaubj1)ro}rp(hUhjhj~hj4h}rq(h]h]h]h]h]uhMRhhh]rrj7)rs}rt(hUj:Khjohj~hhh}ru(h]h]h]h]h]uhKhhh]ubaubj[)rv}rw(hUhjhNhj^h}rx(h]h]h]h]h]uhNhhh]ryj)rz}r{(hUh}r|(jX-h]h]h]h]h]uhjvh]r}(j)r~}r(hX:Connect the JTAG port of the board to host PC running CCS.rh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhj~hj~hhh}r(h]h]h]h]h]uhMTh]rhX:Connect the JTAG port of the board to host PC running CCS.rr}r(hjhjubaubahjubj)r}r(hXPower ON the boardrh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMUh]rhXPower ON the boardrr}r(hjhjubaubahjubj)r}r(hX-Launch the target configuration file from CCSrh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMVh]rhX-Launch the target configuration file from CCSrr}r(hjhjubaubahjubj)r}r(hXFConnect to the target SoC core on which flash programmer is supported.rh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMWh]rhXFConnect to the target SoC core on which flash programmer is supported.rr}r(hjhjubaubahjubj)r}r(hX(Load and run the flash programmer binaryrh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMXh]rhX(Load and run the flash programmer binaryrr}r(hjhjubaubahjubj)r}r(hXjOpen a serial console application (Minicom, TeraTerm etc) on host PC and configure it for 115200 baud 8n1.rh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMYh]r…hXjOpen a serial console application (Minicom, TeraTerm etc) on host PC and configure it for 115200 baud 8n1.rÅrą}rŅ(hjhjubaubahjubj)rƅ}rDž(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.h}rȅ(h]h]h]h]h]uhjzh]rɅh)rʅ}r˅(hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.r̅hjƅhj~hhh}rͅ(h]h]h]h]h]uhMZh]r΅hXMake a note of the COM port number on which character 'C' is getting printed. This COM port number shall be used in all the command inputs to Uniflash host utility.rυrЅ}rх(hj̅hjʅubaubahjubj)r҅}rӅ(hX5Close all the serial console applications on host PC.rԅh}rՅ(h]h]h]h]h]uhjzh]rօh)rׅ}r؅(hjԅhj҅hj~hhh}rم(h]h]h]h]h]uhM\h]rڅhX5Close all the serial console applications on host PC.rۅr܅}r݅(hjԅhjׅubaubahjubj)rޅ}r߅(hXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rh}r(h]h]h]h]h]uhjzh]rh)r}r(hjhjޅhj~hhh}r(h]h]h]h]h]uhM]h]rhXIf the host PC is running Windows OS, disconnect the serial console cable from the board and reconnet before proceeding to next steps.rr}r(hjhjubaubahjubj)r}r(hXAfter successful download of the flash programmer, `Program the flash device `__ or `Erase the flash device `__ by following the steps described in the corresponding secions.h}r(h]h]h]h]h]uhjzh]rh)r}r(hXAfter successful download of the flash programmer, `Program the flash device `__ or `Erase the flash device `__ by following the steps described in the corresponding secions.hjhj~hhh}r(h]h]h]h]h]uhM^h]r(hX3After successful download of the flash programmer, rr}r(hX3After successful download of the flash programmer, hjubj)r}r(hXL`Program the flash device `__h}r(UnameXProgram the flash devicejX-index_board.html#programming-the-flash-deviceh]h]h]h]h]uhjh]rhXProgram the flash devicerr}r(hUhjubahj ubhX or rr}r(hX or hjubj)r}r(hXF`Erase the flash device `__h}r(UnameXErase the flash devicejX)index_board.html#erasing-the-flash-deviceh]h]h]h]h]uhjh]rhXErase the flash devicerr}r(hUhjubahj ubhX? by following the steps described in the corresponding secions.rr}r(hX? by following the steps described in the corresponding secions.hjubeubahjubehjubaubj1)r }r (hUhjhj~hj4h}r (h]h]h]h]h]uhMahhh]r j7)r }r(hUj:Khj hj~hhh}r(h]h]h]h]h]uhKhhh]ubaubeubeubeubh)r}r(hUhj}hj~hhh}r(h]h]h]h]rUprogramming-the-flash-devicerah]rh]auhMehhh]r(h)r}r(hXProgramming the Flash Devicerhjhj~hhh}r(h]h]h]h]h]uhMehhh]rhXProgramming the Flash Devicerr}r(hjhjubaubh)r}r (hXDownload the flash programmer using the steps described in section `Downloading Flash Programmer `__ before start programming application binaries to flash device.hjhj~hhh}r!(h]h]h]h]h]uhMfhhh]r"(hXCDownload the flash programmer using the steps described in section r#r$}r%(hXCDownload the flash programmer using the steps described in section hjubj)r&}r'(hXP`Downloading Flash Programmer `__h}r((UnameXDownloading Flash ProgrammerjX-index_board.html#downloading-flash-programmerh]h]h]h]h]uhjh]r)hXDownloading Flash Programmerr*r+}r,(hUhj&ubahj ubhX? before start programming application binaries to flash device.r-r.}r/(hX? before start programming application binaries to flash device.hjubeubh)r0}r1(hXwOnce the Flash Programmer is loaded and executed, use the following commands to program binaries onto the Flash Device.r2hjhj~hhh}r3(h]h]h]h]h]uhMihhh]r4hXwOnce the Flash Programmer is loaded and executed, use the following commands to program binaries onto the Flash Device.r5r6}r7(hj2hj0ubaubh)r8}r9(hXFor Windows ::hjhj~hhh}r:(h]h]h]h]h]uhMkhhh]r;hX For Windowsr<r=}r>(hX For Windowshj8ubaubj()r?}r@(hXC# cd # dslite.bat --mode processors -c -f -d -o Example: # dslite.bat --mode processors -c COM10 -f C:\ti\pdk_am65xx_\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0hjhj~hj+h}rA(hhh]h]h]h]h]uhM'hhh]rBhXC# cd # dslite.bat --mode processors -c -f -d -o Example: # dslite.bat --mode processors -c COM10 -f C:\ti\pdk_am65xx_\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0rCrD}rE(hUhj?ubaubh)rF}rG(hX For Linux ::hjhj~hhh}rH(h]h]h]h]h]uhMuhhh]rIhX For LinuxrJrK}rL(hX For LinuxhjFubaubj()rM}rN(hX^# cd # sudo ./dslite.sh --mode processors -c -f -d -o Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -f /home/user/ti/pdk_am65xx_/packages/ti/boot/sbl/binary/am65xx_evm/ospi/bin/sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0hjhj~hj+h}rO(hhh]h]h]h]h]uhM'hhh]rPhX^# cd # sudo ./dslite.sh --mode processors -c -f -d -o Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -f /home/user/ti/pdk_am65xx_/packages/ti/boot/sbl/binary/am65xx_evm/ospi/bin/sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0rQrR}rS(hUhjMubaubh)rT}rU(hXpRefer to `Uniflash Command Options `__ for more details on command parameters.rVhjhj~hhh}rW(h]h]h]h]h]uhMhhh]rX(hX Refer to rYrZ}r[(hX Refer to hjTubj)r\}r](hX?`Uniflash Command Options `__h}r^(UnameXUniflash Command OptionsjX index_board.html#command-optionsh]h]h]h]h]uhjTh]r_hXUniflash Command Optionsr`ra}rb(hUhj\ubahj ubhX( for more details on command parameters.rcrd}re(hX( for more details on command parameters.hjTubeubh)rf}rg(hXHUniflash CLI shows the progress of file transfer on the command console.rhhjhj~hhh}ri(h]h]h]h]h]uhMhhh]rjhXHUniflash CLI shows the progress of file transfer on the command console.rkrl}rm(hjhhjfubaubj)rn}ro(hXMultiple images like bootloader, system firmware and application etc should be flashed to get the application booting from the boot device. Refer to the `FAQ section `__ for additional references.hjhj~hjh}rp(h]h]h]h]h]uhNhhh]rqh)rr}rs(hXMultiple images like bootloader, system firmware and application etc should be flashed to get the application booting from the boot device. Refer to the `FAQ section `__ for additional references.hjnhj~hhh}rt(h]h]h]h]h]uhMh]ru(hXMultiple images like bootloader, system firmware and application etc should be flashed to get the application booting from the boot device. Refer to the rvrw}rx(hXMultiple images like bootloader, system firmware and application etc should be flashed to get the application booting from the boot device. Refer to the hjrubj)ry}rz(hX/`FAQ section `__h}r{(UnameX FAQ sectionjXindex_board.html#uniflash-faqh]h]h]h]h]uhjrh]r|hX FAQ sectionr}r~}r(hUhjyubahj ubhX for additional references.rr}r(hX for additional references.hjrubeubaubh)r}r(hXWFollowing is the sample output for flashing RTOS application images on AM65xx platform.rhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhXWFollowing is the sample output for flashing RTOS application images on AM65xx platform.rr}r(hjhjubaubj()r}r(hXG C:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 155614 bytes Flash Programming Success! C:\ti\uniflash_5.2.0\dslite --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\drv\sciclient\soc\V0\sysfw.bin -d 3 -o 40000 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\drv\sciclient\soc\V0\sysfw.bin -d 3 -o 40000 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 263083 bytes Flash Programming Success! C:\ti\uniflash_5.2.0\dslite --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\board\bin\am65xx_evm\sd\armv8\led_TEST -d 3 -o A0000 > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\board\bin\am65xx_evm\sd\armv8\led_TEST -d 3 -o A0000 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 72360 bytes Flash Programming Success!hjhj~hj+h}r(hhh]h]h]h]h]uhM/'hhh]rhXG C:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\boot\sbl\binary\am65xx_evm\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 155614 bytes Flash Programming Success! C:\ti\uniflash_5.2.0\dslite --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\drv\sciclient\soc\V0\sysfw.bin -d 3 -o 40000 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\drv\sciclient\soc\V0\sysfw.bin -d 3 -o 40000 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 263083 bytes Flash Programming Success! C:\ti\uniflash_5.2.0\dslite --mode processors -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\board\bin\am65xx_evm\sd\armv8\led_TEST -d 3 -o A0000 > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -f C:\ti\pdk_am65xx_1_0_6\packages\ti\board\bin\am65xx_evm\sd\armv8\led_TEST -d 3 -o A0000 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Transferring the Image to Flash Programmer.. Transferring Header Information.. Header Transfer Complete! Flashing Image of size 72360 bytes Flash Programming Success!rr}r(hUhjubaubeubh)r}r(hUhj}hj~hhh}r(h]h]h]h]rUerasing-the-flash-devicerah]rh=auhMhhh]r(h)r}r(hXErasing the Flash Devicerhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhXErasing the Flash Devicerr}r(hjhjubaubh)r}r(hXDownload the flash programmer using the steps described in section `Downloading Flash Programmer `__ before start executing erase command.hjhj~hhh}r(h]h]h]h]h]uhMhhh]r(hXCDownload the flash programmer using the steps described in section rr}r(hXCDownload the flash programmer using the steps described in section hjubj)r}r(hXP`Downloading Flash Programmer `__h}r(UnameXDownloading Flash ProgrammerjX-index_board.html#downloading-flash-programmerh]h]h]h]h]uhjh]rhXDownloading Flash Programmerrr}r(hUhjubahj ubhX& before start executing erase command.rr}r(hX& before start executing erase command.hjubeubh)r}r(hX}Once the Flash programmer is loaded and executed, use the following commands to erase the Flash Device on the target platformrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhX}Once the Flash programmer is loaded and executed, use the following commands to erase the Flash Device on the target platformrr}r(hjhjubaubh)r}r(hX For Windowsrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhX For Windowsrr}r(hjhjubaubj()r†}rÆ(hX# cd # dslite.bat --mode processors -c -e -d -o Example: # dslite.bat --mode processors -c COM10 -e 10000 -d 3 -o 20000hjhj~hj+h}rĆ(hhh]h]h]h]h]uhMy'hhh]rņhX# cd # dslite.bat --mode processors -c -e -d -o Example: # dslite.bat --mode processors -c COM10 -e 10000 -d 3 -o 20000rƆrdž}rȆ(hUhj†ubaubh)rɆ}rʆ(hX For Linuxrˆhjhj~hhh}r̆(h]h]h]h]h]uhMhhh]r͆hX For LinuxrΆrφ}rІ(hjˆhjɆubaubj()rц}r҆(hX# cd # sudo ./dslite.sh --mode processors -c -e -d -o Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -e 10000 -d 3 -o 20000hjhj~hj+h}rӆ(hhh]h]h]h]h]uhM'hhh]rԆhX# cd # sudo ./dslite.sh --mode processors -c -e -d -o Example: # sudo ./dslite.sh --mode processors -c /dev/ttyUSB1 -e 10000 -d 3 -o 20000rՆrֆ}r׆(hUhjцubaubh)r؆}rن(hXpThe application will output the status to the console on the Host PC. Following is the sample output on Windows.rچhjhj~hhh}rۆ(h]h]h]h]h]uhMhhh]r܆hXpThe application will output the status to the console on the Host PC. Following is the sample output on Windows.r݆rކ}r߆(hjچhj؆ubaubj()r}r(hXC:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -e 10000 -d 3 -o 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -e 10000 -d 3 -o 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Erasing Flash.... Transferring Header information.. Header Transfer Complete!! Flash Erase Success!hjhj~hj+h}r(hhh]h]h]h]h]uhM'hhh]rhXC:\ti\uniflash_5.2.0>dslite.bat --mode processors -c COM10 -e 10000 -d 3 -o 0 Executing the following command: > C:\ti\uniflash_5.2.0\processors\ProcessorSDKSerialFlash.exe -c COM10 -e 10000 -d 3 -o 0 For more details and examples, please refer to the UniFlash Quick Start guide. ---------------------------------------------------------------------------- ProcessorSDKSerialFlash CLI Tool Copyright (C) 2017-2019 Texas Instruments Incorporated - http://www.ti.com/ Version 1.2.0.0 ---------------------------------------------------------------------------- Erasing Flash.... Transferring Header information.. Header Transfer Complete!! Flash Erase Success!rr}r(hUhjubaubeubh)r}r(hUhj}hj~hhh}r(h]h]h]h]rUplatform-specific-informationrah]rhFauhMhhh]r(h)r}r(hXPlatform Specific Informationrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhXPlatform Specific Informationrr}r(hjhjubaubh)r}r(hUhjhj~hhh}r(h]h]h]h]rUam335xrah]rhauhMhhh]r(h)r}r(hXAM335xrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhXAM335xrr}r(hjhjubaubj[)r}r(hUhjhNhj^h}r(h]h]h]h]h]uhNhhh]rj)r }r (hUh}r (jX-h]h]h]h]h]uhjh]r j)r }r(hXhMake sure the Profile Selection switch on AM335x GP EVM is set to Profile#2 while programming SPI flash h}r(h]h]h]h]h]uhj h]rh)r}r(hXgMake sure the Profile Selection switch on AM335x GP EVM is set to Profile#2 while programming SPI flashrhj hj~hhh}r(h]h]h]h]h]uhMh]rhXgMake sure the Profile Selection switch on AM335x GP EVM is set to Profile#2 while programming SPI flashrr}r(hjhjubaubahjubahjubaubeubh)r}r(hUhjhj~hhh}r(h]h]h]h]rU am65xx-j721erah]rhauhMhhh]r(h)r }r!(hX AM65xx/J721Er"hjhj~hhh}r#(h]h]h]h]h]uhMhhh]r$hX AM65xx/J721Er%r&}r'(hj"hj ubaubj[)r(}r)(hUhjhNhj^h}r*(h]h]h]h]h]uhNhhh]r+j)r,}r-(hUh}r.(jX-h]h]h]h]h]uhj(h]r/(j)r0}r1(hXFlash programmer requires system firmware while downloading the flash programmer through UART on AM65xx and J721E platforms. Uniflash host CLI loads the system firmware automatically while loading the flash programmer on these platforms. Flash programmer and system firmware binary (sysfw.bin) should be kept in the same folder for succesful downloading of flash programmer and system firmware. h}r2(h]h]h]h]h]uhj,h]r3h)r4}r5(hXFlash programmer requires system firmware while downloading the flash programmer through UART on AM65xx and J721E platforms. Uniflash host CLI loads the system firmware automatically while loading the flash programmer on these platforms. Flash programmer and system firmware binary (sysfw.bin) should be kept in the same folder for succesful downloading of flash programmer and system firmware.r6hj0hj~hhh}r7(h]h]h]h]h]uhMh]r8hXFlash programmer requires system firmware while downloading the flash programmer through UART on AM65xx and J721E platforms. Uniflash host CLI loads the system firmware automatically while loading the flash programmer on these platforms. Flash programmer and system firmware binary (sysfw.bin) should be kept in the same folder for succesful downloading of flash programmer and system firmware.r9r:}r;(hj6hj4ubaubahjubj)r<}r=(hXSystem firmware should be loaded through CCS script while loading the flash programmer through JTAG. Refer the EVM CCS Setup Documentation section below for details of setting up the CCS target configuration with system firmware download. - `AM65xx `__ - `J721E `__ h}r>(h]h]h]h]h]uhj,h]r?(h)r@}rA(hXSystem firmware should be loaded through CCS script while loading the flash programmer through JTAG. Refer the EVM CCS Setup Documentation section below for details of setting up the CCS target configuration with system firmware download.rBhj<hj~hhh}rC(h]h]h]h]h]uhM h]rDhXSystem firmware should be loaded through CCS script while loading the flash programmer through JTAG. Refer the EVM CCS Setup Documentation section below for details of setting up the CCS target configuration with system firmware download.rErF}rG(hjBhj@ubaubj[)rH}rI(hUh}rJ(h]h]h]h]h]uhj<h]rKj)rL}rM(hUh}rN(jX-h]h]h]h]h]uhjHh]rO(j)rP}rQ(hXX`AM65xx `__rRh}rS(h]h]h]h]h]uhjLh]rTh)rU}rV(hjRhjPhj~hhh}rW(h]h]h]h]h]uhM h]rXj)rY}rZ(hjRh}r[(UnameXAM65xxjXKindex_how_to_guides.html#advanced-am65x-debug-setup-with-dmsc-firmware-loadh]h]h]h]h]uhjUh]r\hXAM65xxr]r^}r_(hUhjYubahj ubaubahjubj)r`}ra(hX`J721E `__ h}rb(h]h]h]h]h]uhjLh]rch)rd}re(hX`J721E `__rfhj`hj~hhh}rg(h]h]h]h]h]uhM h]rhj)ri}rj(hjfh}rk(UnameXJ721EjXhttp://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/psdk_rtos_auto/docs/user_guide/ccs_setup_j721e.htmlh]h]h]h]h]uhjdh]rlhXJ721Ermrn}ro(hUhjiubahj ubaubahjubehjubahj^ubehjubehjubaubeubh)rp}rq(hUhKhjhj~hhh}rr(h]rsjah]h]h]rtUid278ruah]uhMhhh]rv(h)rw}rx(hXJ721Eryhjphj~hhh}rz(h]h]h]h]h]uhMhhh]r{hXJ721Er|r}}r~(hjyhjwubaubj[)r}r(hUhjphNhj^h}r(h]h]h]h]h]uhNhhh]rj)r}r(hUh}r(jX-h]h]h]h]h]uhjh]rj)r}r(hXnSet the dip switch SW3.1 on CP board to OFF while running the flash programmer for OSPI flashing on J721E EVM h}r(h]h]h]h]h]uhjh]rh)r}r(hXmSet the dip switch SW3.1 on CP board to OFF while running the flash programmer for OSPI flashing on J721E EVMrhjhj~hhh}r(h]h]h]h]h]uhMh]rhXmSet the dip switch SW3.1 on CP board to OFF while running the flash programmer for OSPI flashing on J721E EVMrr}r(hjhjubaubahjubahjubaubeubeubh)r}r(hUhj}hj~hhh}r(h]h]h]h]rU uniflash-faqrah]rhBauhMhhh]r(h)r}r(hX Uniflash FAQrhjhj~hhh}r(h]h]h]h]h]uhMhhh]rhX Uniflash FAQrr}r(hjhjubaubjY )r}r(hUhjhj~hj\ h}r(h]h]h]h]h]uhNhhh]r(j_ )r}r(hX# How do I confirm my HW setup is proper for image download over UART? Board should be configured for UART boot mode for downloading the images over UART. RoM bootloader sends a character 'C' at regular intervals on serial port in UART boot mode. Connect a serial console application on host PC to the UART port used for booting and veirfy the character 'C' is getting displayed, which confirms the HW setup needed for image download over UART is proper. hjhj~hjb h}r(h]h]h]h]h]uhMh]r(je )r}r(hXG# How do I confirm my HW setup is proper for image download over UART?rhjhj~hji h}r(h]h]h]h]h]uhMh]rhXG# How do I confirm my HW setup is proper for image download over UART?rr}r(hjhjubaubjo )r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXBoard should be configured for UART boot mode for downloading the images over UART. RoM bootloader sends a character 'C' at regular intervals on serial port in UART boot mode. Connect a serial console application on host PC to the UART port used for booting and veirfy the character 'C' is getting displayed, which confirms the HW setup needed for image download over UART is proper.rhjhj~hhh}r(h]h]h]h]h]uhMh]rhXBoard should be configured for UART boot mode for downloading the images over UART. RoM bootloader sends a character 'C' at regular intervals on serial port in UART boot mode. Connect a serial console application on host PC to the UART port used for booting and veirfy the character 'C' is getting displayed, which confirms the HW setup needed for image download over UART is proper.rr}r(hjhjubaubahj ubeubj_ )r}r(hX# How do I verify which COM number to be used for Uniflash image download? There may be multiple UART ports supported on the board but Uniflash image download happens on one specific UART port which is meant for UART boot. RoM bootloader and Uniflash flash programmer sends a character 'C' at regular intervals on the UART port used for image download. COM port number to be used for image download can be identified by checking for the character 'C' displayed on host PC. hjhj~hjb h}r(h]h]h]h]h]uhM hhh]r(je )r‡}rÇ(hXK# How do I verify which COM number to be used for Uniflash image download?rćhjhj~hji h}rŇ(h]h]h]h]h]uhM h]rƇhXK# How do I verify which COM number to be used for Uniflash image download?rLJrȇ}rɇ(hjćhj‡ubaubjo )rʇ}rˇ(hUh}ṙ(h]h]h]h]h]uhjh]r͇h)r·}rχ(hXThere may be multiple UART ports supported on the board but Uniflash image download happens on one specific UART port which is meant for UART boot. RoM bootloader and Uniflash flash programmer sends a character 'C' at regular intervals on the UART port used for image download. COM port number to be used for image download can be identified by checking for the character 'C' displayed on host PC.rЇhjʇhj~hhh}rч(h]h]h]h]h]uhMh]r҇hXThere may be multiple UART ports supported on the board but Uniflash image download happens on one specific UART port which is meant for UART boot. RoM bootloader and Uniflash flash programmer sends a character 'C' at regular intervals on the UART port used for image download. COM port number to be used for image download can be identified by checking for the character 'C' displayed on host PC.rӇrԇ}rՇ(hjЇhj·ubaubahj ubeubj_ )rև}rׇ(hX# I am running Uniflash on Windows host and Uniflash CLI is not able to open COM port. What could be the reason? Some of the serial console application like TeraTerm on Windows changes the COM port settings which causes the COM port open failure from Uniflash. Disconnect the UART cable and reconnet before running the Uniflash commands everytime a serial console application is used to access the COM port on Windows. hjhj~hjb h}r؇(h]h]h]h]h]uhM%hhh]rه(je )rڇ}rۇ(hXq# I am running Uniflash on Windows host and Uniflash CLI is not able to open COM port. What could be the reason?r܇hjևhj~hji h}r݇(h]h]h]h]h]uhM%h]rއhXq# I am running Uniflash on Windows host and Uniflash CLI is not able to open COM port. What could be the reason?r߇r}r(hj܇hjڇubaubjo )r}r(hUh}r(h]h]h]h]h]uhjևh]rh)r}r(hX1Some of the serial console application like TeraTerm on Windows changes the COM port settings which causes the COM port open failure from Uniflash. Disconnect the UART cable and reconnet before running the Uniflash commands everytime a serial console application is used to access the COM port on Windows.rhjhj~hhh}r(h]h]h]h]h]uhM#h]rhX1Some of the serial console application like TeraTerm on Windows changes the COM port settings which causes the COM port open failure from Uniflash. Disconnect the UART cable and reconnet before running the Uniflash commands everytime a serial console application is used to access the COM port on Windows.rr}r(hjhjubaubahj ubeubj_ )r}r(hX # Should the flash device be erased using Uniflash erase command before flashing the images? No, Uniflash Erase command is provided to explicity erase the images on the flash device. Uniflash flash programmer erases the flash by default before flashing the images. hjhj~hjb h}r(h]h]h]h]h]uhM)hhh]r(je )r}r(hX]# Should the flash device be erased using Uniflash erase command before flashing the images?rhjhj~hji h}r(h]h]h]h]h]uhM)h]rhX]# Should the flash device be erased using Uniflash erase command before flashing the images?rr}r(hjhjubaubjo )r}r(hUh}r(h]h]h]h]h]uhjh]rh)r}r(hXNo, Uniflash Erase command is provided to explicity erase the images on the flash device. Uniflash flash programmer erases the flash by default before flashing the images.rhjhj~hhh}r(h]h]h]h]h]uhM(h]rhXNo, Uniflash Erase command is provided to explicity erase the images on the flash device. Uniflash flash programmer erases the flash by default before flashing the images.rr}r(hjhjubaubahj ubeubj_ )r}r(hX)# What all the images that need to be flashed to get my application boot? It depends on the SoC flamily and OS being used by the application. In general, a secondary bootloader, any configuration files needed for system configuration and an application image are the minimum images that need to be flashed for booting to happen. Refer below documentation for more details * `RTOS `__ * `Linux `__ hjhj~hjb h}r(h]h]h]h]h]uhM1hhh]r (je )r }r (hXJ# What all the images that need to be flashed to get my application boot?r hjhj~hji h}r (h]h]h]h]h]uhM1h]rhXJ# What all the images that need to be flashed to get my application boot?rr}r(hj hj ubaubjo )r}r(hUh}r(h]h]h]h]h]uhjh]r(h)r}r(hX)It depends on the SoC flamily and OS being used by the application. In general, a secondary bootloader, any configuration files needed for system configuration and an application image are the minimum images that need to be flashed for booting to happen. Refer below documentation for more detailsrhjhj~hhh}r(h]h]h]h]h]uhM,h]rhX)It depends on the SoC flamily and OS being used by the application. In general, a secondary bootloader, any configuration files needed for system configuration and an application image are the minimum images that need to be flashed for booting to happen. Refer below documentation for more detailsrr}r(hjhjubaubj[)r}r(hUh}r (h]h]h]h]h]uhjh]r!j)r"}r#(hUh}r$(jX*h]h]h]h]h]uhjh]r%(j)r&}r'(hX2`RTOS `__r(h}r)(h]h]h]h]h]uhj"h]r*h)r+}r,(hj(hj&hj~hhh}r-(h]h]h]h]h]uhM0h]r.j)r/}r0(hj(h}r1(UnameXRTOSjX'index_Foundational_Components.html#booth]h]h]h]h]uhj+h]r2hXRTOSr3r4}r5(hUhj/ubahj ubaubahjubj)r6}r7(hX{`Linux `__ h}r8(h]h]h]h]h]uhj"h]r9h)r:}r;(hXz`Linux `__r<hj6hj~hhh}r=(h]h]h]h]h]uhM1h]r>j)r?}r@(hj<h}rA(UnameXLinuxjXnhttp://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_U-Boot.html#u-booth]h]h]h]h]uhj:h]rBhXLinuxrCrD}rE(hUhj?ubahj ubaubahjubehjubahj^ubehj ubeubeubeubh)rF}rG(hUhj}hj~hhh}rH(h]h]h]h]rIUrebuilding-board-utilsrJah]rKhLauhM4hhh]rL(h)rM}rN(hXRebuilding Board-utilsrOhjFhj~hhh}rP(h]h]h]h]h]uhM4hhh]rQhXRebuilding Board-utilsrRrS}rT(hjOhjMubaubj)rU}rV(hUhjFhj~hjh}rW(jX-h]h]h]h]h]uhM5hhh]rX(j)rY}rZ(hX^Use the following commands to rebuild Uniflash and Apploader supported as part of board utils hjUhj~hjh}r[(h]h]h]h]h]uhNhhh]r\h)r]}r^(hX]Use the following commands to rebuild Uniflash and Apploader supported as part of board utilsr_hjYhj~hhh}r`(h]h]h]h]h]uhM5h]rahX]Use the following commands to rebuild Uniflash and Apploader supported as part of board utilsrbrc}rd(hj_hj]ubaubaubj)re}rf(hX For WindowsrghjUhj~hjh}rh(h]h]h]h]h]uhNhhh]rih)rj}rk(hjghjehj~hhh}rl(h]h]h]h]h]uhM7h]rmhX For Windowsrnro}rp(hjghjjubaubaubeubj()rq}rr(hX\# cd /packages # pdksetupenv.bat # cd ti\board\utils # gmake clean # gmakehjFhj~hj+h}rs(hhh]h]h]h]h]uhM'hhh]rthX\# cd /packages # pdksetupenv.bat # cd ti\board\utils # gmake clean # gmakerurv}rw(hUhjqubaubj)rx}ry(hUhjFhj~hjh}rz(jX-h]h]h]h]h]uhM@hhh]r{j)r|}r}(hX For Linuxr~hjxhj~hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hj~hj|hj~hhh}r(h]h]h]h]h]uhM@h]rhX For Linuxrr}r(hj~hjubaubaubaubj()r}r(hX[# cd /packages # ./pdksetupenv.sh # cd ti/board/utils # make clean # makehjFhj~hj+h}r(hhh]h]h]h]h]uhM'hhh]rhX[# cd /packages # ./pdksetupenv.sh # cd ti/board/utils # make clean # makerr}r(hUhjubaubj)r}r(hUhjFhj~hjh}r(jX-h]h]h]h]h]uhMIhhh]r(j)r}r(hXxUniflash binaries will be created under the folder /packages/ti/board/utils/uniflash/bin//rhjhj~hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hjhjhj~hhh}r(h]h]h]h]h]uhMIh]rhXxUniflash binaries will be created under the folder /packages/ti/board/utils/uniflash/bin//rr}r(hjhjubaubaubj)r}r(hXApploader binaries will be created under the folder /packages/ti/board/utils/uartAppLoader/bin// hjhj~hjh}r(h]h]h]h]h]uhNhhh]rh)r}r(hX~Apploader binaries will be created under the folder /packages/ti/board/utils/uartAppLoader/bin//rhjhj~hhh}r(h]h]h]h]h]uhMJh]rhX~Apploader binaries will be created under the folder /packages/ti/board/utils/uartAppLoader/bin//rr}r(hjhjubaubaubeubeubeubhj~hhh}r(h]rhah]h]h]rUid277rah]uhKhhh]r(h)r}r(hX Introductionrhj}hj~hhh}r(h]h]h]h]h]uhKhhh]rhX Introductionrr}r(hjhjubaubh)r}r(hXUniflash is an Unified Flashing tool which provides utilities for flashing the application software images to non-removable flash devices on TI hardware platforms.rhj}hj~hhh}r(h]h]h]h]h]uhKhhh]rhXUniflash is an Unified Flashing tool which provides utilities for flashing the application software images to non-removable flash devices on TI hardware platforms.rr}r(hjhjubaubh)r}r(hX;Uniflash for TI processors platform includes two componentsrˆhj}hj~hhh}rÈ(h]h]h]h]h]uhKhhh]rĈhX;Uniflash for TI processors platform includes two componentsrňrƈ}rLj(hjˆhjubaubj[)rȈ}rɈ(hUhj}hNhj^h}rʈ(h]h]h]h]h]uhNhhh]rˈj)r̈}r͈(hUh}rΈ(jX-h]h]h]h]h]uhjȈh]rψ(j)rЈ}rш(hXFlash Programmerr҈h}rӈ(h]h]h]h]h]uhj̈h]rԈh)rՈ}rֈ(hj҈hjЈhj~hhh}r׈(h]h]h]h]h]uhK h]r؈hXFlash Programmerrوrڈ}rۈ(hj҈hjՈubaubahjubj)r܈}r݈(hX Host utility h}rވ(h]h]h]h]h]uhj̈h]r߈h)r}r(hX Host utilityrhj܈hj~hhh}r(h]h]h]h]h]uhK h]rhX Host utilityrr}r(hjhjubaubahjubehjubaubh)r}r(hXFlash porgrammer runs on target platform which takes care of receiving the images from Uniflash host utility and programming them onto flash devices. Flash programmer communicates with Uniflash host utility over the UART interface.rhj}hj~hhh}r(h]h]h]h]h]uhK hhh]rhXFlash porgrammer runs on target platform which takes care of receiving the images from Uniflash host utility and programming them onto flash devices. Flash programmer communicates with Uniflash host utility over the UART interface.rr}r(hjhjubaubh)r}r(hX~Flash programmer which is part of the Uniflash release can be found at - "/processors/FlashWriter/"rhj}hj~hhh}r(h]h]h]h]h]uhKhhh]rhX~Flash programmer which is part of the Uniflash release can be found at - "/processors/FlashWriter/"rr}r(hjhjubaubh)r}r(hXHost utility runs on host machine which provides Command-line Interface (CLI) to communicate with flash programmer. Windows and Linux are the supported OS platforms for running Uniflash host utility. Host utility uses UART or JTAG interface to download the flash programmer to the target platform. All data transfers between Uniflash host utility and Flash programmer happens over UART interface.rhj}hj~hhh}r(h]h]h]h]h]uhKhhh]rhXHost utility runs on host machine which provides Command-line Interface (CLI) to communicate with flash programmer. Windows and Linux are the supported OS platforms for running Uniflash host utility. Host utility uses UART or JTAG interface to download the flash programmer to the target platform. All data transfers between Uniflash host utility and Flash programmer happens over UART interface.rr}r(hjhjubaubh)r}r(hXRefer to `Uniflash Documentation `__ for more details on Uniflash tool.hj}hj~hhh}r(h]h]h]h]h]uhKhhh]r(hX Refer to rr}r(hX Refer to hjubj)r}r(hXZ`Uniflash Documentation `__h}r (UnameXUniflash DocumentationjX=http://processors.wiki.ti.com/index.php/Category:CCS_UniFlashh]h]h]h]h]uhjh]r hXUniflash Documentationr r }r (hUhjubahj ubhX# for more details on Uniflash tool.rr}r(hX# for more details on Uniflash tool.hjubeubeubhj~hjYh}r(h]UlevelKh]h]rjaUsourcej~h]h]UlineKUtypej[uhKhhh]rh)r}r(hX/Duplicate implicit target name: "introduction".h}r(h]h]h]h]h]uhj}h]rhX/Duplicate implicit target name: "introduction".rr}r(hUhjubahhubaubh)r}r(hUhjhj~hjYh}r(h]UlevelKh]h]Usourcej~h]h]UlineKWUtypej[uhKWhhh]rh)r}r (hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}r!(h]h]h]h]h]uhjh]r"hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.r#r$}r%(hUhjubahhubaubh)r&}r'(hUhj6hj~hjYh}r((h]UlevelKh]h]Usourcej~h]h]UlineKUtypej[uhKhhh]r)h)r*}r+(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}r,(h]h]h]h]h]uhj&h]r-hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.r.r/}r0(hUhj*ubahhubaubh)r1}r2(hUhjhj~hjYh}r3(h]UlevelKh]h]Usourcej~h]h]UlineM<UtypejguhM;hhh]r4h)r5}r6(hX=Literal block ends without a blank line; unexpected unindent.h}r7(h]h]h]h]h]uhj1h]r8hX=Literal block ends without a blank line; unexpected unindent.r9r:}r;(hUhj5ubahhubaubh)r<}r=(hUhjhNhjYh}r>(h]UlevelKh]h]Usourcej~h]h]UlineMFUtypejguhNhhh]r?h)r@}rA(hX;Block quote ends without a blank line; unexpected unindent.h}rB(h]h]h]h]h]uhj<h]rChX;Block quote ends without a blank line; unexpected unindent.rDrE}rF(hUhj@ubahhubaubh)rG}rH(hUhjhj~hjYh}rI(h]UlevelKh]h]Usourcej~h]h]UlineMRUtypejguhMQhhh]rJh)rK}rL(hX?Explicit markup ends without a blank line; unexpected unindent.h}rM(h]h]h]h]h]uhjGh]rNhX?Explicit markup ends without a blank line; unexpected unindent.rOrP}rQ(hUhjKubahhubaubh)rR}rS(hUhjhNhjYh}rT(h]UlevelKh]h]Usourcej~h]h]UlineMaUtypejguhNhhh]rUh)rV}rW(hX;Block quote ends without a blank line; unexpected unindent.h}rX(h]h]h]h]h]uhjRh]rYhX;Block quote ends without a blank line; unexpected unindent.rZr[}r\(hUhjVubahhubaubh)r]}r^(hUhjhj~hjYh}r_(h]UlevelKh]h]Usourcej~h]h]UlineMlUtypej[uhMlhhh]r`h)ra}rb(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rc(h]h]h]h]h]uhj]h]rdhXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rerf}rg(hUhjaubahhubaubh)rh}ri(hUhjhj~hjYh}rj(h]UlevelKh]h]Usourcej~h]h]UlineMvUtypej[uhMvhhh]rkh)rl}rm(hXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.h}rn(h]h]h]h]h]uhjhh]rohXfPossible title underline, too short for the title. Treating it as ordinary text because it's so short.rprq}rr(hUhjlubahhubaubh)rs}rt(hUh}ru(h]UlevelKh]h]Usourcej~h]h]UlineM Utypejuhj<h]rvh)rw}rx(hXUnexpected indentation.h}ry(h]h]h]h]h]uhjsh]rzhXUnexpected indentation.r{r|}r}(hUhjwubahhubahjYubh)r~}r(hUhjphj~hjYh}r(h]UlevelKh]h]rjuaUsourcej~h]h]UlineMUtypej[uhMhhh]rh)r}r(hX(Duplicate implicit target name: "j721e".h}r(h]h]h]h]h]uhj~h]rhX(Duplicate implicit target name: "j721e".rr}r(hUhjubahhubaubh)r}r(hUh}r(h]UlevelKh]h]Usourcej~h]h]UlineM0Utypejuhjh]rh)r}r(hXUnexpected indentation.h}r(h]h]h]h]h]uhjh]rhXUnexpected indentation.rr}r(hUhjubahhubahjYubh)r}r(hUhjFhj~hjYh}r(h]UlevelKh]h]Usourcej~h]h]UlineM8UtypejguhM7hhh]rh)r}r(hX;Bullet list ends without a blank line; unexpected unindent.h}r(h]h]h]h]h]uhjh]rhX;Bullet list ends without a blank line; unexpected unindent.rr}r(hUhjubahhubaubh)r}r(hUhjFhj~hjYh}r(h]UlevelKh]h]Usourcej~h]h]UlineMAUtypejguhM@hhh]rh)r}r(hX;Bullet list ends without a blank line; unexpected unindent.h}r(h]h]h]h]h]uhjh]rhX;Bullet list ends without a blank line; unexpected unindent.rr}r(hUhjubahhubaubh)r}r(hUhjFhXiinternal padding after source/rtos/PDK_Platform_Software/Boot_Board_and_EVM_Abstractions/Uniflash.rst.incrhjYh}r(h]UlevelKh]h]Usourcej~h]h]UlineMLUtypejuhMMhhh]r(h)r}r(hX;Content block expected for the "raw" directive; none found.h}r(h]h]h]h]h]uhjh]rhX;Content block expected for the "raw" directive; none found.rr}r(hUhjubahhubj()r}r(hX.. raw:: html h}r(hhh]h]h]h]h]uhjh]rhX.. raw:: html rr}r(hUhjubahj+ubeubeUcurrent_sourcerNU decorationrNUautofootnote_startrKUnameidsr}r‰(hj[hj^hjdh jrh jTh jUh j6h jhjujhjifhjXhjhjPhjhj4hjYEhj]hj4hjl`hj hjFhjhjhjVhj\PhjLh j?h!j[5h"j=h#j2_h$j=h%jOh&j8Xh'jfh(jh)j}eh*j"Oh+jh,jh-j}4h.j6h/jyh0j ~h1j\h2jh3jjh4jHh5jNh6j`h7j4h8jh9jFTh:j<h;j}hjxGh?Nh@j"hAjdhBjhCjchDjyhEjVhFjhGjG;hHjhIj4hJjFhKj;hLjJhMjhNjihOjchPj}hQjhRNhSjWhTj\AhUjhVjhWjhXNhYjhZjNh[jzh\jh]jh^jJ]h_jh`jUhaNhbNhcjhdj+hejphfNhgjhhj4hij[Khjj:hkjhljVRhmjBhnhhojYhpj"hqj}hrj4hsjBhtjjJhujL hvj hwjghxjhyj7hzj`bh{Nh|jW h}jjh~j hjfhjhjhhjMhjX9hj chjahNhjhjDhj8hj^hjIhjI5hj9ghjxhj_hj:hjahje>hjCdhj%hj hjE7hNhj6hj> hNhjM@hjhjRhjhj7hj_QhjZhjKMhjr5hj9hjChj:hj hjhj*hjBhjUhjhjeuh]rÉ(hj&jE5jxj}ehUU transformerrĉNU footnote_refsrʼn}rƉUrefnamesrlj}rȉ(X pinmux toolrɉ]rʉj)rˉ}r̉(hjh}r͉(UnameX Pinmux Toolh]h]h]UrefnamerΉjɉh]h]uhjh]rωhX Pinmux ToolrЉrщ}r҉(hUhjˉubahj ubaXclock tree tool]rӉjSaXemif tools appnote]rԉjauUsymbol_footnotesrՉ]r։Uautofootnote_refsr׉]r؉Usymbol_footnote_refsrى]rډU citationsrۉ]r܉hhU current_liner݉NUtransform_messagesrމ]r߉h)r}r(hUh}r(h]UlevelKh]rjah]rjaUsourcehh]h]UlineKUtypejuh]rh)r}r(hUh}r(h]h]h]h]h]uhjh]rhXKDuplicate target name, cannot be used as a unique reference: "pinmux tool".rr}r(hUhjubahhubahjYubaUreporterrNUid_startrMU autofootnotesr]rU citation_refsr}rUindirect_targetsr]rUsettingsr(cdocutils.frontend Values ror}r(Ufootnote_backlinksrKUrecord_dependenciesrNU rfc_base_urlrUhttps://tools.ietf.org/html/rU tracebackrUpep_referencesrNUstrip_commentsrNU toc_backlinksrjJU language_coderUenrU datestamprNU report_levelrKU _destinationrNU halt_levelrKU strip_classesrNhNUerror_encoding_error_handlerrUbackslashreplacer Udebugr NUembed_stylesheetr Uoutput_encoding_error_handlerr Ustrictr U sectnum_xformrKUdump_transformsrNU docinfo_xformrKUwarning_streamrNUpep_file_url_templaterUpep-%04drUexit_status_levelrKUconfigrNUstrict_visitorrNUcloak_email_addressesrUtrim_footnote_reference_spacerUenvrNUdump_pseudo_xmlrNUexpose_internalsrNUsectsubtitle_xformrU source_linkrNUrfc_referencesrNUoutput_encodingrUutf-8r U source_urlr!NUinput_encodingr"U utf-8-sigr#U_disable_configr$NU id_prefixr%UU tab_widthr&KUerror_encodingr'UUTF-8r(U_sourcer)hUgettext_compactr*U generatorr+NUdump_internalsr,NU smart_quotesr-U pep_base_urlr.U https://www.python.org/dev/peps/r/Usyntax_highlightr0Ulongr1Uinput_encoding_error_handlerr2j Uauto_id_prefixr3Uidr4Udoctitle_xformr5Ustrip_elements_with_classesr6NU _config_filesr7]Ufile_insertion_enabledr8U raw_enabledr9KU dump_settingsr:NubUsymbol_footnote_startr;KUidsr<}r=(j <j<j;j;j;j;jx;jr;j`;jZ;j#;j;j:j:j:j:j:j:jz:jt:jjjejajjj<j8jjj2_j._j.j(j9j5j5j5jWjWjWjWj/Wj)WjGWjAWjwWjqWjWjWjUjUj/Vj)VjVjVjWjWjjJjfJjWjWjjj]jXjjjxjxhhj^j^j^j^jK_jE_j_j_j{_ju_jc_j]_j_j_j_j_j`j`j`j_jyjyjMjMjNjJjDjDj7j7jl`jh`j j jjjUjUjUjQjhjNjNj1Nj+NjaNj[NjNjNjNjNjNjNjNjNj;Oj5OjSOjMOjkOjeOjFjFj[5jT5jjjW jS jL jH jpjljI5jE5jVRjRRjPj{Pj8Pj2PjPjPjPjPjOjOjOjOjPjPjOjOjxQjrQjQjQj j j ~j~j9gj5gjBjBjxGjtGjjjdjdjdjdjtdjndjdjdjdjdj\djVdjcjcjcjcjcj|cjcjcjr5jn5jBjBjCjCj8Aj2AjuAjoAj@j@j@j@jwBjqBjBjBjAjAjGBjABj^j^j8j8j?j?jJjFj5Ej/Ejjj:j:jG;jC;j j jIjIjHjHjGjGjTGjNGjGjGjGjGj.Hj(HjGjGjHjHjFHj@HjDjDjdjdjMjMjjj\j\jZjZjVjVj}j}jFTjBTj{]ju]j]j]j\j\jc]j]]j^j^j0^j*^j]j]j^j]j`^jZ^j^j^j]j]j6j 6jJ]jF]hhj[j[jdj`jifjefjijij6j2j}j}jjj7j3j:j9jjj"jjjj2:j,:jJ:jD:j9j9j=j=j9j9j9j9j49j.9jq9jk9j8j8j8j8jjjRjRj SjSjRjRjRjRjRjRjoRjiRjQjQjQjQjjj$SjSjj cjcjjjKMjGMj jjjjijijlijfij)ij#ijj}jQjjKjj9jj3jj!jjjj\AjXAjfjfjFj FjjjXjXjQXjKXjXjXjXj{XjiXjcXjYjYjXjXjeYj_YjYjYjYjYjYjYjjj4j4jj jjj`j`jVjRjjj"OjOjFjFj GjGjX9jT9jEjEjEjEjEjEj'Fj!Fj?Fj9FjWFjQFjFjFjFjFjKjKjNLjHLjFJj@JjJj}JjIIjCIjIjIj7Kj1Kj|KjvKjJjJjJjJj?j?j?jz?j?j?j?j?j~>jx>jA>j;>jP?jJ?j>j>jjjf@j`@j)@j#@jajajhUjbUjCjCjEj?j=j=jjjUhjLjLjjjRcjLcj:cj4cj"cjcjbjbjbjbjbjbjybjsbj j: jOjOj=j=j>j=jP=jJ=jh=jb=j=j=j=j=j!<j<j<j<j<j<j8=j2=jfjfjzj zj8j8j8jy8j^7jX7j!7j7j7j7jv7jp7j8j8j7j7j78j18j8j8j j jrjnjTjTjwTjqTj_TjYTj"TjTj,Uj&UjUjUjTjTjTjTjUjUj4j4jYEjUEj4j4j:j:je>ja>jjj;j;jjjfjtgjngjgjgjgjgjHhjBhjfjfjgjfjgjgjcj_jhjhjhjhj_j_j\PjXPjO jI jjjh jb j j j j jA j< jjj jjjjQZjKZjZjZjYjYj!ZjZj[j[j[j[jZjZjD[j>[j[j[jc\j]\j5j5j4j4jjjcjcjjjMjMj|MjvMjrEjlEj'Mj!MjLjLjLjLjLjLjLjLj,Dj&DjDjDjCjCjCjCjDjDjDjDjNjMjDjDjyjyjDgj>gjjjjjC5jjjjj'6j"6j>6j96jU6jP6j6j6j6j6j6j6j6j6j"jj4j"j5j5jjjNjNj4j4jjjBjBj j jjj8Xj4XjjjajajIjHjH`jB`j`j`j`j`j`j`j`j`j3aj-ajKajEajcaj]ajhjhjajajujpj6j6j:j6j j jjj5j5jtfjnfjKfjEfjejejejej3fj-fjejej)ej#ejej ejejejYejSejjj+j'jHjHjRjRjajaj}ejyej`bj\buUsubstitution_namesr>}r?hhh}r@(h]h]h]Usourcehh]h]uU footnotesrA]rBUrefidsrC}rDub.