| /* |
| * linux/drivers/devfreq/freq_table.c |
| * |
| * Copyright (C) 2014 Marvell International Ltd. |
| * All rights reserved. |
| * |
| * 2012-01-13 Qiming Wu<wuqm@marvell.com> |
| * |
| * This file is subject to the terms and conditions of the GNU General Public |
| * License. See the file COPYING in the main directory of this archive for |
| * more details. |
| */ |
| |
| #include <linux/devfreq.h> |
| |
| static struct devfreq_dev_freq_info devices_freq_info[DEVFREQ_MAX_ID]; |
| |
| void devfreq_frequency_table_register(struct devfreq_frequency_table *table, |
| unsigned int dev_id) |
| { |
| if (dev_id > DEVFREQ_MAX_ID) { |
| pr_err("Invalid dev_id %d for devfreq! The max id = %d\n", |
| dev_id, DEVFREQ_MAX_ID); |
| BUG_ON(1); |
| return; |
| } |
| |
| if (devices_freq_info[dev_id].tbl != NULL) |
| pr_warn("devfreq freq table %d will be overridden!\n", |
| dev_id); |
| |
| devices_freq_info[dev_id].tbl = table; |
| } |
| |
| struct devfreq_frequency_table *devfreq_frequency_get_table(unsigned int dev_id) |
| { |
| if (dev_id > DEVFREQ_MAX_ID) { |
| pr_err("Invalid dev_id for devfreq! The max id = %d\n", |
| DEVFREQ_MAX_ID); |
| BUG_ON(1); |
| return NULL; |
| } |
| |
| return devices_freq_info[dev_id].tbl; |
| } |