Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/arm32/src/putchar.c

    r8f9d70b r9f8a07d3  
    122122#endif
    123123
    124 #ifdef MACHINE_raspberrypi
    125 
    126 static int raspi_init;
    127 
    128 static inline void write32(uint32_t addr, uint32_t data)
    129 {
    130         *(volatile uint32_t *)(addr) = data;
    131 }
    132 
    133 static inline uint32_t read32(uint32_t addr)
    134 {
    135         return *(volatile uint32_t *)(addr);
    136 }
    137 
    138 static void scons_init_raspi(void)
    139 {
    140         write32(BCM2835_UART0_CR, 0x0);         /* Disable UART */
    141         write32(BCM2835_UART0_ICR, 0x7f);       /* Clear interrupts */
    142         write32(BCM2835_UART0_IBRD, 1);         /* Set integer baud rate */
    143         write32(BCM2835_UART0_FBRD, 40);        /* Set fractional baud rate */
    144         write32(BCM2835_UART0_LCRH,
    145                 BCM2835_UART0_LCRH_FEN |        /* Enable FIFOs */
    146                 BCM2835_UART0_LCRH_WL8);        /* Word length: 8 */
    147         write32(BCM2835_UART0_CR,
    148                 BCM2835_UART0_CR_UARTEN |       /* Enable UART */
    149                 BCM2835_UART0_CR_TXE |          /* Enable TX */
    150                 BCM2835_UART0_CR_RXE);          /* Enable RX */
    151 }
    152 
    153 static void scons_sendb_raspi(uint8_t byte)
    154 {
    155         if (!raspi_init) {
    156                 scons_init_raspi();
    157                 raspi_init = 1;
    158         }
    159 
    160         while (read32(BCM2835_UART0_FR) & BCM2835_UART0_FR_TXFF);
    161 
    162         write32(BCM2835_UART0_DR, byte);
    163 }
    164 #endif
    165 
    166124/** Send a byte to the serial console.
    167125 *
     
    181139#ifdef MACHINE_integratorcp
    182140        scons_sendb_icp(byte);
    183 #endif
    184 #ifdef MACHINE_raspberrypi
    185         scons_sendb_raspi(byte);
    186141#endif
    187142}
Note: See TracChangeset for help on using the changeset viewer.