Commit 33f3a3cf authored by Bryan Thompson's avatar Bryan Thompson Committed by Greg Kroah-Hartman

staging: unisys: visorbus: Remove unused functions

Remove visorbus_clear_channel, visorchannel_signalqueue_slots_avail,
visorchannel_signalqueue_max_slots, visorchannel_clear, and
visorchannel_debug which are no longer called by any driver.
Signed-off-by: default avatarBryan Thompson <bryan.thompson@unisys.com>
Signed-off-by: default avatarDavid Kershner <david.kershner@unisys.com>
Reviewed-by: default avatarTim Sell <Timothy.Sell@unisys.com>
Acked-By: default avatarNeil Horman <nhorman@tuxdriver.com>
Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent fe129f62
......@@ -185,8 +185,6 @@ int visorbus_read_channel(struct visor_device *dev,
int visorbus_write_channel(struct visor_device *dev,
unsigned long offset, void *src,
unsigned long nbytes);
int visorbus_clear_channel(struct visor_device *dev,
unsigned long offset, u8 ch, unsigned long nbytes);
void visorbus_enable_channel_interrupts(struct visor_device *dev);
void visorbus_disable_channel_interrupts(struct visor_device *dev);
#endif
......@@ -206,17 +204,12 @@ int visorchannel_read(struct visorchannel *channel, ulong offset,
void *local, ulong nbytes);
int visorchannel_write(struct visorchannel *channel, ulong offset,
void *local, ulong nbytes);
int visorchannel_clear(struct visorchannel *channel, ulong offset,
u8 ch, ulong nbytes);
bool visorchannel_signalremove(struct visorchannel *channel, u32 queue,
void *msg);
bool visorchannel_signalinsert(struct visorchannel *channel, u32 queue,
void *msg);
bool visorchannel_signalempty(struct visorchannel *channel, u32 queue);
int visorchannel_signalqueue_slots_avail(struct visorchannel *channel,
u32 queue);
int visorchannel_signalqueue_max_slots(struct visorchannel *channel, u32 queue);
u64 visorchannel_get_physaddr(struct visorchannel *channel);
ulong visorchannel_get_nbytes(struct visorchannel *channel);
char *visorchannel_id(struct visorchannel *channel, char *s);
......@@ -226,8 +219,6 @@ int visorchannel_set_clientpartition(struct visorchannel *channel,
u64 partition_handle);
uuid_le visorchannel_get_uuid(struct visorchannel *channel);
char *visorchannel_uuid_id(uuid_le *guid, char *s);
void visorchannel_debug(struct visorchannel *channel, int num_queues,
struct seq_file *seq, u32 off);
void __iomem *visorchannel_get_header(struct visorchannel *channel);
#define BUS_ROOT_DEVICE UINT_MAX
......
......@@ -715,13 +715,6 @@ visorbus_write_channel(struct visor_device *dev, unsigned long offset,
}
EXPORT_SYMBOL_GPL(visorbus_write_channel);
int
visorbus_clear_channel(struct visor_device *dev, unsigned long offset, u8 ch,
unsigned long nbytes)
{
return visorchannel_clear(dev->visorchannel, offset, ch, nbytes);
}
/** We don't really have a real interrupt, so for now we just call the
* interrupt function periodically...
*/
......
......@@ -255,41 +255,6 @@ visorchannel_write(struct visorchannel *channel, ulong offset,
return 0;
}
int
visorchannel_clear(struct visorchannel *channel, ulong offset, u8 ch,
ulong nbytes)
{
int err;
int bufsize = PAGE_SIZE;
int written = 0;
u8 *buf;
buf = (u8 *)__get_free_page(GFP_KERNEL);
if (!buf)
return -ENOMEM;
memset(buf, ch, bufsize);
while (nbytes > 0) {
int thisbytes = bufsize;
if (nbytes < thisbytes)
thisbytes = nbytes;
err = visorchannel_write(channel, offset + written,
buf, thisbytes);
if (err)
goto out_free_page;
written += thisbytes;
nbytes -= thisbytes;
}
err = 0;
out_free_page:
free_page((unsigned long)buf);
return err;
}
void __iomem *
visorchannel_get_header(struct visorchannel *channel)
{
......@@ -490,129 +455,3 @@ visorchannel_signalinsert(struct visorchannel *channel, u32 queue, void *msg)
return rc;
}
EXPORT_SYMBOL_GPL(visorchannel_signalinsert);
int
visorchannel_signalqueue_slots_avail(struct visorchannel *channel, u32 queue)
{
struct signal_queue_header sig_hdr;
u32 slots_avail, slots_used;
u32 head, tail;
if (!sig_read_header(channel, queue, &sig_hdr))
return 0;
head = sig_hdr.head;
tail = sig_hdr.tail;
if (head < tail)
head = head + sig_hdr.max_slots;
slots_used = head - tail;
slots_avail = sig_hdr.max_signals - slots_used;
return (int)slots_avail;
}
int
visorchannel_signalqueue_max_slots(struct visorchannel *channel, u32 queue)
{
struct signal_queue_header sig_hdr;
if (!sig_read_header(channel, queue, &sig_hdr))
return 0;
return (int)sig_hdr.max_signals;
}
static void
sigqueue_debug(struct signal_queue_header *q, int which, struct seq_file *seq)
{
seq_printf(seq, "Signal Queue #%d\n", which);
seq_printf(seq, " VersionId = %lu\n", (ulong)q->version);
seq_printf(seq, " Type = %lu\n", (ulong)q->chtype);
seq_printf(seq, " oSignalBase = %llu\n",
(long long)q->sig_base_offset);
seq_printf(seq, " SignalSize = %lu\n", (ulong)q->signal_size);
seq_printf(seq, " MaxSignalSlots = %lu\n",
(ulong)q->max_slots);
seq_printf(seq, " MaxSignals = %lu\n", (ulong)q->max_signals);
seq_printf(seq, " FeatureFlags = %-16.16Lx\n",
(long long)q->features);
seq_printf(seq, " NumSignalsSent = %llu\n",
(long long)q->num_sent);
seq_printf(seq, " NumSignalsReceived = %llu\n",
(long long)q->num_received);
seq_printf(seq, " NumOverflows = %llu\n",
(long long)q->num_overflows);
seq_printf(seq, " Head = %lu\n", (ulong)q->head);
seq_printf(seq, " Tail = %lu\n", (ulong)q->tail);
}
void
visorchannel_debug(struct visorchannel *channel, int num_queues,
struct seq_file *seq, u32 off)
{
u64 addr = 0;
ulong nbytes = 0, nbytes_region = 0;
struct channel_header hdr;
struct channel_header *phdr = &hdr;
int i = 0;
int errcode = 0;
if (!channel)
return;
addr = visorchannel_get_physaddr(channel);
nbytes_region = visorchannel_get_nbytes(channel);
errcode = visorchannel_read(channel, off,
phdr, sizeof(struct channel_header));
if (errcode < 0) {
seq_printf(seq,
"Read of channel header failed with errcode=%d)\n",
errcode);
if (off == 0) {
phdr = &channel->chan_hdr;
seq_puts(seq, "(following data may be stale)\n");
} else {
return;
}
}
nbytes = (ulong)(phdr->size);
seq_printf(seq, "--- Begin channel @0x%-16.16Lx for 0x%lx bytes (region=0x%lx bytes) ---\n",
addr + off, nbytes, nbytes_region);
seq_printf(seq, "Type = %pUL\n", &phdr->chtype);
seq_printf(seq, "ZoneGuid = %pUL\n", &phdr->zone_uuid);
seq_printf(seq, "Signature = 0x%-16.16Lx\n",
(long long)phdr->signature);
seq_printf(seq, "LegacyState = %lu\n", (ulong)phdr->legacy_state);
seq_printf(seq, "SrvState = %lu\n", (ulong)phdr->srv_state);
seq_printf(seq, "CliStateBoot = %lu\n", (ulong)phdr->cli_state_boot);
seq_printf(seq, "CliStateOS = %lu\n", (ulong)phdr->cli_state_os);
seq_printf(seq, "HeaderSize = %lu\n", (ulong)phdr->header_size);
seq_printf(seq, "Size = %llu\n", (long long)phdr->size);
seq_printf(seq, "Features = 0x%-16.16llx\n",
(long long)phdr->features);
seq_printf(seq, "PartitionHandle = 0x%-16.16llx\n",
(long long)phdr->partition_handle);
seq_printf(seq, "Handle = 0x%-16.16llx\n",
(long long)phdr->handle);
seq_printf(seq, "VersionId = %lu\n", (ulong)phdr->version_id);
seq_printf(seq, "oChannelSpace = %llu\n",
(long long)phdr->ch_space_offset);
if ((phdr->ch_space_offset == 0) || (errcode < 0))
;
else
for (i = 0; i < num_queues; i++) {
struct signal_queue_header q;
errcode = visorchannel_read(channel,
off +
phdr->ch_space_offset +
(i * sizeof(q)),
&q, sizeof(q));
if (errcode < 0) {
seq_printf(seq,
"failed to read signal queue #%d from channel @0x%-16.16Lx errcode=%d\n",
i, addr, errcode);
continue;
}
sigqueue_debug(&q, i, seq);
}
seq_printf(seq, "--- End channel @0x%-16.16Lx for 0x%lx bytes ---\n",
addr + off, nbytes);
}
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