/* * 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 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #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++) { /*