diff options
Diffstat (limited to 'sound/oss/vwsnd.c')
-rw-r--r-- | sound/oss/vwsnd.c | 40 |
1 files changed, 19 insertions, 21 deletions
diff --git a/sound/oss/vwsnd.c b/sound/oss/vwsnd.c index b372e88e857f..5f140c7586b3 100644 --- a/sound/oss/vwsnd.c +++ b/sound/oss/vwsnd.c | |||
@@ -248,27 +248,6 @@ typedef struct lithium { | |||
248 | } lithium_t; | 248 | } lithium_t; |
249 | 249 | ||
250 | /* | 250 | /* |
251 | * li_create initializes the lithium_t structure and sets up vm mappings | ||
252 | * to access the registers. | ||
253 | * Returns 0 on success, -errno on failure. | ||
254 | */ | ||
255 | |||
256 | static int __init li_create(lithium_t *lith, unsigned long baseaddr) | ||
257 | { | ||
258 | static void li_destroy(lithium_t *); | ||
259 | |||
260 | spin_lock_init(&lith->lock); | ||
261 | lith->page0 = ioremap_nocache(baseaddr + LI_PAGE0_OFFSET, PAGE_SIZE); | ||
262 | lith->page1 = ioremap_nocache(baseaddr + LI_PAGE1_OFFSET, PAGE_SIZE); | ||
263 | lith->page2 = ioremap_nocache(baseaddr + LI_PAGE2_OFFSET, PAGE_SIZE); | ||
264 | if (!lith->page0 || !lith->page1 || !lith->page2) { | ||
265 | li_destroy(lith); | ||
266 | return -ENOMEM; | ||
267 | } | ||
268 | return 0; | ||
269 | } | ||
270 | |||
271 | /* | ||
272 | * li_destroy destroys the lithium_t structure and vm mappings. | 251 | * li_destroy destroys the lithium_t structure and vm mappings. |
273 | */ | 252 | */ |
274 | 253 | ||
@@ -289,6 +268,25 @@ static void li_destroy(lithium_t *lith) | |||
289 | } | 268 | } |
290 | 269 | ||
291 | /* | 270 | /* |
271 | * li_create initializes the lithium_t structure and sets up vm mappings | ||
272 | * to access the registers. | ||
273 | * Returns 0 on success, -errno on failure. | ||
274 | */ | ||
275 | |||
276 | static int __init li_create(lithium_t *lith, unsigned long baseaddr) | ||
277 | { | ||
278 | spin_lock_init(&lith->lock); | ||
279 | lith->page0 = ioremap_nocache(baseaddr + LI_PAGE0_OFFSET, PAGE_SIZE); | ||
280 | lith->page1 = ioremap_nocache(baseaddr + LI_PAGE1_OFFSET, PAGE_SIZE); | ||
281 | lith->page2 = ioremap_nocache(baseaddr + LI_PAGE2_OFFSET, PAGE_SIZE); | ||
282 | if (!lith->page0 || !lith->page1 || !lith->page2) { | ||
283 | li_destroy(lith); | ||
284 | return -ENOMEM; | ||
285 | } | ||
286 | return 0; | ||
287 | } | ||
288 | |||
289 | /* | ||
292 | * basic register accessors - read/write long/byte | 290 | * basic register accessors - read/write long/byte |
293 | */ | 291 | */ |
294 | 292 | ||