pcsp.c (8c57a5e7b2820f349c95b8c8393fec1e0f4070d2) pcsp.c (2cded8c891fe04bea5772fad20c96c72315b9014)
1/*
2 * PC-Speaker driver for Linux
3 *
4 * Copyright (C) 1997-2001 David Woodhouse
5 * Copyright (C) 2001-2008 Stas Sergeev
6 */
7
8#include <linux/init.h>

--- 94 unchanged lines hidden (view full) ---

103 hrtimer_init(&pcsp_chip.timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
104 pcsp_chip.timer.function = pcsp_do_timer;
105
106 err = snd_card_new(dev, index, id, THIS_MODULE, 0, &card);
107 if (err < 0)
108 return err;
109
110 err = snd_pcsp_create(card);
1/*
2 * PC-Speaker driver for Linux
3 *
4 * Copyright (C) 1997-2001 David Woodhouse
5 * Copyright (C) 2001-2008 Stas Sergeev
6 */
7
8#include <linux/init.h>

--- 94 unchanged lines hidden (view full) ---

103 hrtimer_init(&pcsp_chip.timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
104 pcsp_chip.timer.function = pcsp_do_timer;
105
106 err = snd_card_new(dev, index, id, THIS_MODULE, 0, &card);
107 if (err < 0)
108 return err;
109
110 err = snd_pcsp_create(card);
111 if (err < 0) {
112 snd_card_free(card);
113 return err;
114 }
111 if (err < 0)
112 goto free_card;
113
115 if (!nopcm) {
116 err = snd_pcsp_new_pcm(&pcsp_chip);
114 if (!nopcm) {
115 err = snd_pcsp_new_pcm(&pcsp_chip);
117 if (err < 0) {
118 snd_card_free(card);
119 return err;
120 }
116 if (err < 0)
117 goto free_card;
121 }
122 err = snd_pcsp_new_mixer(&pcsp_chip, nopcm);
118 }
119 err = snd_pcsp_new_mixer(&pcsp_chip, nopcm);
123 if (err < 0) {
124 snd_card_free(card);
125 return err;
126 }
120 if (err < 0)
121 goto free_card;
127
128 strcpy(card->driver, "PC-Speaker");
129 strcpy(card->shortname, "pcsp");
130 sprintf(card->longname, "Internal PC-Speaker at port 0x%x",
131 pcsp_chip.port);
132
133 err = snd_card_register(card);
122
123 strcpy(card->driver, "PC-Speaker");
124 strcpy(card->shortname, "pcsp");
125 sprintf(card->longname, "Internal PC-Speaker at port 0x%x",
126 pcsp_chip.port);
127
128 err = snd_card_register(card);
134 if (err < 0) {
135 snd_card_free(card);
136 return err;
137 }
129 if (err < 0)
130 goto free_card;
138
139 return 0;
131
132 return 0;
133
134free_card:
135 snd_card_free(card);
136 return err;
140}
141
142static int alsa_card_pcsp_init(struct device *dev)
143{
144 int err;
145
146 err = snd_card_pcsp_probe(0, dev);
147 if (err) {

--- 95 unchanged lines hidden ---
137}
138
139static int alsa_card_pcsp_init(struct device *dev)
140{
141 int err;
142
143 err = snd_card_pcsp_probe(0, dev);
144 if (err) {

--- 95 unchanged lines hidden ---