Commit 08598918 authored by Benjamin Romer's avatar Benjamin Romer Committed by Greg Kroah-Hartman

staging: unisys: refactor ULTRA_channel_client_release_os()

Remove the unnecessary macro ULTRA_CHANNEL_CLIENT_RELEASE_OS(), rename
the function to spar_channel_client_release_os(), fix references to the
macro to call the function directly instead, remove the unnecessary
logCtx, file, and line parameters, and fix CamelCase names:

pChannel => ch
chanId => id
pChan => hdr
Signed-off-by: default avatarBenjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9f16930e
...@@ -149,10 +149,6 @@ ULTRA_CHANNELCLI_STRING(u32 v) ...@@ -149,10 +149,6 @@ ULTRA_CHANNELCLI_STRING(u32 v)
mb(); /* required for channel synch */ \ mb(); /* required for channel synch */ \
} while (0) } while (0)
#define ULTRA_CHANNEL_CLIENT_RELEASE_OS(pChan, chanId, logCtx) \
ULTRA_channel_client_release_os(pChan, chanId, logCtx, \
(char *)__FILE__, __LINE__, (char *)__func__)
/* Values for ULTRA_CHANNEL_PROTOCOL.CliErrorBoot: */ /* Values for ULTRA_CHANNEL_PROTOCOL.CliErrorBoot: */
/* throttling invalid boot channel statetransition error due to client /* throttling invalid boot channel statetransition error due to client
* disabled */ * disabled */
...@@ -494,29 +490,25 @@ spar_channel_client_acquire_os(void __iomem *ch, u8 *id) ...@@ -494,29 +490,25 @@ spar_channel_client_acquire_os(void __iomem *ch, u8 *id)
} }
static inline void static inline void
ULTRA_channel_client_release_os(void __iomem *pChannel, u8 *chanId, spar_channel_client_release_os(void __iomem *ch, u8 *id)
void *logCtx, char *file, int line, char *func)
{ {
struct channel_header __iomem *pChan = pChannel; struct channel_header __iomem *hdr = ch;
if (readb(&pChan->cli_error_os) != 0) { if (readb(&hdr->cli_error_os) != 0) {
/* we are in an error msg throttling state; come out of it */ /* we are in an error msg throttling state; come out of it */
pr_info("%s Channel OS client error state cleared @%s:%d\n", pr_info("%s Channel OS client error state cleared\n", id);
chanId, pathname_last_n_nodes((u8 *) file, 4), writeb(0, &hdr->cli_error_os);
line);
writeb(0, &pChan->cli_error_os);
} }
if (readl(&pChan->cli_state_os) == CHANNELCLI_OWNED) if (readl(&hdr->cli_state_os) == CHANNELCLI_OWNED)
return; return;
if (readl(&pChan->cli_state_os) != CHANNELCLI_BUSY) { if (readl(&hdr->cli_state_os) != CHANNELCLI_BUSY) {
pr_info("%s Channel StateTransition INVALID! - release failed because OS client NOT BUSY (state=%s(%d)) @%s:%d\n", pr_info("%s Channel StateTransition INVALID! - release failed because OS client NOT BUSY (state=%s(%d))\n",
chanId, ULTRA_CHANNELCLI_STRING( id, ULTRA_CHANNELCLI_STRING(
readl(&pChan->cli_state_os)), readl(&hdr->cli_state_os)),
readl(&pChan->cli_state_os), readl(&hdr->cli_state_os));
pathname_last_n_nodes((u8 *) file, 4), line);
/* return; */ /* return; */
} }
writel(CHANNELCLI_ATTACHED, &pChan->cli_state_os); /* release busy */ writel(CHANNELCLI_ATTACHED, &hdr->cli_state_os); /* release busy */
} }
/* /*
......
...@@ -87,7 +87,7 @@ do_locked_client_insert(struct uisqueue_info *queueinfo, ...@@ -87,7 +87,7 @@ do_locked_client_insert(struct uisqueue_info *queueinfo,
queueinfo->packets_sent++; queueinfo->packets_sent++;
rc = 1; rc = 1;
} }
ULTRA_CHANNEL_CLIENT_RELEASE_OS(queueinfo->chan, channelId, NULL); spar_channel_client_release_os(queueinfo->chan, channelId);
unlock: unlock:
spin_unlock_irqrestore((spinlock_t *)lock, flags); spin_unlock_irqrestore((spinlock_t *)lock, flags);
return rc; return rc;
......
...@@ -1285,8 +1285,7 @@ drain_queue(struct virthba_info *virthbainfo, struct chaninfo *dc, ...@@ -1285,8 +1285,7 @@ drain_queue(struct virthba_info *virthbainfo, struct chaninfo *dc,
} }
qrslt = uisqueue_get_cmdrsp(dc->queueinfo, cmdrsp, qrslt = uisqueue_get_cmdrsp(dc->queueinfo, cmdrsp,
IOCHAN_FROM_IOPART); IOCHAN_FROM_IOPART);
ULTRA_CHANNEL_CLIENT_RELEASE_OS(dc->queueinfo->chan, spar_channel_client_release_os(dc->queueinfo->chan, "vhba");
"vhba", NULL);
spin_unlock_irqrestore(&virthbainfo->chinfo.insertlock, flags); spin_unlock_irqrestore(&virthbainfo->chinfo.insertlock, flags);
if (qrslt == 0) if (qrslt == 0)
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment