linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Michael Büsch" <m@bues.ch>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: John W Linville <linville@tuxdriver.com>,
	Michael Buesch <mb@bu3sch.de>,
	zajec5@gmail.com, b43-dev@lists.infradead.org,
	linux-wireless@vger.kernel.org
Subject: Re: [PATCH] ssb: Convert to use crc8 code in kernel library
Date: Sun, 9 Oct 2011 00:51:07 +0200	[thread overview]
Message-ID: <20111009005107.43a49372@milhouse> (raw)
In-Reply-To: <4e90ce9a.89uGF659NNpbpyA3%Larry.Finger@lwfinger.net>

On Sat, 08 Oct 2011 17:28:42 -0500
Larry Finger <Larry.Finger@lwfinger.net> wrote:

> The kernel now contains library routines to establish crc8 tables and
> to calculate the appropriate sums. Use them for ssb.

> +static u8 srom_crc8_table[CRC8_TABLE_SIZE];
> +
> +/* Polynomial:   x^8 + x^7 + x^6 + x^4 + x^2 + 1   */
> +#define SROM_CRC8_POLY	0xAB
> +
> +static inline void ltoh16_buf(u16 *buf, unsigned int size)
>  {
> +	size /= 2;
> +	while (size--)
> +		*(buf + size) = le16_to_cpu(*(__le16 *)(buf + size));
> +}
>  
> -	return crc;
> +static inline void htol16_buf(u16 *buf, unsigned int size)
> +{
> +	size /= 2;
> +	while (size--)
> +		*(__le16 *)(buf + size) = cpu_to_le16(*(buf + size));
>  }

>  		return -ENOMEM;
> +	crc8_populate_lsb(srom_crc8_table, SROM_CRC8_POLY);
>  	bus->sprom_size = SSB_SPROMSIZE_WORDS_R123;
>  	sprom_do_read(bus, buf);
> +	/* convert to le */
> +	htol16_buf(buf, 2 * bus->sprom_size);

>  		bus->sprom_size = SSB_SPROMSIZE_WORDS_R4;
>  		sprom_do_read(bus, buf);
> +		htol16_buf(buf, 2 * bus->sprom_size);
>  		err = sprom_check_crc(buf, bus->sprom_size);

> +	/* restore endianess */
> +	ltoh16_buf(buf, 2 * bus->sprom_size);
>  	err = sprom_extract(bus, sprom, buf, bus->sprom_size);

This endianness stuff is _really_ ugly.
Does this patch decrease the code size, at least? I'll almost doubt it.
If it doesn't, why are we actually doing this?
It doesn't even decrease the .data size. Worse, it converts a .const
table to a .data table.

Just my 2 cents.

-- 
Greetings, Michael.

  parent reply	other threads:[~2011-10-08 22:51 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-08 22:28 [PATCH] ssb: Convert to use crc8 code in kernel library Larry Finger
2011-10-08 22:38 ` Joe Perches
2011-10-08 23:00   ` Larry Finger
2011-10-08 23:11     ` Joe Perches
2011-10-08 22:51 ` Michael Büsch [this message]
2011-10-09  8:48   ` Rafał Miłecki
2011-10-09 10:33     ` Arend van Spriel
2011-10-09 14:35     ` Larry Finger
2011-10-09  9:50   ` Arend van Spriel
2011-10-14 15:11 ` Pavel Roskin
2011-10-14 15:30   ` Arend van Spriel
2011-10-14 16:30   ` Larry Finger
2011-10-14 16:47     ` Michael Büsch
2011-10-15  8:27     ` Arend van Spriel
2011-10-15 13:29       ` Larry Finger
2011-10-15 13:53         ` Michael Büsch
2011-10-15 14:18           ` Larry Finger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111009005107.43a49372@milhouse \
    --to=m@bues.ch \
    --cc=Larry.Finger@lwfinger.net \
    --cc=b43-dev@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mb@bu3sch.de \
    --cc=zajec5@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).