linux/arch/arm/mach-sa1100/lart.c
<<
>>
Prefs
   1/*
   2 * linux/arch/arm/mach-sa1100/lart.c
   3 */
   4
   5#include <linux/init.h>
   6#include <linux/kernel.h>
   7#include <linux/tty.h>
   8
   9#include <mach/hardware.h>
  10#include <asm/setup.h>
  11#include <asm/mach-types.h>
  12#include <asm/page.h>
  13
  14#include <asm/mach/arch.h>
  15#include <asm/mach/map.h>
  16#include <asm/mach/serial_sa1100.h>
  17#include <mach/mcp.h>
  18
  19#include "generic.h"
  20
  21
  22#warning "include/asm/arch-sa1100/ide.h needs fixing for lart"
  23
  24static struct mcp_plat_data lart_mcp_data = {
  25        .mccr0          = MCCR0_ADM,
  26        .sclk_rate      = 11981000,
  27};
  28
  29static void __init lart_init(void)
  30{
  31        sa11x0_set_mcp_data(&lart_mcp_data);
  32}
  33
  34static struct map_desc lart_io_desc[] __initdata = {
  35        {       /* main flash memory */
  36                .virtual        =  0xe8000000,
  37                .pfn            = __phys_to_pfn(0x00000000),
  38                .length         = 0x00400000,
  39                .type           = MT_DEVICE
  40        }, {    /* main flash, alternative location */
  41                .virtual        =  0xec000000,
  42                .pfn            = __phys_to_pfn(0x08000000),
  43                .length         = 0x00400000,
  44                .type           = MT_DEVICE
  45        }
  46};
  47
  48static void __init lart_map_io(void)
  49{
  50        sa1100_map_io();
  51        iotable_init(lart_io_desc, ARRAY_SIZE(lart_io_desc));
  52
  53        sa1100_register_uart(0, 3);
  54        sa1100_register_uart(1, 1);
  55        sa1100_register_uart(2, 2);
  56
  57        GAFR |= (GPIO_UART_TXD | GPIO_UART_RXD);
  58        GPDR |= GPIO_UART_TXD;
  59        GPDR &= ~GPIO_UART_RXD;
  60        PPAR |= PPAR_UPR;
  61}
  62
  63MACHINE_START(LART, "LART")
  64        .phys_io        = 0x80000000,
  65        .io_pg_offst    = ((0xf8000000) >> 18) & 0xfffc,
  66        .boot_params    = 0xc0000100,
  67        .map_io         = lart_map_io,
  68        .init_irq       = sa1100_init_irq,
  69        .init_machine   = lart_init,
  70        .timer          = &sa1100_timer,
  71MACHINE_END
  72