Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6
* 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (76 commits) pch_uart: reference clock on CM-iTC pch_phub: add new device ML7213 n_gsm: fix UIH control byte : P bit should be 0 n_gsm: add a documentation serial: msm_serial_hs: Add MSM high speed UART driver tty_audit: fix tty_audit_add_data live lock on audit disabled tty: move cd1865.h to drivers/staging/tty/ Staging: tty: fix build with epca.c driver pcmcia: synclink_cs: fix prototype for mgslpc_ioctl() Staging: generic_serial: fix double locking bug nozomi: don't use flush_scheduled_work() tty/serial: Relax the device_type restriction from of_serial MAINTAINERS: Update HVC file patterns tty: phase out of ioctl file pointer for tty3270 as well tty: forgot to remove ipwireless from drivers/char/pcmcia/Makefile pch_uart: Fix DMA channel miss-setting issue. pch_uart: fix exclusive access issue pch_uart: fix auto flow control miss-setting issue pch_uart: fix uart clock setting issue pch_uart : Use dev_xxx not pr_xxx ... Fix up trivial conflicts in drivers/misc/pch_phub.c (same patch applied twice, then changes to the same area in one branch)
This commit is contained in:
@@ -73,6 +73,7 @@
|
||||
#define TCSETXF 0x5434
|
||||
#define TCSETXW 0x5435
|
||||
#define TIOCSIG _IOW('T', 0x36, int) /* pty: generate signal */
|
||||
#define TIOCVHANGUP 0x5437
|
||||
|
||||
#define FIONCLEX 0x5450
|
||||
#define FIOCLEX 0x5451
|
||||
|
||||
@@ -50,11 +50,12 @@ struct kbd_struct {
|
||||
#define VC_CAPSLOCK 2 /* capslock mode */
|
||||
#define VC_KANALOCK 3 /* kanalock mode */
|
||||
|
||||
unsigned char kbdmode:2; /* one 2-bit value */
|
||||
unsigned char kbdmode:3; /* one 3-bit value */
|
||||
#define VC_XLATE 0 /* translate keycodes using keymap */
|
||||
#define VC_MEDIUMRAW 1 /* medium raw (keycode) mode */
|
||||
#define VC_RAW 2 /* raw (scancode) mode */
|
||||
#define VC_UNICODE 3 /* Unicode mode */
|
||||
#define VC_OFF 4 /* disabled mode */
|
||||
|
||||
unsigned char modeflags:5;
|
||||
#define VC_APPLIC 0 /* application key mode */
|
||||
|
||||
@@ -81,6 +81,7 @@ struct unimapinit {
|
||||
#define K_XLATE 0x01
|
||||
#define K_MEDIUMRAW 0x02
|
||||
#define K_UNICODE 0x03
|
||||
#define K_OFF 0x04
|
||||
#define KDGKBMODE 0x4B44 /* gets current keyboard mode */
|
||||
#define KDSKBMODE 0x4B45 /* sets current keyboard mode */
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* Copyright (C) 2008 Google, Inc.
|
||||
* Author: Nick Pelly <npelly@google.com>
|
||||
*
|
||||
* This software is licensed under the terms of the GNU General Public
|
||||
* License version 2, as published by the Free Software Foundation, and
|
||||
* may be copied, distributed, and modified under those terms.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef __ASM_ARCH_MSM_SERIAL_HS_H
|
||||
#define __ASM_ARCH_MSM_SERIAL_HS_H
|
||||
|
||||
#include <linux/serial_core.h>
|
||||
|
||||
/* API to request the uart clock off or on for low power management
|
||||
* Clients should call request_clock_off() when no uart data is expected,
|
||||
* and must call request_clock_on() before any further uart data can be
|
||||
* received. */
|
||||
extern void msm_hs_request_clock_off(struct uart_port *uport);
|
||||
extern void msm_hs_request_clock_on(struct uart_port *uport);
|
||||
|
||||
/**
|
||||
* struct msm_serial_hs_platform_data
|
||||
* @rx_wakeup_irq: Rx activity irq
|
||||
* @rx_to_inject: extra character to be inserted to Rx tty on wakeup
|
||||
* @inject_rx: 1 = insert rx_to_inject. 0 = do not insert extra character
|
||||
* @exit_lpm_cb: function called before every Tx transaction
|
||||
*
|
||||
* This is an optional structure required for UART Rx GPIO IRQ based
|
||||
* wakeup from low power state. UART wakeup can be triggered by RX activity
|
||||
* (using a wakeup GPIO on the UART RX pin). This should only be used if
|
||||
* there is not a wakeup GPIO on the UART CTS, and the first RX byte is
|
||||
* known (eg., with the Bluetooth Texas Instruments HCILL protocol),
|
||||
* since the first RX byte will always be lost. RTS will be asserted even
|
||||
* while the UART is clocked off in this mode of operation.
|
||||
*/
|
||||
struct msm_serial_hs_platform_data {
|
||||
int rx_wakeup_irq;
|
||||
unsigned char inject_rx_on_wakeup;
|
||||
char rx_to_inject;
|
||||
void (*exit_lpm_cb)(struct uart_port *);
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -2,13 +2,18 @@
|
||||
#define LINUX_IFX_MODEM_H
|
||||
|
||||
struct ifx_modem_platform_data {
|
||||
unsigned short rst_out; /* modem reset out */
|
||||
unsigned short pwr_on; /* power on */
|
||||
unsigned short rst_pmu; /* reset modem */
|
||||
unsigned short tx_pwr; /* modem power threshold */
|
||||
unsigned short srdy; /* SRDY */
|
||||
unsigned short mrdy; /* MRDY */
|
||||
unsigned short is_6160; /* Modem type */
|
||||
unsigned short rst_out; /* modem reset out */
|
||||
unsigned short pwr_on; /* power on */
|
||||
unsigned short rst_pmu; /* reset modem */
|
||||
unsigned short tx_pwr; /* modem power threshold */
|
||||
unsigned short srdy; /* SRDY */
|
||||
unsigned short mrdy; /* MRDY */
|
||||
unsigned char modem_type; /* Modem type */
|
||||
unsigned long max_hz; /* max SPI frequency */
|
||||
unsigned short use_dma:1; /* spi protocol driver supplies
|
||||
dma-able addrs */
|
||||
};
|
||||
#define IFX_MODEM_6160 1
|
||||
#define IFX_MODEM_6260 2
|
||||
|
||||
#endif
|
||||
|
||||
+3
-2
@@ -448,6 +448,7 @@ extern void tty_encode_baud_rate(struct tty_struct *tty,
|
||||
speed_t ibaud, speed_t obaud);
|
||||
extern void tty_termios_copy_hw(struct ktermios *new, struct ktermios *old);
|
||||
extern int tty_termios_hw_change(struct ktermios *a, struct ktermios *b);
|
||||
extern int tty_set_termios(struct tty_struct *tty, struct ktermios *kt);
|
||||
|
||||
extern struct tty_ldisc *tty_ldisc_ref(struct tty_struct *);
|
||||
extern void tty_ldisc_deref(struct tty_ldisc *);
|
||||
@@ -584,10 +585,10 @@ extern int pcxe_open(struct tty_struct *tty, struct file *filp);
|
||||
|
||||
/* vt.c */
|
||||
|
||||
extern int vt_ioctl(struct tty_struct *tty, struct file *file,
|
||||
extern int vt_ioctl(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
|
||||
extern long vt_compat_ioctl(struct tty_struct *tty, struct file * file,
|
||||
extern long vt_compat_ioctl(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
|
||||
/* tty_mutex.c */
|
||||
|
||||
@@ -98,8 +98,7 @@
|
||||
*
|
||||
* Note: Do not call this function directly, call tty_write_room
|
||||
*
|
||||
* int (*ioctl)(struct tty_struct *tty, struct file * file,
|
||||
* unsigned int cmd, unsigned long arg);
|
||||
* int (*ioctl)(struct tty_struct *tty, unsigned int cmd, unsigned long arg);
|
||||
*
|
||||
* This routine allows the tty driver to implement
|
||||
* device-specific ioctls. If the ioctl number passed in cmd
|
||||
@@ -107,7 +106,7 @@
|
||||
*
|
||||
* Optional
|
||||
*
|
||||
* long (*compat_ioctl)(struct tty_struct *tty, struct file * file,
|
||||
* long (*compat_ioctl)(struct tty_struct *tty,,
|
||||
* unsigned int cmd, unsigned long arg);
|
||||
*
|
||||
* implement ioctl processing for 32 bit process on 64 bit system
|
||||
@@ -256,9 +255,9 @@ struct tty_operations {
|
||||
void (*flush_chars)(struct tty_struct *tty);
|
||||
int (*write_room)(struct tty_struct *tty);
|
||||
int (*chars_in_buffer)(struct tty_struct *tty);
|
||||
int (*ioctl)(struct tty_struct *tty, struct file * file,
|
||||
int (*ioctl)(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
long (*compat_ioctl)(struct tty_struct *tty, struct file * file,
|
||||
long (*compat_ioctl)(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
void (*set_termios)(struct tty_struct *tty, struct ktermios * old);
|
||||
void (*throttle)(struct tty_struct * tty);
|
||||
@@ -271,8 +270,8 @@ struct tty_operations {
|
||||
void (*set_ldisc)(struct tty_struct *tty);
|
||||
void (*wait_until_sent)(struct tty_struct *tty, int timeout);
|
||||
void (*send_xchar)(struct tty_struct *tty, char ch);
|
||||
int (*tiocmget)(struct tty_struct *tty, struct file *file);
|
||||
int (*tiocmset)(struct tty_struct *tty, struct file *file,
|
||||
int (*tiocmget)(struct tty_struct *tty);
|
||||
int (*tiocmset)(struct tty_struct *tty,
|
||||
unsigned int set, unsigned int clear);
|
||||
int (*resize)(struct tty_struct *tty, struct winsize *ws);
|
||||
int (*set_termiox)(struct tty_struct *tty, struct termiox *tnew);
|
||||
|
||||
@@ -261,7 +261,7 @@ struct usb_serial_driver {
|
||||
const unsigned char *buf, int count);
|
||||
/* Called only by the tty layer */
|
||||
int (*write_room)(struct tty_struct *tty);
|
||||
int (*ioctl)(struct tty_struct *tty, struct file *file,
|
||||
int (*ioctl)(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
void (*set_termios)(struct tty_struct *tty,
|
||||
struct usb_serial_port *port, struct ktermios *old);
|
||||
@@ -269,8 +269,8 @@ struct usb_serial_driver {
|
||||
int (*chars_in_buffer)(struct tty_struct *tty);
|
||||
void (*throttle)(struct tty_struct *tty);
|
||||
void (*unthrottle)(struct tty_struct *tty);
|
||||
int (*tiocmget)(struct tty_struct *tty, struct file *file);
|
||||
int (*tiocmset)(struct tty_struct *tty, struct file *file,
|
||||
int (*tiocmget)(struct tty_struct *tty);
|
||||
int (*tiocmset)(struct tty_struct *tty,
|
||||
unsigned int set, unsigned int clear);
|
||||
int (*get_icount)(struct tty_struct *tty,
|
||||
struct serial_icounter_struct *icount);
|
||||
|
||||
@@ -142,14 +142,6 @@ static inline bool vt_force_oops_output(struct vc_data *vc)
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
* vc_screen.c shares this temporary buffer with the console write code so that
|
||||
* we can easily avoid touching user space while holding the console spinlock.
|
||||
*/
|
||||
|
||||
#define CON_BUF_SIZE (CONFIG_BASE_SMALL ? 256 : PAGE_SIZE)
|
||||
extern char con_buf[CON_BUF_SIZE];
|
||||
extern struct mutex con_buf_mtx;
|
||||
extern char vt_dont_switch;
|
||||
extern int default_utf8;
|
||||
extern int global_cursor_default;
|
||||
|
||||
@@ -120,10 +120,10 @@ struct ircomm_tty_cb {
|
||||
void ircomm_tty_start(struct tty_struct *tty);
|
||||
void ircomm_tty_check_modem_status(struct ircomm_tty_cb *self);
|
||||
|
||||
extern int ircomm_tty_tiocmget(struct tty_struct *tty, struct file *file);
|
||||
extern int ircomm_tty_tiocmset(struct tty_struct *tty, struct file *file,
|
||||
extern int ircomm_tty_tiocmget(struct tty_struct *tty);
|
||||
extern int ircomm_tty_tiocmset(struct tty_struct *tty,
|
||||
unsigned int set, unsigned int clear);
|
||||
extern int ircomm_tty_ioctl(struct tty_struct *tty, struct file *file,
|
||||
extern int ircomm_tty_ioctl(struct tty_struct *tty,
|
||||
unsigned int cmd, unsigned long arg);
|
||||
extern void ircomm_tty_set_termios(struct tty_struct *tty,
|
||||
struct ktermios *old_termios);
|
||||
|
||||
Reference in New Issue
Block a user