From: Stephen Rothwell Date: Thu, 27 Sep 2012 05:16:53 +0000 (+1000) Subject: Merge remote-tracking branch 'staging/staging-next' X-Git-Tag: next-20120927~21 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=35431a2000374420693d3f0d78811b4ddc0c7f28;p=karo-tx-linux.git Merge remote-tracking branch 'staging/staging-next' Conflicts: drivers/staging/Kconfig drivers/staging/Makefile drivers/staging/android/binder.c drivers/staging/ipack/devices/ipoctal.c drivers/staging/omap-thermal/omap-thermal-common.c drivers/staging/serqt_usb2/serqt_usb2.c --- 35431a2000374420693d3f0d78811b4ddc0c7f28 diff --cc drivers/staging/Kconfig index 21114512fcb2,0f51a158ef70..449f04af483e --- a/drivers/staging/Kconfig +++ b/drivers/staging/Kconfig @@@ -136,6 -134,12 +134,14 @@@ source "drivers/staging/csr/Kconfig source "drivers/staging/omap-thermal/Kconfig" +source "drivers/staging/dgrp/Kconfig" + + source "drivers/staging/ramster/Kconfig" + + source "drivers/staging/silicom/Kconfig" + + source "drivers/staging/ced1401/Kconfig" + + source "drivers/staging/imx-drm/Kconfig" + endif # STAGING diff --cc drivers/staging/Makefile index 17c43c4cacaa,f4b2bc41f1d1..a19abe5381bf --- a/drivers/staging/Makefile +++ b/drivers/staging/Makefile @@@ -60,4 -59,7 +59,8 @@@ obj-$(CONFIG_USB_G_CCG) += ccg obj-$(CONFIG_WIMAX_GDM72XX) += gdm72xx/ obj-$(CONFIG_CSR_WIFI) += csr/ obj-$(CONFIG_OMAP_BANDGAP) += omap-thermal/ +obj-$(CONFIG_DGRP) += dgrp/ + obj-$(CONFIG_ZCACHE2) += ramster/ + obj-$(CONFIG_NET_VENDOR_SILICOM) += silicom/ + obj-$(CONFIG_CED1401) += ced1401/ + obj-$(CONFIG_DRM_IMX) += imx-drm/ diff --cc drivers/staging/android/binder.c index f71d624995ea,a807129c7b5a..2a4109281acc --- a/drivers/staging/android/binder.c +++ b/drivers/staging/android/binder.c @@@ -362,9 -362,14 +362,9 @@@ struct binder_transaction static void binder_defer_work(struct binder_proc *proc, enum binder_deferred_state defer); - int task_get_unused_fd_flags(struct binder_proc *proc, int flags) -/* - * copied from get_unused_fd_flags - */ + static int task_get_unused_fd_flags(struct binder_proc *proc, int flags) { struct files_struct *files = proc->files; - int fd, error; - struct fdtable *fdt; unsigned long rlim_cur; unsigned long irqs; diff --cc drivers/staging/ipack/devices/ipoctal.c index a68d981c259f,2cdbf280cdab..d751edfda839 --- a/drivers/staging/ipack/devices/ipoctal.c +++ b/drivers/staging/ipack/devices/ipoctal.c @@@ -490,19 -429,26 +429,26 @@@ static int ipoctal_inst_slot(struct ipo ipoctal->tty_drv = tty; for (i = 0; i < NR_CHANNELS; i++) { - tty_port_init(&ipoctal->tty_port[i]); - tty_port_alloc_xmit_buf(&ipoctal->tty_port[i]); - ipoctal->tty_port[i].ops = &ipoctal_tty_port_ops; - - ipoctal_reset_stats(&ipoctal->chan_stats[i]); - ipoctal->nb_bytes[i] = 0; - init_waitqueue_head(&ipoctal->queue[i]); - - spin_lock_init(&ipoctal->lock[i]); - ipoctal->pointer_read[i] = 0; - ipoctal->pointer_write[i] = 0; - ipoctal->nb_bytes[i] = 0; - tty_port_register_device(&ipoctal->tty_port[i], tty, i, NULL); + struct device *tty_dev; + + channel = &ipoctal->channel[i]; + tty_port_init(&channel->tty_port); + tty_port_alloc_xmit_buf(&channel->tty_port); + channel->tty_port.ops = &ipoctal_tty_port_ops; + + ipoctal_reset_stats(&channel->stats); + channel->nb_bytes = 0; + init_waitqueue_head(&channel->queue); + + spin_lock_init(&channel->lock); + channel->pointer_read = 0; + channel->pointer_write = 0; - tty_dev = tty_register_device(tty, i, NULL); ++ tty_dev = tty_port_register_device(&channel->tty_port, tty, i, NULL); + if (IS_ERR(tty_dev)) { + dev_err(&ipoctal->dev->dev, "Failed to register tty device.\n"); + continue; + } + dev_set_drvdata(tty_dev, channel); /* * Enable again the RX. TX will be enabled when @@@ -613,23 -540,17 +540,17 @@@ static void ipoctal_set_termios(struct unsigned char mr1 = 0; unsigned char mr2 = 0; unsigned char csr = 0; - unsigned int channel = tty->index; - struct ipoctal *ipoctal = tty->driver_data; + struct ipoctal_channel *channel = tty->driver_data; speed_t baud; - cflag = tty->termios->c_cflag; + cflag = tty->termios.c_cflag; /* Disable and reset everything before change the setup */ - ipoctal_write_io_reg(ipoctal, &ipoctal->chan_regs[channel].u.w.cr, - CR_DISABLE_RX | CR_DISABLE_TX); - ipoctal_write_cr_cmd(ipoctal, &ipoctal->chan_regs[channel].u.w.cr, - CR_CMD_RESET_RX); - ipoctal_write_cr_cmd(ipoctal, &ipoctal->chan_regs[channel].u.w.cr, - CR_CMD_RESET_TX); - ipoctal_write_cr_cmd(ipoctal, &ipoctal->chan_regs[channel].u.w.cr, - CR_CMD_RESET_ERR_STATUS); - ipoctal_write_cr_cmd(ipoctal, &ipoctal->chan_regs[channel].u.w.cr, - CR_CMD_RESET_MR); + iowrite8(CR_DISABLE_RX | CR_DISABLE_TX, &channel->regs->w.cr); + iowrite8(CR_CMD_RESET_RX, &channel->regs->w.cr); + iowrite8(CR_CMD_RESET_TX, &channel->regs->w.cr); + iowrite8(CR_CMD_RESET_ERR_STATUS, &channel->regs->w.cr); + iowrite8(CR_CMD_RESET_MR, &channel->regs->w.cr); /* Set Bits per chars */ switch (cflag & CSIZE) {