aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2013-05-08 08:55:23 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2013-05-12 10:46:47 -0400
commit154881e59b8dbf84121e3e78c4e613e840752aa9 (patch)
tree882edae69649d9dc69bbd1d172b298db17d16ed5 /drivers/base
parent697e85bc6a9aa44ecd73392586fe9cfd7e0467ba (diff)
regmap: Make regmap_check_range_table() a public API
Allow drivers to use an access table as part of their implementation. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/regmap/regmap.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
index a941dcfe7590..307f5a1c1fe8 100644
--- a/drivers/base/regmap/regmap.c
+++ b/drivers/base/regmap/regmap.c
@@ -65,9 +65,8 @@ bool regmap_reg_in_ranges(unsigned int reg,
65} 65}
66EXPORT_SYMBOL_GPL(regmap_reg_in_ranges); 66EXPORT_SYMBOL_GPL(regmap_reg_in_ranges);
67 67
68static bool _regmap_check_range_table(struct regmap *map, 68bool regmap_check_range_table(struct regmap *map, unsigned int reg,
69 unsigned int reg, 69 const struct regmap_access_table *table)
70 const struct regmap_access_table *table)
71{ 70{
72 /* Check "no ranges" first */ 71 /* Check "no ranges" first */
73 if (regmap_reg_in_ranges(reg, table->no_ranges, table->n_no_ranges)) 72 if (regmap_reg_in_ranges(reg, table->no_ranges, table->n_no_ranges))
@@ -80,6 +79,7 @@ static bool _regmap_check_range_table(struct regmap *map,
80 return regmap_reg_in_ranges(reg, table->yes_ranges, 79 return regmap_reg_in_ranges(reg, table->yes_ranges,
81 table->n_yes_ranges); 80 table->n_yes_ranges);
82} 81}
82EXPORT_SYMBOL_GPL(regmap_check_range_table);
83 83
84bool regmap_writeable(struct regmap *map, unsigned int reg) 84bool regmap_writeable(struct regmap *map, unsigned int reg)
85{ 85{
@@ -90,7 +90,7 @@ bool regmap_writeable(struct regmap *map, unsigned int reg)
90 return map->writeable_reg(map->dev, reg); 90 return map->writeable_reg(map->dev, reg);
91 91
92 if (map->wr_table) 92 if (map->wr_table)
93 return _regmap_check_range_table(map, reg, map->wr_table); 93 return regmap_check_range_table(map, reg, map->wr_table);
94 94
95 return true; 95 return true;
96} 96}
@@ -107,7 +107,7 @@ bool regmap_readable(struct regmap *map, unsigned int reg)
107 return map->readable_reg(map->dev, reg); 107 return map->readable_reg(map->dev, reg);
108 108
109 if (map->rd_table) 109 if (map->rd_table)
110 return _regmap_check_range_table(map, reg, map->rd_table); 110 return regmap_check_range_table(map, reg, map->rd_table);
111 111
112 return true; 112 return true;
113} 113}
@@ -121,7 +121,7 @@ bool regmap_volatile(struct regmap *map, unsigned int reg)
121 return map->volatile_reg(map->dev, reg); 121 return map->volatile_reg(map->dev, reg);
122 122
123 if (map->volatile_table) 123 if (map->volatile_table)
124 return _regmap_check_range_table(map, reg, map->volatile_table); 124 return regmap_check_range_table(map, reg, map->volatile_table);
125 125
126 return true; 126 return true;
127} 127}
@@ -135,7 +135,7 @@ bool regmap_precious(struct regmap *map, unsigned int reg)
135 return map->precious_reg(map->dev, reg); 135 return map->precious_reg(map->dev, reg);
136 136
137 if (map->precious_table) 137 if (map->precious_table)
138 return _regmap_check_range_table(map, reg, map->precious_table); 138 return regmap_check_range_table(map, reg, map->precious_table);
139 139
140 return false; 140 return false;
141} 141}