aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mfd
diff options
context:
space:
mode:
authorCharles Keepax <ckeepax@opensource.wolfsonmicro.com>2013-09-17 10:23:04 -0400
committerLee Jones <lee.jones@linaro.org>2013-10-23 11:21:01 -0400
commit9875555e449cc46610cdf10302e3e66365a41e94 (patch)
tree7800a3a50b914cbe9d4f4b01d4776170869f40b3 /drivers/mfd
parent26b818511c6562ce372566c219a2ef1afea35fe6 (diff)
mfd: arizona: Update registers for WM5110 DSP
DSPx_CONTROL_1 and DSPx_CLOCKING_1 are not volatile registers and are incorrectly marked as such, fix this. Also add the DSP scratch registers, which are frequently used to output debug info from the DSP core. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/wm5110-tables.c34
1 files changed, 32 insertions, 2 deletions
diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c
index 3113e39b318e..a8a9bb972cfe 100644
--- a/drivers/mfd/wm5110-tables.c
+++ b/drivers/mfd/wm5110-tables.c
@@ -2291,21 +2291,37 @@ static bool wm5110_readable_register(struct device *dev, unsigned int reg)
2291 case ARIZONA_DSP1_STATUS_1: 2291 case ARIZONA_DSP1_STATUS_1:
2292 case ARIZONA_DSP1_STATUS_2: 2292 case ARIZONA_DSP1_STATUS_2:
2293 case ARIZONA_DSP1_STATUS_3: 2293 case ARIZONA_DSP1_STATUS_3:
2294 case ARIZONA_DSP1_SCRATCH_0:
2295 case ARIZONA_DSP1_SCRATCH_1:
2296 case ARIZONA_DSP1_SCRATCH_2:
2297 case ARIZONA_DSP1_SCRATCH_3:
2294 case ARIZONA_DSP2_CONTROL_1: 2298 case ARIZONA_DSP2_CONTROL_1:
2295 case ARIZONA_DSP2_CLOCKING_1: 2299 case ARIZONA_DSP2_CLOCKING_1:
2296 case ARIZONA_DSP2_STATUS_1: 2300 case ARIZONA_DSP2_STATUS_1:
2297 case ARIZONA_DSP2_STATUS_2: 2301 case ARIZONA_DSP2_STATUS_2:
2298 case ARIZONA_DSP2_STATUS_3: 2302 case ARIZONA_DSP2_STATUS_3:
2303 case ARIZONA_DSP2_SCRATCH_0:
2304 case ARIZONA_DSP2_SCRATCH_1:
2305 case ARIZONA_DSP2_SCRATCH_2:
2306 case ARIZONA_DSP2_SCRATCH_3:
2299 case ARIZONA_DSP3_CONTROL_1: 2307 case ARIZONA_DSP3_CONTROL_1:
2300 case ARIZONA_DSP3_CLOCKING_1: 2308 case ARIZONA_DSP3_CLOCKING_1:
2301 case ARIZONA_DSP3_STATUS_1: 2309 case ARIZONA_DSP3_STATUS_1:
2302 case ARIZONA_DSP3_STATUS_2: 2310 case ARIZONA_DSP3_STATUS_2:
2303 case ARIZONA_DSP3_STATUS_3: 2311 case ARIZONA_DSP3_STATUS_3:
2312 case ARIZONA_DSP3_SCRATCH_0:
2313 case ARIZONA_DSP3_SCRATCH_1:
2314 case ARIZONA_DSP3_SCRATCH_2:
2315 case ARIZONA_DSP3_SCRATCH_3:
2304 case ARIZONA_DSP4_CONTROL_1: 2316 case ARIZONA_DSP4_CONTROL_1:
2305 case ARIZONA_DSP4_CLOCKING_1: 2317 case ARIZONA_DSP4_CLOCKING_1:
2306 case ARIZONA_DSP4_STATUS_1: 2318 case ARIZONA_DSP4_STATUS_1:
2307 case ARIZONA_DSP4_STATUS_2: 2319 case ARIZONA_DSP4_STATUS_2:
2308 case ARIZONA_DSP4_STATUS_3: 2320 case ARIZONA_DSP4_STATUS_3:
2321 case ARIZONA_DSP4_SCRATCH_0:
2322 case ARIZONA_DSP4_SCRATCH_1:
2323 case ARIZONA_DSP4_SCRATCH_2:
2324 case ARIZONA_DSP4_SCRATCH_3:
2309 return true; 2325 return true;
2310 default: 2326 default:
2311 return false; 2327 return false;
@@ -2352,20 +2368,34 @@ static bool wm5110_volatile_register(struct device *dev, unsigned int reg)
2352 case ARIZONA_FX_CTRL2: 2368 case ARIZONA_FX_CTRL2:
2353 case ARIZONA_ASRC_STATUS: 2369 case ARIZONA_ASRC_STATUS:
2354 case ARIZONA_DSP_STATUS: 2370 case ARIZONA_DSP_STATUS:
2355 case ARIZONA_DSP1_CONTROL_1:
2356 case ARIZONA_DSP1_CLOCKING_1:
2357 case ARIZONA_DSP1_STATUS_1: 2371 case ARIZONA_DSP1_STATUS_1:
2358 case ARIZONA_DSP1_STATUS_2: 2372 case ARIZONA_DSP1_STATUS_2:
2359 case ARIZONA_DSP1_STATUS_3: 2373 case ARIZONA_DSP1_STATUS_3:
2374 case ARIZONA_DSP1_SCRATCH_0:
2375 case ARIZONA_DSP1_SCRATCH_1:
2376 case ARIZONA_DSP1_SCRATCH_2:
2377 case ARIZONA_DSP1_SCRATCH_3:
2360 case ARIZONA_DSP2_STATUS_1: 2378 case ARIZONA_DSP2_STATUS_1:
2361 case ARIZONA_DSP2_STATUS_2: 2379 case ARIZONA_DSP2_STATUS_2:
2362 case ARIZONA_DSP2_STATUS_3: 2380 case ARIZONA_DSP2_STATUS_3:
2381 case ARIZONA_DSP2_SCRATCH_0:
2382 case ARIZONA_DSP2_SCRATCH_1:
2383 case ARIZONA_DSP2_SCRATCH_2:
2384 case ARIZONA_DSP2_SCRATCH_3:
2363 case ARIZONA_DSP3_STATUS_1: 2385 case ARIZONA_DSP3_STATUS_1:
2364 case ARIZONA_DSP3_STATUS_2: 2386 case ARIZONA_DSP3_STATUS_2:
2365 case ARIZONA_DSP3_STATUS_3: 2387 case ARIZONA_DSP3_STATUS_3:
2388 case ARIZONA_DSP3_SCRATCH_0:
2389 case ARIZONA_DSP3_SCRATCH_1:
2390 case ARIZONA_DSP3_SCRATCH_2:
2391 case ARIZONA_DSP3_SCRATCH_3:
2366 case ARIZONA_DSP4_STATUS_1: 2392 case ARIZONA_DSP4_STATUS_1:
2367 case ARIZONA_DSP4_STATUS_2: 2393 case ARIZONA_DSP4_STATUS_2:
2368 case ARIZONA_DSP4_STATUS_3: 2394 case ARIZONA_DSP4_STATUS_3:
2395 case ARIZONA_DSP4_SCRATCH_0:
2396 case ARIZONA_DSP4_SCRATCH_1:
2397 case ARIZONA_DSP4_SCRATCH_2:
2398 case ARIZONA_DSP4_SCRATCH_3:
2369 return true; 2399 return true;
2370 default: 2400 default:
2371 return false; 2401 return false;