From: Ulrich Kunitz <kune@xxxxxxxxxxxxxx> The kernel now provides a generic hexdump implementation should we need it again, so we can remove it from zd1211rw. After removing that, only one single-user function is left in zd_util. Move that to zd_mac and remove zd_util. Signed-off-by: Ulrich Kunitz <kune@xxxxxxxxxxxxxx> Signed-off-by: Daniel Drake <dsd@xxxxxxxxxx> --- drivers/net/wireless/zd1211rw-mac80211/Makefile | 2 +- drivers/net/wireless/zd1211rw-mac80211/zd_chip.c | 1 - drivers/net/wireless/zd1211rw-mac80211/zd_mac.c | 11 ++-- drivers/net/wireless/zd1211rw-mac80211/zd_usb.c | 1 - drivers/net/wireless/zd1211rw-mac80211/zd_util.c | 82 ---------------------- drivers/net/wireless/zd1211rw-mac80211/zd_util.h | 29 -------- 6 files changed, 6 insertions(+), 120 deletions(-) delete mode 100644 drivers/net/wireless/zd1211rw-mac80211/zd_util.c delete mode 100644 drivers/net/wireless/zd1211rw-mac80211/zd_util.h diff --git a/drivers/net/wireless/zd1211rw-mac80211/Makefile b/drivers/net/wireless/zd1211rw-mac80211/Makefile index 2b8dc59..e710be5 100644 --- a/drivers/net/wireless/zd1211rw-mac80211/Makefile +++ b/drivers/net/wireless/zd1211rw-mac80211/Makefile @@ -3,7 +3,7 @@ obj-$(CONFIG_ZD1211RW_MAC80211) += zd1211rw-mac80211.o zd1211rw-mac80211-objs := zd_chip.o zd_mac.o \ zd_rf_al2230.o zd_rf_rf2959.o \ zd_rf_al7230b.o zd_rf_uw2453.o \ - zd_ieee80211.o zd_rf.o zd_usb.o zd_util.o + zd_ieee80211.o zd_rf.o zd_usb.o ifeq ($(CONFIG_ZD1211RW_MAC80211_DEBUG),y) EXTRA_CFLAGS += -DDEBUG diff --git a/drivers/net/wireless/zd1211rw-mac80211/zd_chip.c b/drivers/net/wireless/zd1211rw-mac80211/zd_chip.c index bfd6a00..801556e 100644 --- a/drivers/net/wireless/zd1211rw-mac80211/zd_chip.c +++ b/drivers/net/wireless/zd1211rw-mac80211/zd_chip.c @@ -28,7 +28,6 @@ #include "zd_ieee80211.h" #include "zd_mac.h" #include "zd_rf.h" -#include "zd_util.h" void zd_chip_init(struct zd_chip *chip, struct ieee80211_hw *hw, diff --git a/drivers/net/wireless/zd1211rw-mac80211/zd_mac.c b/drivers/net/wireless/zd1211rw-mac80211/zd_mac.c index 984e156..1454ecd 100644 --- a/drivers/net/wireless/zd1211rw-mac80211/zd_mac.c +++ b/drivers/net/wireless/zd1211rw-mac80211/zd_mac.c @@ -28,7 +28,6 @@ #include "zd_mac.h" #include "zd_ieee80211.h" #include "zd_rf.h" -#include "zd_util.h" /* This table contains the hardware specific values for the modulation rates. */ static const struct ieee80211_rate zd_rates[] = { @@ -609,11 +608,11 @@ static int fill_rx_stats(struct ieee80211_rx_status *stats, { const struct rx_status *status; - *pstatus = status = zd_tail(buffer, length, sizeof(struct rx_status)); - if (status->frame_status & ZD_RX_ERROR) { - /* FIXME: update? */ - return -EINVAL; - } + /* Caller has to ensure that length >= sizeof(struct rx_status). */ + *pstatus = status = (struct rx_status *) + (buffer + (length - sizeof(struct rx_status))); + if (status->frame_status & ZD_RX_ERROR) + return -EINVAL; /* FIXME: stats update */ memset(stats, 0, sizeof(*stats)); stats->channel = _zd_chip_get_channel(&mac->chip); diff --git a/drivers/net/wireless/zd1211rw-mac80211/zd_usb.c b/drivers/net/wireless/zd1211rw-mac80211/zd_usb.c index 9de9f7e..c81ba0f 100644 --- a/drivers/net/wireless/zd1211rw-mac80211/zd_usb.c +++ b/drivers/net/wireless/zd1211rw-mac80211/zd_usb.c @@ -29,7 +29,6 @@ #include "zd_def.h" #include "zd_mac.h" #include "zd_usb.h" -#include "zd_util.h" static struct usb_device_id usb_ids[] = { /* ZD1211 */ diff --git a/drivers/net/wireless/zd1211rw-mac80211/zd_util.c b/drivers/net/wireless/zd1211rw-mac80211/zd_util.c deleted file mode 100644 index d20036c..0000000 --- a/drivers/net/wireless/zd1211rw-mac80211/zd_util.c +++ /dev/null @@ -1,82 +0,0 @@ -/* zd_util.c - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Utility program - */ - -#include "zd_def.h" -#include "zd_util.h" - -#ifdef DEBUG -static char hex(u8 v) -{ - v &= 0xf; - return (v < 10 ? '0' : 'a' - 10) + v; -} - -static char hex_print(u8 c) -{ - return (0x20 <= c && c < 0x7f) ? c : '.'; -} - -static void dump_line(const u8 *bytes, size_t size) -{ - char c; - size_t i; - - size = size <= 8 ? size : 8; - printk(KERN_DEBUG "zd1211 %p ", bytes); - for (i = 0; i < 8; i++) { - switch (i) { - case 1: - case 5: - c = '.'; - break; - case 3: - c = ':'; - break; - default: - c = ' '; - } - if (i < size) { - printk("%c%c%c", hex(bytes[i] >> 4), hex(bytes[i]), c); - } else { - printk(" %c", c); - } - } - - for (i = 0; i < size; i++) - printk("%c", hex_print(bytes[i])); - printk("\n"); -} - -void zd_hexdump(const void *bytes, size_t size) -{ - size_t i = 0; - - do { - dump_line((u8 *)bytes + i, size-i); - i += 8; - } while (i < size); -} -#endif /* DEBUG */ - -void *zd_tail(const void *buffer, size_t buffer_size, size_t tail_size) -{ - if (buffer_size < tail_size) - return NULL; - return (u8 *)buffer + (buffer_size - tail_size); -} diff --git a/drivers/net/wireless/zd1211rw-mac80211/zd_util.h b/drivers/net/wireless/zd1211rw-mac80211/zd_util.h deleted file mode 100644 index ce26f7a..0000000 --- a/drivers/net/wireless/zd1211rw-mac80211/zd_util.h +++ /dev/null @@ -1,29 +0,0 @@ -/* zd_util.h - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef _ZD_UTIL_H -#define _ZD_UTIL_H - -void *zd_tail(const void *buffer, size_t buffer_size, size_t tail_size); - -#ifdef DEBUG -void zd_hexdump(const void *bytes, size_t size); -#else -#define zd_hexdump(bytes, size) -#endif /* DEBUG */ - -#endif /* _ZD_UTIL_H */ -- 1.5.3 - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html