Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC]: Fix O_CLOEXEC values. [SPARC32]: Fix modular build of floppy driver. [SOUND] CS4231 SBus: Two fixes. [CG6]: fix memory size detection [SPARC64]: Add missing dma_sync_single_range_for_*().
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
#define O_LARGEFILE 0x40000
|
||||
#define O_DIRECT 0x100000 /* direct disk access hint */
|
||||
#define O_NOATIME 0x200000
|
||||
#define O_CLOEXEC 0x400000
|
||||
|
||||
#define F_GETOWN 5 /* for sockets. */
|
||||
#define F_SETOWN 6 /* for sockets. */
|
||||
@@ -31,6 +32,5 @@
|
||||
#define __ARCH_FLOCK_PAD short __unused;
|
||||
#define __ARCH_FLOCK64_PAD short __unused;
|
||||
|
||||
#include <asm-generic/fcntl.h>
|
||||
|
||||
#endif
|
||||
|
||||
@@ -48,7 +48,7 @@ struct sun_flpy_controller {
|
||||
|
||||
/* You'll only ever find one controller on a SparcStation anyways. */
|
||||
static struct sun_flpy_controller *sun_fdc = NULL;
|
||||
volatile unsigned char *fdc_status;
|
||||
extern volatile unsigned char *fdc_status;
|
||||
|
||||
struct sun_floppy_ops {
|
||||
unsigned char (*fd_inb)(int port);
|
||||
@@ -225,13 +225,13 @@ static void sun_82077_fd_outb(unsigned char value, int port)
|
||||
* underruns. If non-zero, doing_pdma encodes the direction of
|
||||
* the transfer for debugging. 1=read 2=write
|
||||
*/
|
||||
char *pdma_vaddr;
|
||||
unsigned long pdma_size;
|
||||
volatile int doing_pdma = 0;
|
||||
extern char *pdma_vaddr;
|
||||
extern unsigned long pdma_size;
|
||||
extern volatile int doing_pdma;
|
||||
|
||||
/* This is software state */
|
||||
char *pdma_base = NULL;
|
||||
unsigned long pdma_areasize;
|
||||
extern char *pdma_base;
|
||||
extern unsigned long pdma_areasize;
|
||||
|
||||
/* Common routines to all controller types on the Sparc. */
|
||||
static __inline__ void virtual_dma_init(void)
|
||||
@@ -281,7 +281,8 @@ static __inline__ void sun_fd_enable_dma(void)
|
||||
}
|
||||
|
||||
/* Our low-level entry point in arch/sparc/kernel/entry.S */
|
||||
irqreturn_t floppy_hardint(int irq, void *unused);
|
||||
extern int sparc_floppy_request_irq(int irq, unsigned long flags,
|
||||
irqreturn_t (*irq_handler)(int irq, void *));
|
||||
|
||||
static int sun_fd_request_irq(void)
|
||||
{
|
||||
@@ -290,8 +291,9 @@ static int sun_fd_request_irq(void)
|
||||
|
||||
if(!once) {
|
||||
once = 1;
|
||||
error = request_fast_irq(FLOPPY_IRQ, floppy_hardint,
|
||||
IRQF_DISABLED, "floppy");
|
||||
error = sparc_floppy_request_irq(FLOPPY_IRQ,
|
||||
IRQF_DISABLED,
|
||||
floppy_interrupt);
|
||||
return ((error == 0) ? 0 : -1);
|
||||
} else return 0;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
/* $Id: irq.h,v 1.32 2000/08/26 02:42:28 anton Exp $
|
||||
* irq.h: IRQ registers on the Sparc.
|
||||
/* irq.h: IRQ registers on the Sparc.
|
||||
*
|
||||
* Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
|
||||
* Copyright (C) 1995, 2007 David S. Miller (davem@davemloft.net)
|
||||
*/
|
||||
|
||||
#ifndef _SPARC_IRQ_H
|
||||
@@ -13,6 +12,4 @@
|
||||
|
||||
#define irq_canonicalize(irq) (irq)
|
||||
|
||||
extern int request_fast_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, __const__ char *devname);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -108,6 +108,25 @@ static inline void dma_sync_single_for_device(struct device *dev,
|
||||
dma_ops->sync_single_for_device(dev, dma_handle, size, direction);
|
||||
}
|
||||
|
||||
static inline void dma_sync_single_range_for_cpu(struct device *dev,
|
||||
dma_addr_t dma_handle,
|
||||
unsigned long offset,
|
||||
size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
dma_sync_single_for_cpu(dev, dma_handle+offset, size, direction);
|
||||
}
|
||||
|
||||
static inline void dma_sync_single_range_for_device(struct device *dev,
|
||||
dma_addr_t dma_handle,
|
||||
unsigned long offset,
|
||||
size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
dma_sync_single_for_device(dev, dma_handle+offset, size, direction);
|
||||
}
|
||||
|
||||
|
||||
static inline void dma_sync_sg_for_cpu(struct device *dev,
|
||||
struct scatterlist *sg, int nelems,
|
||||
enum dma_data_direction direction)
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
#define O_LARGEFILE 0x40000
|
||||
#define O_DIRECT 0x100000 /* direct disk access hint */
|
||||
#define O_NOATIME 0x200000
|
||||
|
||||
#define O_CLOEXEC 0x400000
|
||||
|
||||
#define F_GETOWN 5 /* for sockets. */
|
||||
#define F_SETOWN 6 /* for sockets. */
|
||||
|
||||
Reference in New Issue
Block a user