123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #include "platform.h"
- #include <stdint.h>
- #include "./../../stm32f429xx.h"
- #include "./../stm32_api/gpio_api.h"
- //#include "./../../driver/GPIO/gpio.h"
- #include "bmc_main.h"
- #include <stdio.h>
- void platform_init(void)
- {
- gpio_data_t gpin_data;
- uint8_t slotID = 0;
- printf("---> init platform!\n");
- //init debug led, GPIO_D12
- gpin_data.port = GPIOD;
- gpin_data.pin = GPIO_PIN_12;
- set_gpio_push_pull_output(&gpin_data);
- //get slot ID
- //GA0
- gpin_data.port = GPIOA;
- gpin_data.pin = GPIO_PIN_9;
- set_gpio_input(&gpin_data);
- set_gpio_pull_up(&gpin_data);
- get_gpio_value(&gpin_data);
- slotID |= (gpin_data.data&0x01);
- //GA1
- gpin_data.port = GPIOC;
- gpin_data.pin = GPIO_PIN_6;
- set_gpio_input(&gpin_data);
- set_gpio_pull_up(&gpin_data);
- get_gpio_value(&gpin_data);
- slotID |= ((gpin_data.data&0x01)<<1);
- //GA2
- gpin_data.port = GPIOA;
- gpin_data.pin = GPIO_PIN_10;
- set_gpio_input(&gpin_data);
- set_gpio_pull_up(&gpin_data);
- get_gpio_value(&gpin_data);
- slotID |= ((gpin_data.data&0x01)<<2);
- //GA3
- gpin_data.port = GPIOG;
- gpin_data.pin = GPIO_PIN_6;
- set_gpio_input(&gpin_data);
- set_gpio_pull_up(&gpin_data);
- get_gpio_value(&gpin_data);
- slotID |= ((gpin_data.data&0x01)<<3);
- //GA4
- gpin_data.port = GPIOA;
- gpin_data.pin = GPIO_PIN_12;
- set_gpio_input(&gpin_data);
- set_gpio_pull_up(&gpin_data);
- get_gpio_value(&gpin_data);
- slotID |= ((gpin_data.data&0x01)<<4);
- g_BMCInfo.slotID = slotID;
- printf("---> slot ID:%#x\n",g_BMCInfo.slotID);
- //
- }
|