static bool lpc32xx_uart_probe_6(rtems_termios_device_context *context) { /* Bypass the IrDA modulator/demodulator */ LPC32XX_UART_CTRL |= BSP_BIT32(5); LPC32XX_UARTCLK_CTRL |= BSP_BIT32(3); LPC32XX_U6CLK = LPC32XX_CONFIG_U6CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 10, 11); return ns16550_probe(context); }
static bool lpc32xx_uart_probe_6(int minor) { /* Bypass the IrDA modulator/demodulator */ LPC32XX_UART_CTRL |= BSP_BIT32(5); LPC32XX_UARTCLK_CTRL |= BSP_BIT32(3); LPC32XX_U6CLK = LPC32XX_CONFIG_U6CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 10, 11); return true; }
rtems_status_code qoriq_pic_set_affinity( rtems_vector_number vector, uint32_t processor_index ) { return qoriq_pic_set_affinities(vector, BSP_BIT32(processor_index)); }
static bool lpc32xx_uart_probe_4(rtems_termios_device_context *context) { volatile lpc32xx_gpio *gpio = &lpc32xx.gpio; /* * Set GPO_21/U4_TX/LCDVD[3] to U4_TX. This works only if LCD module is * disabled. */ gpio->p2_mux_set = BSP_BIT32(2); LPC32XX_UARTCLK_CTRL |= BSP_BIT32(1); LPC32XX_U4CLK = LPC32XX_CONFIG_U4CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 6, 7); return ns16550_probe(context); }
static bool lpc32xx_uart_probe_4(int minor) { volatile lpc32xx_gpio *gpio = &lpc32xx.gpio; /* * Set GPO_21/U4_TX/LCDVD[3] to U4_TX. This works only if LCD module is * disabled. */ gpio->p2_mux_set = BSP_BIT32(2); LPC32XX_UARTCLK_CTRL |= BSP_BIT32(1); LPC32XX_U4CLK = LPC32XX_CONFIG_U4CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 6, 7); return true; }
static bool lpc32xx_uart_probe_3(rtems_termios_device_context *context) { LPC32XX_UARTCLK_CTRL |= BSP_BIT32(0); LPC32XX_U3CLK = LPC32XX_CONFIG_U3CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 4, 5); return ns16550_probe(context); }
static bool lpc32xx_uart_probe_3(int minor) { LPC32XX_UARTCLK_CTRL |= BSP_BIT32(0); LPC32XX_U3CLK = LPC32XX_CONFIG_U3CLK; LPC32XX_UART_CLKMODE = BSP_FLD32SET(LPC32XX_UART_CLKMODE, 0x2, 4, 5); return true; }
rtems_status_code qoriq_pic_set_affinity( rtems_vector_number vector, uint32_t processor_index ) { rtems_status_code sc = RTEMS_SUCCESSFUL; if (bsp_interrupt_is_valid_vector(vector)) { if (processor_index <= 1) { int offs = (vpr_and_dr_offsets [vector] << 2) + 4; volatile uint32_t *dr = (volatile uint32_t *) &qoriq.pic + offs; *dr = BSP_BIT32(processor_index); } else { sc = RTEMS_INVALID_NUMBER; } } else { sc = RTEMS_INVALID_ID; } return sc; }