| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 | 
							- /*
 
-  * Critical Link MityOMAP-L138 SoM
 
-  *
 
-  * Copyright (C) 2010 Critical Link LLC - http://www.criticallink.com
 
-  *
 
-  * This file is licensed under the terms of the GNU General Public License
 
-  * version 2. This program is licensed "as is" without any warranty of
 
-  * any kind, whether express or implied.
 
-  */
 
- #include <linux/kernel.h>
 
- #include <linux/init.h>
 
- #include <linux/console.h>
 
- #include <linux/platform_device.h>
 
- #include <linux/mtd/partitions.h>
 
- #include <linux/regulator/machine.h>
 
- #include <linux/i2c.h>
 
- #include <linux/i2c/at24.h>
 
- #include <linux/etherdevice.h>
 
- #include <linux/spi/spi.h>
 
- #include <linux/spi/flash.h>
 
- #include <asm/io.h>
 
- #include <asm/mach-types.h>
 
- #include <asm/mach/arch.h>
 
- #include <mach/common.h>
 
- #include <mach/cp_intc.h>
 
- #include <mach/da8xx.h>
 
- #include <linux/platform_data/mtd-davinci.h>
 
- #include <mach/mux.h>
 
- #include <linux/platform_data/spi-davinci.h>
 
- #define MITYOMAPL138_PHY_ID		""
 
- #define FACTORY_CONFIG_MAGIC	0x012C0138
 
- #define FACTORY_CONFIG_VERSION	0x00010001
 
- /* Data Held in On-Board I2C device */
 
- struct factory_config {
 
- 	u32	magic;
 
- 	u32	version;
 
- 	u8	mac[6];
 
- 	u32	fpga_type;
 
- 	u32	spare;
 
- 	u32	serialnumber;
 
- 	char	partnum[32];
 
- };
 
- static struct factory_config factory_config;
 
- struct part_no_info {
 
- 	const char	*part_no;	/* part number string of interest */
 
- 	int		max_freq;	/* khz */
 
- };
 
- static struct part_no_info mityomapl138_pn_info[] = {
 
- 	{
 
- 		.part_no	= "L138-C",
 
- 		.max_freq	= 300000,
 
- 	},
 
- 	{
 
- 		.part_no	= "L138-D",
 
- 		.max_freq	= 375000,
 
- 	},
 
- 	{
 
- 		.part_no	= "L138-F",
 
- 		.max_freq	= 456000,
 
- 	},
 
- 	{
 
- 		.part_no	= "1808-C",
 
- 		.max_freq	= 300000,
 
- 	},
 
- 	{
 
- 		.part_no	= "1808-D",
 
- 		.max_freq	= 375000,
 
- 	},
 
- 	{
 
- 		.part_no	= "1808-F",
 
- 		.max_freq	= 456000,
 
- 	},
 
- 	{
 
- 		.part_no	= "1810-D",
 
- 		.max_freq	= 375000,
 
- 	},
 
- };
 
- #ifdef CONFIG_CPU_FREQ
 
- static void mityomapl138_cpufreq_init(const char *partnum)
 
- {
 
- 	int i, ret;
 
- 	for (i = 0; partnum && i < ARRAY_SIZE(mityomapl138_pn_info); i++) {
 
- 		/*
 
 
  |