linux/arch/arm/mach-imx/mach-imx1.c
<<
>>
Prefs
   1/*
   2 *  Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru>
   3 *
   4 * This program is free software; you can redistribute it and/or modify
   5 * it under the terms of the GNU General Public License as published by
   6 * the Free Software Foundation; either version 2 of the License, or
   7 * (at your option) any later version.
   8 */
   9
  10#include <linux/of_platform.h>
  11#include <asm/mach/arch.h>
  12#include <asm/mach/map.h>
  13
  14#include "common.h"
  15#include "hardware.h"
  16
  17#define MX1_AVIC_ADDR   0x00223000
  18
  19static void __init imx1_init_early(void)
  20{
  21        mxc_set_cpu_type(MXC_CPU_MX1);
  22}
  23
  24static void __init imx1_init_irq(void)
  25{
  26        void __iomem *avic_addr;
  27
  28        avic_addr = ioremap(MX1_AVIC_ADDR, SZ_4K);
  29        WARN_ON(!avic_addr);
  30
  31        mxc_init_irq(avic_addr);
  32}
  33
  34static const char * const imx1_dt_board_compat[] __initconst = {
  35        "fsl,imx1",
  36        NULL
  37};
  38
  39DT_MACHINE_START(IMX1_DT, "Freescale i.MX1 (Device Tree Support)")
  40        .map_io         = debug_ll_io_init,
  41        .init_early     = imx1_init_early,
  42        .init_irq       = imx1_init_irq,
  43        .dt_compat      = imx1_dt_board_compat,
  44        .restart        = mxc_restart,
  45MACHINE_END
  46