Merge branch 'common/pinctrl' into sh-latest
This commit is contained in:
@@ -3,10 +3,18 @@
|
||||
|
||||
#include <linux/compiler.h>
|
||||
|
||||
#ifdef CONFIG_GENERIC_BUG
|
||||
#define BUGFLAG_WARNING (1 << 0)
|
||||
#define BUGFLAG_TAINT(taint) (BUGFLAG_WARNING | ((taint) << 8))
|
||||
#define BUG_GET_TAINT(bug) ((bug)->flags >> 8)
|
||||
#endif
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#ifdef CONFIG_BUG
|
||||
|
||||
#ifdef CONFIG_GENERIC_BUG
|
||||
#ifndef __ASSEMBLY__
|
||||
struct bug_entry {
|
||||
#ifndef CONFIG_GENERIC_BUG_RELATIVE_POINTERS
|
||||
unsigned long bug_addr;
|
||||
@@ -23,17 +31,8 @@ struct bug_entry {
|
||||
#endif
|
||||
unsigned short flags;
|
||||
};
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#define BUGFLAG_WARNING (1 << 0)
|
||||
#define BUGFLAG_TAINT(taint) (BUGFLAG_WARNING | ((taint) << 8))
|
||||
#define BUG_GET_TAINT(bug) ((bug)->flags >> 8)
|
||||
|
||||
#endif /* CONFIG_GENERIC_BUG */
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#include <linux/kernel.h>
|
||||
|
||||
/*
|
||||
* Don't use BUG() or BUG_ON() unless there's really no way out; one
|
||||
* example might be detecting data structure corruption in the middle
|
||||
|
||||
@@ -484,6 +484,16 @@ static inline int pmd_none_or_trans_huge_or_clear_bad(pmd_t *pmd)
|
||||
/*
|
||||
* The barrier will stabilize the pmdval in a register or on
|
||||
* the stack so that it will stop changing under the code.
|
||||
*
|
||||
* When CONFIG_TRANSPARENT_HUGEPAGE=y on x86 32bit PAE,
|
||||
* pmd_read_atomic is allowed to return a not atomic pmdval
|
||||
* (for example pointing to an hugepage that has never been
|
||||
* mapped in the pmd). The below checks will only care about
|
||||
* the low part of the pmd with 32bit PAE x86 anyway, with the
|
||||
* exception of pmd_none(). So the important thing is that if
|
||||
* the low part of the pmd is found null, the high part will
|
||||
* be also null or the pmd_none() check below would be
|
||||
* confused.
|
||||
*/
|
||||
#ifdef CONFIG_TRANSPARENT_HUGEPAGE
|
||||
barrier();
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
/*
|
||||
This file is auto-generated from the drm_pciids.txt in the DRM CVS
|
||||
Please contact dri-devel@lists.sf.net to add new cards to this list
|
||||
*/
|
||||
#define radeon_PCI_IDS \
|
||||
{0x1002, 0x3150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY}, \
|
||||
{0x1002, 0x3151, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
|
||||
|
||||
@@ -140,6 +140,7 @@ struct kiocb {
|
||||
(x)->ki_dtor = NULL; \
|
||||
(x)->ki_obj.tsk = tsk; \
|
||||
(x)->ki_user_data = 0; \
|
||||
(x)->private = NULL; \
|
||||
} while (0)
|
||||
|
||||
#define AIO_RING_MAGIC 0xa10a10a1
|
||||
|
||||
@@ -827,7 +827,6 @@ extern bool __blk_end_request_err(struct request *rq, int error);
|
||||
extern void blk_complete_request(struct request *);
|
||||
extern void __blk_complete_request(struct request *);
|
||||
extern void blk_abort_request(struct request *);
|
||||
extern void blk_abort_queue(struct request_queue *);
|
||||
extern void blk_unprep_request(struct request *);
|
||||
|
||||
/*
|
||||
|
||||
@@ -47,9 +47,9 @@
|
||||
*/
|
||||
#if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \
|
||||
!defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4)
|
||||
# define inline inline __attribute__((always_inline))
|
||||
# define __inline__ __inline__ __attribute__((always_inline))
|
||||
# define __inline __inline __attribute__((always_inline))
|
||||
# define inline inline __attribute__((always_inline)) notrace
|
||||
# define __inline__ __inline__ __attribute__((always_inline)) notrace
|
||||
# define __inline __inline __attribute__((always_inline)) notrace
|
||||
#else
|
||||
/* A lot of inline functions can cause havoc with function tracing */
|
||||
# define inline inline notrace
|
||||
|
||||
@@ -116,6 +116,7 @@ struct input_keymap_entry {
|
||||
|
||||
/**
|
||||
* EVIOCGMTSLOTS(len) - get MT slot values
|
||||
* @len: size of the data buffer in bytes
|
||||
*
|
||||
* The ioctl buffer argument should be binary equivalent to
|
||||
*
|
||||
|
||||
@@ -301,8 +301,6 @@ static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d)
|
||||
* @irq_pm_shutdown: function called from core code on shutdown once per chip
|
||||
* @irq_print_chip: optional to print special chip info in show_interrupts
|
||||
* @flags: chip specific flags
|
||||
*
|
||||
* @release: release function solely used by UML
|
||||
*/
|
||||
struct irq_chip {
|
||||
const char *name;
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
* is passed to the kernel.
|
||||
*/
|
||||
enum kmsg_dump_reason {
|
||||
KMSG_DUMP_UNDEF,
|
||||
KMSG_DUMP_PANIC,
|
||||
KMSG_DUMP_OOPS,
|
||||
KMSG_DUMP_EMERG,
|
||||
@@ -31,23 +32,37 @@ enum kmsg_dump_reason {
|
||||
|
||||
/**
|
||||
* struct kmsg_dumper - kernel crash message dumper structure
|
||||
* @dump: The callback which gets called on crashes. The buffer is passed
|
||||
* as two sections, where s1 (length l1) contains the older
|
||||
* messages and s2 (length l2) contains the newer.
|
||||
* @list: Entry in the dumper list (private)
|
||||
* @dump: Call into dumping code which will retrieve the data with
|
||||
* through the record iterator
|
||||
* @max_reason: filter for highest reason number that should be dumped
|
||||
* @registered: Flag that specifies if this is already registered
|
||||
*/
|
||||
struct kmsg_dumper {
|
||||
void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason,
|
||||
const char *s1, unsigned long l1,
|
||||
const char *s2, unsigned long l2);
|
||||
struct list_head list;
|
||||
int registered;
|
||||
void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason);
|
||||
enum kmsg_dump_reason max_reason;
|
||||
bool active;
|
||||
bool registered;
|
||||
|
||||
/* private state of the kmsg iterator */
|
||||
u32 cur_idx;
|
||||
u32 next_idx;
|
||||
u64 cur_seq;
|
||||
u64 next_seq;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_PRINTK
|
||||
void kmsg_dump(enum kmsg_dump_reason reason);
|
||||
|
||||
bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
|
||||
char *line, size_t size, size_t *len);
|
||||
|
||||
bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
|
||||
char *buf, size_t size, size_t *len);
|
||||
|
||||
void kmsg_dump_rewind(struct kmsg_dumper *dumper);
|
||||
|
||||
int kmsg_dump_register(struct kmsg_dumper *dumper);
|
||||
|
||||
int kmsg_dump_unregister(struct kmsg_dumper *dumper);
|
||||
@@ -56,6 +71,22 @@ static inline void kmsg_dump(enum kmsg_dump_reason reason)
|
||||
{
|
||||
}
|
||||
|
||||
static inline bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
|
||||
const char *line, size_t size, size_t *len)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
|
||||
char *buf, size_t size, size_t *len)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline void kmsg_dump_rewind(struct kmsg_dumper *dumper)
|
||||
{
|
||||
}
|
||||
|
||||
static inline int kmsg_dump_register(struct kmsg_dumper *dumper)
|
||||
{
|
||||
return -EINVAL;
|
||||
|
||||
@@ -815,7 +815,7 @@ static inline void kvm_free_irq_routing(struct kvm *kvm) {}
|
||||
#ifdef CONFIG_HAVE_KVM_EVENTFD
|
||||
|
||||
void kvm_eventfd_init(struct kvm *kvm);
|
||||
int kvm_irqfd(struct kvm *kvm, int fd, int gsi, int flags);
|
||||
int kvm_irqfd(struct kvm *kvm, struct kvm_irqfd *args);
|
||||
void kvm_irqfd_release(struct kvm *kvm);
|
||||
void kvm_irq_routing_update(struct kvm *, struct kvm_irq_routing_table *);
|
||||
int kvm_ioeventfd(struct kvm *kvm, struct kvm_ioeventfd *args);
|
||||
@@ -824,7 +824,7 @@ int kvm_ioeventfd(struct kvm *kvm, struct kvm_ioeventfd *args);
|
||||
|
||||
static inline void kvm_eventfd_init(struct kvm *kvm) {}
|
||||
|
||||
static inline int kvm_irqfd(struct kvm *kvm, int fd, int gsi, int flags)
|
||||
static inline int kvm_irqfd(struct kvm *kvm, struct kvm_irqfd *args)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -57,8 +57,18 @@ struct page {
|
||||
};
|
||||
|
||||
union {
|
||||
#if defined(CONFIG_HAVE_CMPXCHG_DOUBLE) && \
|
||||
defined(CONFIG_HAVE_ALIGNED_STRUCT_PAGE)
|
||||
/* Used for cmpxchg_double in slub */
|
||||
unsigned long counters;
|
||||
#else
|
||||
/*
|
||||
* Keep _count separate from slub cmpxchg_double data.
|
||||
* As the rest of the double word is protected by
|
||||
* slab_lock but _count is not.
|
||||
*/
|
||||
unsigned counters;
|
||||
#endif
|
||||
|
||||
struct {
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* SDHCI declarations specific to ST SPEAr platform
|
||||
*
|
||||
* Copyright (C) 2010 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
* Viresh Kumar <viresh.linux@gmail.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
|
||||
@@ -25,6 +25,7 @@ struct nfs41_impl_id;
|
||||
*/
|
||||
struct nfs_client {
|
||||
atomic_t cl_count;
|
||||
atomic_t cl_mds_count;
|
||||
int cl_cons_state; /* current construction state (-ve: init error) */
|
||||
#define NFS_CS_READY 0 /* ready to be used */
|
||||
#define NFS_CS_INITING 1 /* busy initialising */
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* Arasan Compact Flash host controller platform data header file
|
||||
*
|
||||
* Copyright (C) 2011 ST Microelectronics
|
||||
* Viresh Kumar <viresh.kumar@st.com>
|
||||
* Viresh Kumar <viresh.linux@gmail.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
|
||||
@@ -141,6 +141,8 @@
|
||||
* Changing LSM security domain is considered a new privilege. So, for example,
|
||||
* asking selinux for a specific new context (e.g. with runcon) will result
|
||||
* in execve returning -EPERM.
|
||||
*
|
||||
* See Documentation/prctl/no_new_privs.txt for more details.
|
||||
*/
|
||||
#define PR_SET_NO_NEW_PRIVS 38
|
||||
#define PR_GET_NO_NEW_PRIVS 39
|
||||
|
||||
@@ -69,12 +69,14 @@ struct persistent_ram_zone * __init persistent_ram_new(phys_addr_t start,
|
||||
size_t size,
|
||||
bool ecc);
|
||||
void persistent_ram_free(struct persistent_ram_zone *prz);
|
||||
void persistent_ram_zap(struct persistent_ram_zone *prz);
|
||||
struct persistent_ram_zone *persistent_ram_init_ringbuffer(struct device *dev,
|
||||
bool ecc);
|
||||
|
||||
int persistent_ram_write(struct persistent_ram_zone *prz, const void *s,
|
||||
unsigned int count);
|
||||
|
||||
void persistent_ram_save_old(struct persistent_ram_zone *prz);
|
||||
size_t persistent_ram_old_size(struct persistent_ram_zone *prz);
|
||||
void *persistent_ram_old(struct persistent_ram_zone *prz);
|
||||
void persistent_ram_free_old(struct persistent_ram_zone *prz);
|
||||
|
||||
@@ -160,7 +160,9 @@ enum pxa_ssp_type {
|
||||
PXA25x_SSP, /* pxa 210, 250, 255, 26x */
|
||||
PXA25x_NSSP, /* pxa 255, 26x (including ASSP) */
|
||||
PXA27x_SSP,
|
||||
PXA3xx_SSP,
|
||||
PXA168_SSP,
|
||||
PXA910_SSP,
|
||||
CE4100_SSP,
|
||||
};
|
||||
|
||||
|
||||
@@ -38,6 +38,8 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/kref.h>
|
||||
#include <linux/mutex.h>
|
||||
|
||||
/* The feature bitmap for virtio rpmsg */
|
||||
#define VIRTIO_RPMSG_F_NS 0 /* RP supports name service notifications */
|
||||
@@ -120,7 +122,9 @@ typedef void (*rpmsg_rx_cb_t)(struct rpmsg_channel *, void *, int, void *, u32);
|
||||
/**
|
||||
* struct rpmsg_endpoint - binds a local rpmsg address to its user
|
||||
* @rpdev: rpmsg channel device
|
||||
* @refcount: when this drops to zero, the ept is deallocated
|
||||
* @cb: rx callback handler
|
||||
* @cb_lock: must be taken before accessing/changing @cb
|
||||
* @addr: local rpmsg address
|
||||
* @priv: private data for the driver's use
|
||||
*
|
||||
@@ -140,7 +144,9 @@ typedef void (*rpmsg_rx_cb_t)(struct rpmsg_channel *, void *, int, void *, u32);
|
||||
*/
|
||||
struct rpmsg_endpoint {
|
||||
struct rpmsg_channel *rpdev;
|
||||
struct kref refcount;
|
||||
rpmsg_rx_cb_t cb;
|
||||
struct mutex cb_lock;
|
||||
u32 addr;
|
||||
void *priv;
|
||||
};
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#ifndef __SH_PFC_H
|
||||
#define __SH_PFC_H
|
||||
|
||||
#include <linux/stringify.h>
|
||||
#include <asm-generic/gpio.h>
|
||||
|
||||
typedef unsigned short pinmux_enum_t;
|
||||
@@ -37,10 +38,11 @@ enum {
|
||||
struct pinmux_gpio {
|
||||
pinmux_enum_t enum_id;
|
||||
pinmux_flag_t flags;
|
||||
const char *name;
|
||||
};
|
||||
|
||||
#define PINMUX_GPIO(gpio, data_or_mark) \
|
||||
[gpio] = { .enum_id = data_or_mark, .flags = PINMUX_TYPE_NONE }
|
||||
[gpio] = { .name = __stringify(gpio), .enum_id = data_or_mark, .flags = PINMUX_TYPE_NONE }
|
||||
|
||||
#define PINMUX_DATA(data_or_mark, ids...) data_or_mark, ids, 0
|
||||
|
||||
@@ -127,10 +129,13 @@ struct sh_pfc {
|
||||
/* XXX compat for now */
|
||||
#define pinmux_info sh_pfc
|
||||
|
||||
/* drivers/sh/pfc-gpio.c */
|
||||
/* drivers/sh/pfc/gpio.c */
|
||||
int sh_pfc_register_gpiochip(struct sh_pfc *pfc);
|
||||
|
||||
/* drivers/sh/pfc.c */
|
||||
/* drivers/sh/pfc/pinctrl.c */
|
||||
int sh_pfc_register_pinctrl(struct sh_pfc *pfc);
|
||||
|
||||
/* drivers/sh/pfc/core.c */
|
||||
int register_sh_pfc(struct sh_pfc *pfc);
|
||||
|
||||
int sh_pfc_read_bit(struct pinmux_data_reg *dr, unsigned long in_pos);
|
||||
@@ -142,8 +147,6 @@ int sh_pfc_gpio_to_enum(struct sh_pfc *pfc, unsigned gpio, int pos,
|
||||
pinmux_enum_t *enum_idp);
|
||||
int sh_pfc_config_gpio(struct sh_pfc *pfc, unsigned gpio, int pinmux_type,
|
||||
int cfg_mode);
|
||||
int sh_pfc_set_direction(struct sh_pfc *pfc, unsigned gpio,
|
||||
int new_pinmux_type);
|
||||
|
||||
/* xxx */
|
||||
static inline int register_pinmux(struct pinmux_info *pip)
|
||||
|
||||
@@ -225,14 +225,11 @@ enum {
|
||||
/* device driver is going to provide hardware time stamp */
|
||||
SKBTX_IN_PROGRESS = 1 << 2,
|
||||
|
||||
/* ensure the originating sk reference is available on driver level */
|
||||
SKBTX_DRV_NEEDS_SK_REF = 1 << 3,
|
||||
|
||||
/* device driver supports TX zero-copy buffers */
|
||||
SKBTX_DEV_ZEROCOPY = 1 << 4,
|
||||
SKBTX_DEV_ZEROCOPY = 1 << 3,
|
||||
|
||||
/* generate wifi status information (where possible) */
|
||||
SKBTX_WIFI_STATUS = 1 << 5,
|
||||
SKBTX_WIFI_STATUS = 1 << 4,
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
@@ -43,7 +43,7 @@ struct pxa2xx_spi_chip {
|
||||
void (*cs_control)(u32 command);
|
||||
};
|
||||
|
||||
#ifdef CONFIG_ARCH_PXA
|
||||
#if defined(CONFIG_ARCH_PXA) || defined(CONFIG_ARCH_MMP)
|
||||
|
||||
#include <linux/clk.h>
|
||||
#include <mach/dma.h>
|
||||
|
||||
@@ -51,7 +51,8 @@ struct partial_page {
|
||||
struct splice_pipe_desc {
|
||||
struct page **pages; /* page map */
|
||||
struct partial_page *partial; /* pages[] may not be contig */
|
||||
int nr_pages; /* number of pages in map */
|
||||
int nr_pages; /* number of populated pages in map */
|
||||
unsigned int nr_pages_max; /* pages[] & partial[] arrays size */
|
||||
unsigned int flags; /* splice flags */
|
||||
const struct pipe_buf_operations *ops;/* ops associated with output pipe */
|
||||
void (*spd_release)(struct splice_pipe_desc *, unsigned int);
|
||||
@@ -85,9 +86,8 @@ extern ssize_t splice_direct_to_actor(struct file *, struct splice_desc *,
|
||||
/*
|
||||
* for dynamic pipe sizing
|
||||
*/
|
||||
extern int splice_grow_spd(struct pipe_inode_info *, struct splice_pipe_desc *);
|
||||
extern void splice_shrink_spd(struct pipe_inode_info *,
|
||||
struct splice_pipe_desc *);
|
||||
extern int splice_grow_spd(const struct pipe_inode_info *, struct splice_pipe_desc *);
|
||||
extern void splice_shrink_spd(struct splice_pipe_desc *);
|
||||
extern void spd_release_page(struct splice_pipe_desc *, unsigned int);
|
||||
|
||||
extern const struct pipe_buf_operations page_cache_pipe_buf_ops;
|
||||
|
||||
@@ -7,6 +7,9 @@
|
||||
* vga_switcheroo.h - Support for laptop with dual GPU using one set of outputs
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_VGA_SWITCHEROO_H_
|
||||
#define _LINUX_VGA_SWITCHEROO_H_
|
||||
|
||||
#include <linux/fb.h>
|
||||
|
||||
struct pci_dev;
|
||||
@@ -73,3 +76,4 @@ static inline int vga_switcheroo_get_client_state(struct pci_dev *dev) { return
|
||||
|
||||
|
||||
#endif
|
||||
#endif /* _LINUX_VGA_SWITCHEROO_H_ */
|
||||
|
||||
@@ -2640,9 +2640,9 @@ struct v4l2_create_buffers {
|
||||
|
||||
/* Experimental, these three ioctls may change over the next couple of kernel
|
||||
versions. */
|
||||
#define VIDIOC_ENUM_DV_TIMINGS _IOWR('V', 96, struct v4l2_enum_dv_timings)
|
||||
#define VIDIOC_QUERY_DV_TIMINGS _IOR('V', 97, struct v4l2_dv_timings)
|
||||
#define VIDIOC_DV_TIMINGS_CAP _IOWR('V', 98, struct v4l2_dv_timings_cap)
|
||||
#define VIDIOC_ENUM_DV_TIMINGS _IOWR('V', 98, struct v4l2_enum_dv_timings)
|
||||
#define VIDIOC_QUERY_DV_TIMINGS _IOR('V', 99, struct v4l2_dv_timings)
|
||||
#define VIDIOC_DV_TIMINGS_CAP _IOWR('V', 100, struct v4l2_dv_timings_cap)
|
||||
|
||||
/* Reminder: when adding new ioctls please add support for them to
|
||||
drivers/media/video/v4l2-compat-ioctl32.c as well! */
|
||||
|
||||
@@ -1144,6 +1144,12 @@ struct extended_inquiry_info {
|
||||
__u8 data[240];
|
||||
} __packed;
|
||||
|
||||
#define HCI_EV_KEY_REFRESH_COMPLETE 0x30
|
||||
struct hci_ev_key_refresh_complete {
|
||||
__u8 status;
|
||||
__le16 handle;
|
||||
} __packed;
|
||||
|
||||
#define HCI_EV_IO_CAPA_REQUEST 0x31
|
||||
struct hci_ev_io_capa_request {
|
||||
bdaddr_t bdaddr;
|
||||
|
||||
@@ -1940,6 +1940,11 @@ enum ieee80211_rate_control_changed {
|
||||
* to also unregister the device. If it returns 1, then mac80211
|
||||
* will also go through the regular complete restart on resume.
|
||||
*
|
||||
* @set_wakeup: Enable or disable wakeup when WoWLAN configuration is
|
||||
* modified. The reason is that device_set_wakeup_enable() is
|
||||
* supposed to be called when the configuration changes, not only
|
||||
* in suspend().
|
||||
*
|
||||
* @add_interface: Called when a netdevice attached to the hardware is
|
||||
* enabled. Because it is not called for monitor mode devices, @start
|
||||
* and @stop must be implemented.
|
||||
@@ -2966,6 +2971,7 @@ __le16 ieee80211_ctstoself_duration(struct ieee80211_hw *hw,
|
||||
* ieee80211_generic_frame_duration - Calculate the duration field for a frame
|
||||
* @hw: pointer obtained from ieee80211_alloc_hw().
|
||||
* @vif: &struct ieee80211_vif pointer from the add_interface callback.
|
||||
* @band: the band to calculate the frame duration on
|
||||
* @frame_len: the length of the frame.
|
||||
* @rate: the rate at which the frame is going to be transmitted.
|
||||
*
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
*
|
||||
* Copyright (C) 2008 Nokia Corporation.
|
||||
*
|
||||
* Author: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
|
||||
* Author: Rémi Denis-Courmont
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
|
||||
@@ -912,6 +912,9 @@ struct sctp_transport {
|
||||
/* Is this structure kfree()able? */
|
||||
malloced:1;
|
||||
|
||||
/* Has this transport moved the ctsn since we last sacked */
|
||||
__u32 sack_generation;
|
||||
|
||||
struct flowi fl;
|
||||
|
||||
/* This is the peer's IP address and port. */
|
||||
@@ -1584,6 +1587,7 @@ struct sctp_association {
|
||||
*/
|
||||
__u8 sack_needed; /* Do we need to sack the peer? */
|
||||
__u32 sack_cnt;
|
||||
__u32 sack_generation;
|
||||
|
||||
/* These are capabilities which our peer advertised. */
|
||||
__u8 ecn_capable:1, /* Can peer do ECN? */
|
||||
|
||||
@@ -117,7 +117,8 @@ void sctp_tsnmap_free(struct sctp_tsnmap *map);
|
||||
int sctp_tsnmap_check(const struct sctp_tsnmap *, __u32 tsn);
|
||||
|
||||
/* Mark this TSN as seen. */
|
||||
int sctp_tsnmap_mark(struct sctp_tsnmap *, __u32 tsn);
|
||||
int sctp_tsnmap_mark(struct sctp_tsnmap *, __u32 tsn,
|
||||
struct sctp_transport *trans);
|
||||
|
||||
/* Mark this TSN and all lower as seen. */
|
||||
void sctp_tsnmap_skip(struct sctp_tsnmap *map, __u32 tsn);
|
||||
|
||||
@@ -151,6 +151,7 @@ struct scsi_device {
|
||||
SD_LAST_BUGGY_SECTORS */
|
||||
unsigned no_read_disc_info:1; /* Avoid READ_DISC_INFO cmds */
|
||||
unsigned no_read_capacity_16:1; /* Avoid READ_CAPACITY_16 cmds */
|
||||
unsigned try_rc_10_first:1; /* Try READ_CAPACACITY_10 first */
|
||||
unsigned is_visible:1; /* is the device visible in sysfs */
|
||||
|
||||
DECLARE_BITMAP(supported_events, SDEV_EVT_MAXBITS); /* supported events */
|
||||
|
||||
@@ -44,6 +44,7 @@ struct snd_tea575x_ops {
|
||||
|
||||
struct snd_tea575x {
|
||||
struct v4l2_device *v4l2_dev;
|
||||
struct v4l2_file_operations fops;
|
||||
struct video_device vd; /* video device */
|
||||
int radio_nr; /* radio_nr */
|
||||
bool tea5759; /* 5759 chip is present */
|
||||
@@ -62,7 +63,7 @@ struct snd_tea575x {
|
||||
int (*ext_init)(struct snd_tea575x *tea);
|
||||
};
|
||||
|
||||
int snd_tea575x_init(struct snd_tea575x *tea);
|
||||
int snd_tea575x_init(struct snd_tea575x *tea, struct module *owner);
|
||||
void snd_tea575x_exit(struct snd_tea575x *tea);
|
||||
|
||||
#endif /* __SOUND_TEA575X_TUNER_H */
|
||||
|
||||
Reference in New Issue
Block a user