const NvOdmGpioPinInfo *NvOdmQueryGpioPinMap(NvOdmGpioPinGroup Group, NvU32 Instance, NvU32 *pCount) { // NvOdmBoardInfo BoardInfo; switch (Group) { case NvOdmGpioPinGroup_Display: *pCount = NVODM_ARRAY_SIZE(s_display); return s_display; case NvOdmGpioPinGroup_Hdmi: *pCount = NVODM_ARRAY_SIZE(s_hdmi); return s_hdmi; // // case NvOdmGpioPinGroup_Crt: // *pCount = NVODM_ARRAY_SIZE(s_crt); // return s_crt; // case NvOdmGpioPinGroup_Sdio: if (Instance == 1) { *pCount = NVODM_ARRAY_SIZE(s_sdio); return s_sdio; } // else if (Instance == 3) // { // *pCount = NVODM_ARRAY_SIZE(s_sdio3); // return s_sdio3; // } else { *pCount = 0; return NULL; } // case NvOdmGpioPinGroup_NandFlash: // *pCount = NVODM_ARRAY_SIZE(s_NandFlash); // return s_NandFlash; case NvOdmGpioPinGroup_Bluetooth: *pCount = NVODM_ARRAY_SIZE(s_Bluetooth); return s_Bluetooth; case NvOdmGpioPinGroup_Wlan: *pCount = NVODM_ARRAY_SIZE(s_Wlan); return s_Wlan; // case NvOdmGpioPinGroup_SpiEthernet: // if (NvOdmQueryDownloadTransport() == // NvOdmDownloadTransport_SpiEthernet) // { // *pCount = NVODM_ARRAY_SIZE(s_spi_ethernet); // return s_spi_ethernet; // } // else // { // *pCount = 0; // return NULL; // } // case NvOdmGpioPinGroup_Vi: // *pCount = NVODM_ARRAY_SIZE(s_vi); // return s_vi; // case NvOdmGpioPinGroup_Power: // *pCount = NVODM_ARRAY_SIZE(s_Power); // return s_Power; case NvOdmGpioPinGroup_EmbeddedController: *pCount = NVODM_ARRAY_SIZE(s_WakeFromKeyBoard); return s_WakeFromKeyBoard; // case NvOdmGpioPinGroup_keypadMisc: // if (NvOdmPeripheralGetBoardInfo(EEPROM_ID_E1206, &BoardInfo)) // { // *pCount = NVODM_ARRAY_SIZE(s_GpioKeyBoard); // return s_GpioKeyBoard; // } // *pCount = 0; // return NULL; // case NvOdmGpioPinGroup_Battery: *pCount = NVODM_ARRAY_SIZE(s_Battery); return s_Battery; case NvOdmGpioPinGroup_Docking: *pCount = NVODM_ARRAY_SIZE(s_Docking); return s_Docking; case NvOdmGpioPinGroup_CapSensor: *pCount = NVODM_ARRAY_SIZE(s_CapSensor); return s_CapSensor; case NvOdmGpioPinGroup_Gsensor: *pCount = NVODM_ARRAY_SIZE(s_Gsensor); return s_Gsensor; /* Ecompass Daniel 20100805 */ case NvOdmGpioPinGroup_Ecompass: *pCount = NVODM_ARRAY_SIZE(s_Ecompass); return s_Ecompass; default: *pCount = 0; return NULL; } }
const NvOdmGpioPinInfo *NvOdmQueryGpioPinMap(NvOdmGpioPinGroup Group, NvU32 Instance, NvU32 *pCount) { NvOdmBoardInfo BoardInfo; switch (Group) { case NvOdmGpioPinGroup_Display: *pCount = NVODM_ARRAY_SIZE(s_display); return s_display; case NvOdmGpioPinGroup_Hdmi: *pCount = NVODM_ARRAY_SIZE(s_hdmi); return s_hdmi; case NvOdmGpioPinGroup_Crt: *pCount = NVODM_ARRAY_SIZE(s_crt); return s_crt; case NvOdmGpioPinGroup_Sdio: if (Instance == 2) { *pCount = NVODM_ARRAY_SIZE(s_sdio); return s_sdio; }/* else if (Instance == 3) { *pCount = NVODM_ARRAY_SIZE(s_sdio3); return s_sdio3; } else// if (Instance == 0) { *pCount = NVODM_ARRAY_SIZE(s_sdio0); return s_sdio0; }*/ else { *pCount = 0; return NULL; } case NvOdmGpioPinGroup_NandFlash: *pCount = NVODM_ARRAY_SIZE(s_NandFlash); return s_NandFlash; case NvOdmGpioPinGroup_Bluetooth: *pCount = NVODM_ARRAY_SIZE(s_Bluetooth); return s_Bluetooth; case NvOdmGpioPinGroup_Wlan: *pCount = NVODM_ARRAY_SIZE(s_Wlan); return s_Wlan; case NvOdmGpioPinGroup_SpiEthernet: if (NvOdmQueryDownloadTransport() == NvOdmDownloadTransport_SpiEthernet) { *pCount = NVODM_ARRAY_SIZE(s_spi_ethernet); return s_spi_ethernet; } else { *pCount = 0; return NULL; } case NvOdmGpioPinGroup_Vi: *pCount = NVODM_ARRAY_SIZE(s_vi); return s_vi; case NvOdmGpioPinGroup_Power: *pCount = NVODM_ARRAY_SIZE(s_Power); return s_Power; case NvOdmGpioPinGroup_EmbeddedController: *pCount = NVODM_ARRAY_SIZE(s_WakeFromKeyBoard); return s_WakeFromKeyBoard; case NvOdmGpioPinGroup_keypadMisc: //add by navy *pCount = NVODM_ARRAY_SIZE(s_GpioKeyBoard); return s_GpioKeyBoard; //add end if (NvOdmPeripheralGetBoardInfo(EEPROM_ID_E1206, &BoardInfo)) { *pCount = NVODM_ARRAY_SIZE(s_GpioKeyBoard); return s_GpioKeyBoard; } *pCount = 0; return NULL; case NvOdmGpioPinGroup_Battery: *pCount = NVODM_ARRAY_SIZE(s_Battery); return s_Battery; default: *pCount = 0; return NULL; } }
const NvOdmGpioPinInfo *NvOdmQueryGpioPinMap(NvOdmGpioPinGroup Group, NvU32 Instance, NvU32 *pCount) { NvU32 CustomerOption = 0; NvU32 Personality = 0; NvOdmServicesKeyListHandle hKeyList; hKeyList = NvOdmServicesKeyListOpen(); if (hKeyList) { CustomerOption = NvOdmServicesGetKeyValue(hKeyList, NvOdmKeyListId_ReservedBctCustomerOption); NvOdmServicesKeyListClose(hKeyList); Personality = NV_DRF_VAL(TEGRA_DEVKIT, BCT_CUSTOPT, PERSONALITY, CustomerOption); } if (!Personality) Personality = TEGRA_DEVKIT_DEFAULT_PERSONALITY; switch (Group) { case NvOdmGpioPinGroup_Display: *pCount = NVODM_ARRAY_SIZE(s_display); return s_display; case NvOdmGpioPinGroup_Sdio: if (Instance == 2) { *pCount = NVODM_ARRAY_SIZE(s_Sdio2); return s_Sdio2; } else { *pCount = 0; return NULL; } case NvOdmGpioPinGroup_ScrollWheel: if ((Personality == TEGRA_DEVKIT_BCT_CUSTOPT_0_PERSONALITY_11) || (Personality == TEGRA_DEVKIT_BCT_CUSTOPT_0_PERSONALITY_15) || (Personality == TEGRA_DEVKIT_BCT_CUSTOPT_0_PERSONALITY_C1)) { *pCount = NVODM_ARRAY_SIZE(s_ScrollWheel_TraceMode); return s_ScrollWheel_TraceMode; } else { *pCount = NVODM_ARRAY_SIZE(s_ScrollWheel); return s_ScrollWheel; } case NvOdmGpioPinGroup_NandFlash: *pCount = NVODM_ARRAY_SIZE(s_NandFlash); return s_NandFlash; case NvOdmGpioPinGroup_Bluetooth: *pCount = NVODM_ARRAY_SIZE(s_Bluetooth); return s_Bluetooth; case NvOdmGpioPinGroup_Wlan: *pCount = NVODM_ARRAY_SIZE(s_Wlan); return s_Wlan; case NvOdmGpioPinGroup_SpiEthernet: *pCount = NVODM_ARRAY_SIZE(s_spi_ethernet); return s_spi_ethernet; case NvOdmGpioPinGroup_Vi: *pCount = NVODM_ARRAY_SIZE(s_vi); return s_vi; case NvOdmGpioPinGroup_Hdmi: *pCount = NVODM_ARRAY_SIZE(s_hdmi); return s_hdmi; default: *pCount = 0; return NULL; } }