/** Configures the board hardware and chip peripherals for the demo's functionality. */ void SetupHardware(void) { /* Disable watchdog */ MCUSR = 0; wdt_disable(); /* Disable clock division */ clock_prescale_set(clock_div_1); serial_init(); GlobalInterruptEnable(); //LED_CONFIG; /* Hardware Initialization */ LEDs_Init(); PIN_CONFIG(4); PIN_CONFIG(5); PIN_CONFIG(6); PIN_CONFIG(7); while(!started); USB_Init(); }
int pinmux_initialize(struct device *port) { int i=0; quark_se_pinmux_initialize_common(port, mux_config); PIN_CONFIG(mux_config, 0, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 1, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 2, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 3, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 8, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 9, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 55, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 56, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 57, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 63, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 64, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 65, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 66, PINMUX_FUNC_B); for (i = 0; i < PINMUX_MAX_REGISTERS; i++) { sys_write32(mux_config[i], PINMUX_SELECT_REGISTER(board_pmux.base_address, i)); } return DEV_OK; }
static void pic32_eth_pin_config(struct udevice *dev) { struct pic32_pinctrl_priv *priv = dev_get_priv(dev); const struct pic32_pin_config configs[] = { /* EMDC - D11 */ PIN_CONFIG(PIC32_PORT_D, 11, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_D, 11, PIN_CONFIG_OUTPUT), /* ETXEN */ PIN_CONFIG(PIC32_PORT_D, 6, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_D, 6, PIN_CONFIG_OUTPUT), /* ECRSDV */ PIN_CONFIG(PIC32_PORT_H, 13, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_H, 13, PIN_CONFIG_INPUT_ENABLE), /* ERXD0 */ PIN_CONFIG(PIC32_PORT_H, 8, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_H, 8, PIN_CONFIG_INPUT_ENABLE), PIN_CONFIG(PIC32_PORT_H, 8, PIN_CONFIG_BIAS_PULL_DOWN), /* ERXD1 */ PIN_CONFIG(PIC32_PORT_H, 5, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_H, 5, PIN_CONFIG_INPUT_ENABLE), PIN_CONFIG(PIC32_PORT_H, 5, PIN_CONFIG_BIAS_PULL_DOWN), /* EREFCLK */ PIN_CONFIG(PIC32_PORT_J, 11, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_J, 11, PIN_CONFIG_INPUT_ENABLE), /* ETXD1 */ PIN_CONFIG(PIC32_PORT_J, 9, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_J, 9, PIN_CONFIG_OUTPUT), /* ETXD0 */ PIN_CONFIG(PIC32_PORT_J, 8, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_J, 8, PIN_CONFIG_OUTPUT), /* EMDIO */ PIN_CONFIG(PIC32_PORT_J, 1, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_J, 1, PIN_CONFIG_INPUT_ENABLE), /* ERXERR */ PIN_CONFIG(PIC32_PORT_F, 3, PIN_CONFIG_PIC32_DIGITAL), PIN_CONFIG(PIC32_PORT_F, 3, PIN_CONFIG_INPUT_ENABLE), }; pic32_pinconfig_set(priv, configs, ARRAY_SIZE(configs)); }
static void _pinmux_defaults(u32_t base) { u32_t mux_config[PINMUX_MAX_REGISTERS] = { 0, 0, 0, 0, 0 }; int i = 0; #if !defined(CONFIG_SPI_1) && !defined(CONFIG_SPI_CS_GPIO) PIN_CONFIG(mux_config, 0, PINMUX_FUNC_B); #endif PIN_CONFIG(mux_config, 1, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 2, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 3, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 4, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 5, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 7, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 8, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 9, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 14, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 16, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 17, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 40, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 41, PINMUX_FUNC_B); #ifdef CONFIG_SPI_1 PIN_CONFIG(mux_config, 42, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 43, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 44, PINMUX_FUNC_B); #ifndef CONFIG_SPI_CS_GPIO PIN_CONFIG(mux_config, 45, PINMUX_FUNC_B); #endif #endif PIN_CONFIG(mux_config, 55, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 56, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 57, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 63, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 64, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 65, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 66, PINMUX_FUNC_B); for (i = 0; i < PINMUX_MAX_REGISTERS; i++) { sys_write32(mux_config[i], PINMUX_SELECT_REGISTER(base, i)); } }
static void _pinmux_defaults(u32_t base) { u32_t mux_config[PINMUX_MAX_REGISTERS] = { 0, 0 }; int i = 0; PIN_CONFIG(mux_config, 0, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 3, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 4, PINMUX_FUNC_B); PIN_CONFIG(mux_config, 6, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 7, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 12, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 13, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 14, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 15, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 16, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 17, PINMUX_FUNC_C); PIN_CONFIG(mux_config, 18, PINMUX_FUNC_C); for (i = 0; i < PINMUX_MAX_REGISTERS; i++) { sys_write32(mux_config[i], PINMUX_SELECT_REGISTER(base, i)); } }