Skip to content

Commit

Permalink
Merge tag 'sound-fix-3.17-rc1' of git://git.kernel.org/pub/scm/linux/…
Browse files Browse the repository at this point in the history
…kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "Here is the additional fix patches that have been queued up since the
  previous pull request.  A few HD-audio fixes, a USB-audio quirk
  addition, and a couple of trivial cleanup for the legacy OSS codes"

* tag 'sound-fix-3.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: hda - Set TLV_DB_SCALE_MUTE bit for cx5051 vmaster
  ALSA: hda/ca0132 - Don't try loading firmware at resume when already failed
  ALSA: hda - Fix pop noises on reboot for Dell XPS 13 9333
  ALSA: hda - Set internal mic as default input source on Dell XPS 13 9333
  ALSA: usb-audio: fix BOSS ME-25 MIDI regression
  ALSA: hda - Fix parsing of CMI8888 codec
  ALSA: hda - Fix probing and stuttering on CMI8888 HD-audio controller
  ALSA: hda/realtek - Fixed ALC286/ALC288 recording delay for Headset Mic
  sound: oss: Remove typedefs wanc_info and wavnc_port_info
  sound: oss: uart401: Remove typedef uart401_devc
  • Loading branch information
torvalds committed Aug 16, 2014
2 parents d22af68 + 61074c1 commit ffb29b4
Show file tree
Hide file tree
Showing 8 changed files with 239 additions and 89 deletions.
40 changes: 21 additions & 19 deletions sound/oss/uart401.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@

#include "mpu401.h"

typedef struct uart401_devc
struct uart401_devc
{
int base;
int irq;
Expand All @@ -41,32 +41,31 @@ typedef struct uart401_devc
int my_dev;
int share_irq;
spinlock_t lock;
}
uart401_devc;
};

#define DATAPORT (devc->base)
#define COMDPORT (devc->base+1)
#define STATPORT (devc->base+1)

static int uart401_status(uart401_devc * devc)
static int uart401_status(struct uart401_devc *devc)
{
return inb(STATPORT);
}

#define input_avail(devc) (!(uart401_status(devc)&INPUT_AVAIL))
#define output_ready(devc) (!(uart401_status(devc)&OUTPUT_READY))

static void uart401_cmd(uart401_devc * devc, unsigned char cmd)
static void uart401_cmd(struct uart401_devc *devc, unsigned char cmd)
{
outb((cmd), COMDPORT);
}

static int uart401_read(uart401_devc * devc)
static int uart401_read(struct uart401_devc *devc)
{
return inb(DATAPORT);
}

static void uart401_write(uart401_devc * devc, unsigned char byte)
static void uart401_write(struct uart401_devc *devc, unsigned char byte)
{
outb((byte), DATAPORT);
}
Expand All @@ -77,10 +76,10 @@ static void uart401_write(uart401_devc * devc, unsigned char byte)
#define MPU_RESET 0xFF
#define UART_MODE_ON 0x3F

static int reset_uart401(uart401_devc * devc);
static void enter_uart_mode(uart401_devc * devc);
static int reset_uart401(struct uart401_devc *devc);
static void enter_uart_mode(struct uart401_devc *devc);

static void uart401_input_loop(uart401_devc * devc)
static void uart401_input_loop(struct uart401_devc *devc)
{
int work_limit=30000;

Expand All @@ -99,7 +98,7 @@ static void uart401_input_loop(uart401_devc * devc)

irqreturn_t uart401intr(int irq, void *dev_id)
{
uart401_devc *devc = dev_id;
struct uart401_devc *devc = dev_id;

if (devc == NULL)
{
Expand All @@ -118,7 +117,8 @@ uart401_open(int dev, int mode,
void (*output) (int dev)
)
{
uart401_devc *devc = (uart401_devc *) midi_devs[dev]->devc;
struct uart401_devc *devc = (struct uart401_devc *)
midi_devs[dev]->devc;

if (devc->opened)
return -EBUSY;
Expand All @@ -138,7 +138,8 @@ uart401_open(int dev, int mode,

static void uart401_close(int dev)
{
uart401_devc *devc = (uart401_devc *) midi_devs[dev]->devc;
struct uart401_devc *devc = (struct uart401_devc *)
midi_devs[dev]->devc;

reset_uart401(devc);
devc->opened = 0;
Expand All @@ -148,7 +149,8 @@ static int uart401_out(int dev, unsigned char midi_byte)
{
int timeout;
unsigned long flags;
uart401_devc *devc = (uart401_devc *) midi_devs[dev]->devc;
struct uart401_devc *devc = (struct uart401_devc *)
midi_devs[dev]->devc;

if (devc->disabled)
return 1;
Expand Down Expand Up @@ -219,7 +221,7 @@ static const struct midi_operations uart401_operations =
.buffer_status = uart401_buffer_status,
};

static void enter_uart_mode(uart401_devc * devc)
static void enter_uart_mode(struct uart401_devc *devc)
{
int ok, timeout;
unsigned long flags;
Expand All @@ -241,7 +243,7 @@ static void enter_uart_mode(uart401_devc * devc)
spin_unlock_irqrestore(&devc->lock,flags);
}

static int reset_uart401(uart401_devc * devc)
static int reset_uart401(struct uart401_devc *devc)
{
int ok, timeout, n;

Expand Down Expand Up @@ -285,7 +287,7 @@ static int reset_uart401(uart401_devc * devc)

int probe_uart401(struct address_info *hw_config, struct module *owner)
{
uart401_devc *devc;
struct uart401_devc *devc;
char *name = "MPU-401 (UART) MIDI";
int ok = 0;
unsigned long flags;
Expand All @@ -300,7 +302,7 @@ int probe_uart401(struct address_info *hw_config, struct module *owner)
return 0;
}

devc = kmalloc(sizeof(uart401_devc), GFP_KERNEL);
devc = kmalloc(sizeof(struct uart401_devc), GFP_KERNEL);
if (!devc) {
printk(KERN_WARNING "uart401: Can't allocate memory\n");
goto cleanup_region;
Expand Down Expand Up @@ -392,7 +394,7 @@ int probe_uart401(struct address_info *hw_config, struct module *owner)

void unload_uart401(struct address_info *hw_config)
{
uart401_devc *devc;
struct uart401_devc *devc;
int n=hw_config->slots[4];

/* Not set up */
Expand Down
Loading

0 comments on commit ffb29b4

Please sign in to comment.