Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Pull sparc fixes from David Miller: "Two ugly build warning fixes" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: dbri: Fix compiler warning qlogicpti: Fix compiler warnings
This commit is contained in:
commit
96e52d3ac8
2 changed files with 18 additions and 12 deletions
|
@ -356,8 +356,8 @@ struct qlogicpti {
|
||||||
|
|
||||||
/* The rest of the elements are unimportant for performance. */
|
/* The rest of the elements are unimportant for performance. */
|
||||||
struct qlogicpti *next;
|
struct qlogicpti *next;
|
||||||
__u32 res_dvma; /* Ptr to RESPONSE bufs (DVMA)*/
|
dma_addr_t res_dvma; /* Ptr to RESPONSE bufs (DVMA)*/
|
||||||
__u32 req_dvma; /* Ptr to REQUEST bufs (DVMA) */
|
dma_addr_t req_dvma; /* Ptr to REQUEST bufs (DVMA) */
|
||||||
u_char fware_majrev, fware_minrev, fware_micrev;
|
u_char fware_majrev, fware_minrev, fware_micrev;
|
||||||
struct Scsi_Host *qhost;
|
struct Scsi_Host *qhost;
|
||||||
int qpti_id;
|
int qpti_id;
|
||||||
|
|
|
@ -304,7 +304,7 @@ struct snd_dbri {
|
||||||
spinlock_t lock;
|
spinlock_t lock;
|
||||||
|
|
||||||
struct dbri_dma *dma; /* Pointer to our DMA block */
|
struct dbri_dma *dma; /* Pointer to our DMA block */
|
||||||
u32 dma_dvma; /* DBRI visible DMA address */
|
dma_addr_t dma_dvma; /* DBRI visible DMA address */
|
||||||
|
|
||||||
void __iomem *regs; /* dbri HW regs */
|
void __iomem *regs; /* dbri HW regs */
|
||||||
int dbri_irqp; /* intr queue pointer */
|
int dbri_irqp; /* intr queue pointer */
|
||||||
|
@ -657,12 +657,14 @@ static void dbri_cmdwait(struct snd_dbri *dbri)
|
||||||
*/
|
*/
|
||||||
static s32 *dbri_cmdlock(struct snd_dbri *dbri, int len)
|
static s32 *dbri_cmdlock(struct snd_dbri *dbri, int len)
|
||||||
{
|
{
|
||||||
|
u32 dvma_addr = (u32)dbri->dma_dvma;
|
||||||
|
|
||||||
/* Space for 2 WAIT cmds (replaced later by 1 JUMP cmd) */
|
/* Space for 2 WAIT cmds (replaced later by 1 JUMP cmd) */
|
||||||
len += 2;
|
len += 2;
|
||||||
spin_lock(&dbri->cmdlock);
|
spin_lock(&dbri->cmdlock);
|
||||||
if (dbri->cmdptr - dbri->dma->cmd + len < DBRI_NO_CMDS - 2)
|
if (dbri->cmdptr - dbri->dma->cmd + len < DBRI_NO_CMDS - 2)
|
||||||
return dbri->cmdptr + 2;
|
return dbri->cmdptr + 2;
|
||||||
else if (len < sbus_readl(dbri->regs + REG8) - dbri->dma_dvma)
|
else if (len < sbus_readl(dbri->regs + REG8) - dvma_addr)
|
||||||
return dbri->dma->cmd;
|
return dbri->dma->cmd;
|
||||||
else
|
else
|
||||||
printk(KERN_ERR "DBRI: no space for commands.");
|
printk(KERN_ERR "DBRI: no space for commands.");
|
||||||
|
@ -680,6 +682,7 @@ static s32 *dbri_cmdlock(struct snd_dbri *dbri, int len)
|
||||||
*/
|
*/
|
||||||
static void dbri_cmdsend(struct snd_dbri *dbri, s32 *cmd, int len)
|
static void dbri_cmdsend(struct snd_dbri *dbri, s32 *cmd, int len)
|
||||||
{
|
{
|
||||||
|
u32 dvma_addr = (u32)dbri->dma_dvma;
|
||||||
s32 tmp, addr;
|
s32 tmp, addr;
|
||||||
static int wait_id = 0;
|
static int wait_id = 0;
|
||||||
|
|
||||||
|
@ -689,7 +692,7 @@ static void dbri_cmdsend(struct snd_dbri *dbri, s32 *cmd, int len)
|
||||||
*(cmd+1) = DBRI_CMD(D_WAIT, 1, wait_id);
|
*(cmd+1) = DBRI_CMD(D_WAIT, 1, wait_id);
|
||||||
|
|
||||||
/* Replace the last command with JUMP */
|
/* Replace the last command with JUMP */
|
||||||
addr = dbri->dma_dvma + (cmd - len - dbri->dma->cmd) * sizeof(s32);
|
addr = dvma_addr + (cmd - len - dbri->dma->cmd) * sizeof(s32);
|
||||||
*(dbri->cmdptr+1) = addr;
|
*(dbri->cmdptr+1) = addr;
|
||||||
*(dbri->cmdptr) = DBRI_CMD(D_JUMP, 0, 0);
|
*(dbri->cmdptr) = DBRI_CMD(D_JUMP, 0, 0);
|
||||||
|
|
||||||
|
@ -747,6 +750,7 @@ static void dbri_reset(struct snd_dbri *dbri)
|
||||||
/* Lock must not be held before calling this */
|
/* Lock must not be held before calling this */
|
||||||
static void dbri_initialize(struct snd_dbri *dbri)
|
static void dbri_initialize(struct snd_dbri *dbri)
|
||||||
{
|
{
|
||||||
|
u32 dvma_addr = (u32)dbri->dma_dvma;
|
||||||
s32 *cmd;
|
s32 *cmd;
|
||||||
u32 dma_addr;
|
u32 dma_addr;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
@ -764,7 +768,7 @@ static void dbri_initialize(struct snd_dbri *dbri)
|
||||||
/*
|
/*
|
||||||
* Initialize the interrupt ring buffer.
|
* Initialize the interrupt ring buffer.
|
||||||
*/
|
*/
|
||||||
dma_addr = dbri->dma_dvma + dbri_dma_off(intr, 0);
|
dma_addr = dvma_addr + dbri_dma_off(intr, 0);
|
||||||
dbri->dma->intr[0] = dma_addr;
|
dbri->dma->intr[0] = dma_addr;
|
||||||
dbri->dbri_irqp = 1;
|
dbri->dbri_irqp = 1;
|
||||||
/*
|
/*
|
||||||
|
@ -778,7 +782,7 @@ static void dbri_initialize(struct snd_dbri *dbri)
|
||||||
dbri->cmdptr = cmd;
|
dbri->cmdptr = cmd;
|
||||||
*(cmd++) = DBRI_CMD(D_WAIT, 1, 0);
|
*(cmd++) = DBRI_CMD(D_WAIT, 1, 0);
|
||||||
*(cmd++) = DBRI_CMD(D_WAIT, 1, 0);
|
*(cmd++) = DBRI_CMD(D_WAIT, 1, 0);
|
||||||
dma_addr = dbri->dma_dvma + dbri_dma_off(cmd, 0);
|
dma_addr = dvma_addr + dbri_dma_off(cmd, 0);
|
||||||
sbus_writel(dma_addr, dbri->regs + REG8);
|
sbus_writel(dma_addr, dbri->regs + REG8);
|
||||||
spin_unlock(&dbri->cmdlock);
|
spin_unlock(&dbri->cmdlock);
|
||||||
|
|
||||||
|
@ -1077,6 +1081,7 @@ static void recv_fixed(struct snd_dbri *dbri, int pipe, volatile __u32 *ptr)
|
||||||
static int setup_descs(struct snd_dbri *dbri, int streamno, unsigned int period)
|
static int setup_descs(struct snd_dbri *dbri, int streamno, unsigned int period)
|
||||||
{
|
{
|
||||||
struct dbri_streaminfo *info = &dbri->stream_info[streamno];
|
struct dbri_streaminfo *info = &dbri->stream_info[streamno];
|
||||||
|
u32 dvma_addr = (u32)dbri->dma_dvma;
|
||||||
__u32 dvma_buffer;
|
__u32 dvma_buffer;
|
||||||
int desc;
|
int desc;
|
||||||
int len;
|
int len;
|
||||||
|
@ -1177,7 +1182,7 @@ static int setup_descs(struct snd_dbri *dbri, int streamno, unsigned int period)
|
||||||
else {
|
else {
|
||||||
dbri->next_desc[last_desc] = desc;
|
dbri->next_desc[last_desc] = desc;
|
||||||
dbri->dma->desc[last_desc].nda =
|
dbri->dma->desc[last_desc].nda =
|
||||||
dbri->dma_dvma + dbri_dma_off(desc, desc);
|
dvma_addr + dbri_dma_off(desc, desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
last_desc = desc;
|
last_desc = desc;
|
||||||
|
@ -1192,7 +1197,7 @@ static int setup_descs(struct snd_dbri *dbri, int streamno, unsigned int period)
|
||||||
}
|
}
|
||||||
|
|
||||||
dbri->dma->desc[last_desc].nda =
|
dbri->dma->desc[last_desc].nda =
|
||||||
dbri->dma_dvma + dbri_dma_off(desc, first_desc);
|
dvma_addr + dbri_dma_off(desc, first_desc);
|
||||||
dbri->next_desc[last_desc] = first_desc;
|
dbri->next_desc[last_desc] = first_desc;
|
||||||
dbri->pipes[info->pipe].first_desc = first_desc;
|
dbri->pipes[info->pipe].first_desc = first_desc;
|
||||||
dbri->pipes[info->pipe].desc = first_desc;
|
dbri->pipes[info->pipe].desc = first_desc;
|
||||||
|
@ -1697,6 +1702,7 @@ interrupts are disabled.
|
||||||
static void xmit_descs(struct snd_dbri *dbri)
|
static void xmit_descs(struct snd_dbri *dbri)
|
||||||
{
|
{
|
||||||
struct dbri_streaminfo *info;
|
struct dbri_streaminfo *info;
|
||||||
|
u32 dvma_addr = (u32)dbri->dma_dvma;
|
||||||
s32 *cmd;
|
s32 *cmd;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int first_td;
|
int first_td;
|
||||||
|
@ -1718,7 +1724,7 @@ static void xmit_descs(struct snd_dbri *dbri)
|
||||||
*(cmd++) = DBRI_CMD(D_SDP, 0,
|
*(cmd++) = DBRI_CMD(D_SDP, 0,
|
||||||
dbri->pipes[info->pipe].sdp
|
dbri->pipes[info->pipe].sdp
|
||||||
| D_SDP_P | D_SDP_EVERY | D_SDP_C);
|
| D_SDP_P | D_SDP_EVERY | D_SDP_C);
|
||||||
*(cmd++) = dbri->dma_dvma +
|
*(cmd++) = dvma_addr +
|
||||||
dbri_dma_off(desc, first_td);
|
dbri_dma_off(desc, first_td);
|
||||||
dbri_cmdsend(dbri, cmd, 2);
|
dbri_cmdsend(dbri, cmd, 2);
|
||||||
|
|
||||||
|
@ -1740,7 +1746,7 @@ static void xmit_descs(struct snd_dbri *dbri)
|
||||||
*(cmd++) = DBRI_CMD(D_SDP, 0,
|
*(cmd++) = DBRI_CMD(D_SDP, 0,
|
||||||
dbri->pipes[info->pipe].sdp
|
dbri->pipes[info->pipe].sdp
|
||||||
| D_SDP_P | D_SDP_EVERY | D_SDP_C);
|
| D_SDP_P | D_SDP_EVERY | D_SDP_C);
|
||||||
*(cmd++) = dbri->dma_dvma +
|
*(cmd++) = dvma_addr +
|
||||||
dbri_dma_off(desc, first_td);
|
dbri_dma_off(desc, first_td);
|
||||||
dbri_cmdsend(dbri, cmd, 2);
|
dbri_cmdsend(dbri, cmd, 2);
|
||||||
|
|
||||||
|
@ -2539,7 +2545,7 @@ static int snd_dbri_create(struct snd_card *card,
|
||||||
if (!dbri->dma)
|
if (!dbri->dma)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
dprintk(D_GEN, "DMA Cmd Block 0x%p (0x%08x)\n",
|
dprintk(D_GEN, "DMA Cmd Block 0x%p (%pad)\n",
|
||||||
dbri->dma, dbri->dma_dvma);
|
dbri->dma, dbri->dma_dvma);
|
||||||
|
|
||||||
/* Map the registers into memory. */
|
/* Map the registers into memory. */
|
||||||
|
|
Loading…
Reference in a new issue