1/*
2 * MPC83xx System descriptions
3 *
4 * Maintainer: Kumar Gala <galak@kernel.crashing.org>
5 *
6 * Copyright 2005 Freescale Semiconductor Inc.
7 *
8 * This program is free software; you can redistribute  it and/or modify it
9 * under  the terms of  the GNU General  Public License as published by the
10 * Free Software Foundation;  either version 2 of the  License, or (at your
11 * option) any later version.
12 */
13
14#include <linux/init.h>
15#include <linux/module.h>
16#include <linux/device.h>
17#include <asm/ppc_sys.h>
18
19struct ppc_sys_spec *cur_ppc_sys_spec;
20struct ppc_sys_spec ppc_sys_specs[] = {
21	{
22		.ppc_sys_name	= "8349E",
23		.mask 		= 0xFFFF0000,
24		.value 		= 0x80500000,
25		.num_devices	= 9,
26		.device_list	= (enum ppc_sys_devices[])
27		{
28			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
29			MPC83xx_IIC2, MPC83xx_DUART, MPC83xx_SEC2,
30			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
31		},
32	},
33	{
34		.ppc_sys_name	= "8349",
35		.mask 		= 0xFFFF0000,
36		.value 		= 0x80510000,
37		.num_devices	= 8,
38		.device_list	= (enum ppc_sys_devices[])
39		{
40			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
41			MPC83xx_IIC2, MPC83xx_DUART,
42			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
43		},
44	},
45	{
46		.ppc_sys_name	= "8347E",
47		.mask 		= 0xFFFF0000,
48		.value 		= 0x80520000,
49		.num_devices	= 9,
50		.device_list	= (enum ppc_sys_devices[])
51		{
52			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
53			MPC83xx_IIC2, MPC83xx_DUART, MPC83xx_SEC2,
54			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
55		},
56	},
57	{
58		.ppc_sys_name	= "8347",
59		.mask 		= 0xFFFF0000,
60		.value 		= 0x80530000,
61		.num_devices	= 8,
62		.device_list	= (enum ppc_sys_devices[])
63		{
64			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
65			MPC83xx_IIC2, MPC83xx_DUART,
66			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
67		},
68	},
69	{
70		.ppc_sys_name	= "8347E",
71		.mask 		= 0xFFFF0000,
72		.value 		= 0x80540000,
73		.num_devices	= 9,
74		.device_list	= (enum ppc_sys_devices[])
75		{
76			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
77			MPC83xx_IIC2, MPC83xx_DUART, MPC83xx_SEC2,
78			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
79		},
80	},
81	{
82		.ppc_sys_name	= "8347",
83		.mask 		= 0xFFFF0000,
84		.value 		= 0x80550000,
85		.num_devices	= 8,
86		.device_list	= (enum ppc_sys_devices[])
87		{
88			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
89			MPC83xx_IIC2, MPC83xx_DUART,
90			MPC83xx_USB2_DR, MPC83xx_USB2_MPH, MPC83xx_MDIO
91		},
92	},
93	{
94		.ppc_sys_name	= "8343E",
95		.mask 		= 0xFFFF0000,
96		.value 		= 0x80560000,
97		.num_devices	= 8,
98		.device_list	= (enum ppc_sys_devices[])
99		{
100			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
101			MPC83xx_IIC2, MPC83xx_DUART, MPC83xx_SEC2,
102			MPC83xx_USB2_DR, MPC83xx_MDIO
103		},
104	},
105	{
106		.ppc_sys_name	= "8343",
107		.mask 		= 0xFFFF0000,
108		.value 		= 0x80570000,
109		.num_devices	= 7,
110		.device_list	= (enum ppc_sys_devices[])
111		{
112			MPC83xx_TSEC1, MPC83xx_TSEC2, MPC83xx_IIC1,
113			MPC83xx_IIC2, MPC83xx_DUART,
114			MPC83xx_USB2_DR, MPC83xx_MDIO
115		},
116	},
117	{	/* default match */
118		.ppc_sys_name	= "",
119		.mask 		= 0x00000000,
120		.value 		= 0x00000000,
121	},
122};
123