Hi,
I would like to ask about some lines of code in SYS/BIOS which I think is problematic. In
C:\ti\bios_6_33_04_39\packages\ti\sysbios\family\c674\pmi\
pmi_spi.c
The code for restoring from DEEPSLEEP mode contains the following lines:
/* remove PLL0 and PLL1 from power down (if powered down above) */ if (poweredDownPLL0 != 0) { REG(BASE_PLL0 + PLLCTL) &= ~PLL_PLLRST_BIT; /* reset */ REG(BASE_PLL0 + PLLCTL) |= PLL_PLLDIS_BIT; /* disable output */ REG(BASE_PLL0 + PLLCTL) &= ~PLL_PLLPWRDN_BIT; /* power up */ REG(BASE_PLL0 + PLLCTL) &= ~PLL_PLLDIS_BIT; /* enable toggle */ asm(" nop 9"); /* wait reset */ REG(BASE_PLL0 + PLLCTL) |= PLL_PLLRST_BIT; /* release reset */ } |
Definition of the PLL_PLLDIS_BIT bit is found in
pmi_defs6748.h
#define PLL_PLLDIS_BIT 0x00000010
However, “Table 8-8. PLLC0 Control Register (PLLCTL) Field Descriptions” of SPRUH77 for L138 actually suggest that the bit is reserved, and that “Reserved. Write the default value when modifying this register.”
I have also checked spruh79a for C6748 and neither does its PLLCTL field allows changing the bit.
And the string “DIS” within the name seems suggesting something similar to PLL clock/tree distribution mechanism. This is also not found in PLLCTL fields.
What actually is PLL_PLLDIS_BIT about? Is it a mistake in the code?
Paul