When calling debugfs functions, there is no need to ever check the return value. The function can work or not, but the code logic should never do something different based on this. In doing this, make brcmf_debugfs_add_entry() return void as no one was even paying attention to the return value. Cc: Arend van Spriel <arend.vanspriel@broadcom.com> Cc: Franky Lin <franky.lin@broadcom.com> Cc: Hante Meuleman <hante.meuleman@broadcom.com> Cc: Chi-Hsien Lin <chi-hsien.lin@cypress.com> Cc: Wright Feng <wright.feng@cypress.com> Cc: Kalle Valo <kvalo@codeaurora.org> Cc: "David S. Miller" <davem@davemloft.net> Cc: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: "Rafał Miłecki" <rafal@milecki.pl> Cc: linux-wireless@vger.kernel.org Cc: brcm80211-dev-list.pdl@broadcom.com Cc: brcm80211-dev-list@cypress.com Cc: netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/20200429101526.GA2094124@kroah.com
56 lines
1.2 KiB
C
56 lines
1.2 KiB
C
// SPDX-License-Identifier: ISC
|
|
/*
|
|
* Copyright (c) 2012 Broadcom Corporation
|
|
*/
|
|
#include <linux/debugfs.h>
|
|
#include <linux/netdevice.h>
|
|
#include <linux/module.h>
|
|
#include <linux/devcoredump.h>
|
|
|
|
#include <brcmu_wifi.h>
|
|
#include <brcmu_utils.h>
|
|
#include "core.h"
|
|
#include "bus.h"
|
|
#include "fweh.h"
|
|
#include "debug.h"
|
|
|
|
int brcmf_debug_create_memdump(struct brcmf_bus *bus, const void *data,
|
|
size_t len)
|
|
{
|
|
void *dump;
|
|
size_t ramsize;
|
|
int err;
|
|
|
|
ramsize = brcmf_bus_get_ramsize(bus);
|
|
if (!ramsize)
|
|
return -ENOTSUPP;
|
|
|
|
dump = vzalloc(len + ramsize);
|
|
if (!dump)
|
|
return -ENOMEM;
|
|
|
|
if (data && len > 0)
|
|
memcpy(dump, data, len);
|
|
err = brcmf_bus_get_memdump(bus, dump + len, ramsize);
|
|
if (err) {
|
|
vfree(dump);
|
|
return err;
|
|
}
|
|
|
|
dev_coredumpv(bus->dev, dump, len + ramsize, GFP_KERNEL);
|
|
|
|
return 0;
|
|
}
|
|
|
|
struct dentry *brcmf_debugfs_get_devdir(struct brcmf_pub *drvr)
|
|
{
|
|
return drvr->wiphy->debugfsdir;
|
|
}
|
|
|
|
void brcmf_debugfs_add_entry(struct brcmf_pub *drvr, const char *fn,
|
|
int (*read_fn)(struct seq_file *seq, void *data))
|
|
{
|
|
WARN(!drvr->wiphy->debugfsdir, "wiphy not (yet) registered\n");
|
|
debugfs_create_devm_seqfile(drvr->bus_if->dev, fn,
|
|
drvr->wiphy->debugfsdir, read_fn);
|
|
}
|