This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
we have a custom board for an OMAP L138.
Right after startup we see the default internal pullup and pulldown resistors working until we can get control over the pinmux.
Some of these internal pullups makes some trouble on lines we pulled down externally.
OMAP-L138 Applications Processor
System
Reference Guide:
"The pullup/pulldown select register (PUPD_SEL) selects between the pull-up or pull-down functionality for the pin group n defined in your device-specific data manual."
Is it possible to change the default values for pullups / pulldowns in the UBL - code or AIS for minimize time where the trouble is there?
If so, is there a sample patch available to get an idea where to put such code in and what is nessecary to do before manipulating the PUBD_SEL register?
Where can we find information about what pins are in the pin groups CP[x]?
What is for example the "device-specific data manual" for VPIF_CLKO3 / GPIO6[1] or VPIF_CLKIN1 / UHPI_HDS1n / GPIO6[6]
Thank you very much,
Regards,
Bastian.
Hello,
Nikolaus Schoenemann said:Where can we find information about what pins are in the pin groups CP[x]?
What is for example the "device-specific data manual" for VPIF_CLKO3 / GPIO6[1] or VPIF_CLKIN1 / UHPI_HDS1n / GPIO6[6]
... this information can be found in SPRS586.
Does anybody succesfully changed the default settngs in PUPD_SEL in UBL ?
Regards,
Bastian.
Hello,
it is possible to change the PUPD_SEL settings in ubl by following hack for example:
--- a/Common/ubl/src/ubl.c
+++ b/Common/ubl/src/ubl.c
@@ -134,9 +134,22 @@ UART_InfoHandle hUartInfo;
* Global Function Definitions *
************************************************************/
+
+typedef struct _PUPD_SEL_REGISTER_
+{
+ VUint32 PUPD_SEL;
+}
+DEVICE_PUPD_SEL_REGISTER;
+
+#define PUPD_SEL_REG ((DEVICE_PUPD_SEL_REGISTER*) 0x01E2C010)
+
// Main entry point
void main(void)
{
+ //PUPD_SEL
+ //default settings = C3FFFFFF
+ //set pulldown for CP[30] and CP[25] = 81FFFFFF
+ PUPD_SEL_REG->PUPD_SEL = 0x81FFFFFF;
// Call to real boot function code
if (LOCAL_boot() != E_PASS)
{
In this case, the pullups on this ports are working for ~160 ms before change to pulldown.
Is it possible to change the register faster after reset?
Regards,
Bastian.