aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/adm5120/files-3.18/arch/mips/adm5120/cellvision/cas-771.c
blob: 5033e02469e95bc3a680727dcd1db2fef4c8ceca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/*
 *  Cellvision/SparkLAN CAS-771/771W support
 *
 *  Copyright (C) 2007-2008 Gabor Juhos <juhosg@openwrt.org>
 *
 *  This program is free software; you can redistribute it and/or modify it
 *  under the terms of the GNU General Public License version 2 as published
 *  by the Free Software Foundation.
 *
 */

#include "cellvision.h"

static struct adm5120_pci_irq cas771_pci_irqs[] __initdata = {
	PCIIRQ(2, 0, 1, ADM5120_IRQ_PCI0),
	PCIIRQ(3, 0, 1, ADM5120_IRQ_PCI1),
	PCIIRQ(3, 2, 3, ADM5120_IRQ_PCI2)
};

static struct gpio_led cas771_gpio_leds[] __initdata = {
	GPIO_LED_STD(ADM5120_GPIO_PIN0, "cam_flash",	NULL),
	/* GPIO PIN3 is the reset */
	GPIO_LED_STD(ADM5120_GPIO_PIN6, "access",	NULL),
	GPIO_LED_STD(ADM5120_GPIO_P0L1, "status",	NULL),
	GPIO_LED_STD(ADM5120_GPIO_P0L2, "diag",		NULL),
};

static void __init cas771_setup(void)
{
	cas7xx_setup();
	adm5120_add_device_gpio_leds(ARRAY_SIZE(cas771_gpio_leds),
					cas771_gpio_leds);
	adm5120_pci_set_irq_map(ARRAY_SIZE(cas771_pci_irqs), cas771_pci_irqs);
}

MIPS_MACHINE(MACH_ADM5120_CAS771, "CAS-771", "Cellvision CAS-771/771W",
	     cas771_setup);