3 * QNAP TS-11x/TS-21x Turbo NAS Board Setup via DT
5 * Copyright (C) 2012 Andrew Lunn <andrew@lunn.ch>
7 * Based on the board file ts219-setup.c:
9 * Copyright (C) 2009 Martin Michlmayr <tbm@cyrius.com>
10 * Copyright (C) 2008 Byron Bradley <byron.bbradley@gmail.com>
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version
15 * 2 of the License, or (at your option) any later version.
18 #include <linux/kernel.h>
19 #include <linux/init.h>
20 #include <linux/platform_device.h>
21 #include <linux/mv643xx_eth.h>
22 #include <asm/mach-types.h>
23 #include <asm/mach/arch.h>
24 #include <mach/kirkwood.h>
26 #include "tsx1x-common.h"
28 static struct mv643xx_eth_platform_data qnap_ts219_ge00_data
= {
29 .phy_addr
= MV643XX_ETH_PHY_ADDR(8),
32 void __init
qnap_dt_ts219_init(void)
36 kirkwood_pcie_id(&dev
, &rev
);
37 if (dev
== MV88F6282_DEV_ID
)
38 qnap_ts219_ge00_data
.phy_addr
= MV643XX_ETH_PHY_ADDR(0);
40 kirkwood_ge00_init(&qnap_ts219_ge00_data
);
42 pm_power_off
= qnap_tsx1x_power_off
;
45 /* FIXME: Will not work with DT. Maybe use MPP40_GPIO? */
46 static int __init
ts219_pci_init(void)
48 if (machine_is_ts219())
49 kirkwood_pcie_init(KW_PCIE0
);
53 subsys_initcall(ts219_pci_init
);