コード例 #1
0
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;
    }
}
コード例 #2
0
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;
    }
}
コード例 #3
0
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;
    }
}