Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 219791
b: refs/heads/master
c: c8e7978
h: refs/heads/master
i:
  219789: 1db5a40
  219787: ff32916
  219783: fb37d7c
  219775: 9137fd0
v: v3
  • Loading branch information
Andy Shevchenko authored and Greg Kroah-Hartman committed Sep 8, 2010
1 parent 5cd1d51 commit c1d30ca
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 39 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 91facdbe5075fdbc97a91b03855441eb5347cbc5
refs/heads/master: c8e7978ee45c18420d0d9f5f72905976fb8c9ff8
31 changes: 10 additions & 21 deletions trunk/drivers/staging/ath6kl/miscdrv/ar3kps/ar3kpsparser.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@

#include "ar3kpsparser.h"

#include <linux/ctype.h>
#include <linux/kernel.h>

#define BD_ADDR_SIZE 6
#define WRITE_PATCH 8
#define ENABLE_PATCH 11
Expand Down Expand Up @@ -61,20 +64,6 @@
#define MAX_BYTE_LENGTH 244

#define SKIP_BLANKS(str) while (*str == ' ') str++
#define MIN(x, y) (((x) <= (y))? (x):(y))
#define MAX(x, y) (((x) >= (y))? (x):(y))

#define UNUSED(x) (x=x)

#define IS_BETWEEN(x, lower, upper) (((lower) <= (x)) && ((x) <= (upper)))
#define IS_DIGIT(c) (IS_BETWEEN((c), '0', '9'))
#define IS_HEX(c) (IS_BETWEEN((c), '0', '9') || IS_BETWEEN((c), 'a', 'f') || IS_BETWEEN((c), 'A', 'F'))
#define TO_LOWER(c) (IS_BETWEEN((c), 'A', 'Z') ? ((c) - 'A' + 'a') : (c))
#define IS_BLANK(c) ((c) == ' ')
#define CONV_DEC_DIGIT_TO_VALUE(c) ((c) - '0')
#define CONV_HEX_DIGIT_TO_VALUE(c) (IS_DIGIT(c) ? ((c) - '0') : (IS_BETWEEN((c), 'A', 'Z') ? ((c) - 'A' + 10) : ((c) - 'a' + 10)))
#define CONV_VALUE_TO_HEX(v) ((A_UINT8)( ((v & 0x0F) <= 9) ? ((v & 0x0F) + '0') : ((v & 0x0F) - 10 + 'A') ) )


enum MinBootFileFormatE
{
Expand Down Expand Up @@ -483,12 +472,12 @@ A_STATUS AthParseFilesUnified(A_UCHAR *srcbuffer,A_UINT32 srclen, int FileFormat
if((stPS_DataFormat.eDataType == eHex) && stPS_DataFormat.bIsArray == true) {
while(uReadCount > 0) {
PsTagEntry[TagCount].TagData[stReadStatus.uByteCount] =
(A_UINT8)(CONV_HEX_DIGIT_TO_VALUE(pCharLine[stReadStatus.uCharCount]) << 4)
| (A_UINT8)(CONV_HEX_DIGIT_TO_VALUE(pCharLine[stReadStatus.uCharCount + 1]));
(A_UINT8)(hex_to_bin(pCharLine[stReadStatus.uCharCount]) << 4)
| (A_UINT8)(hex_to_bin(pCharLine[stReadStatus.uCharCount + 1]));

PsTagEntry[TagCount].TagData[stReadStatus.uByteCount+1] =
(A_UINT8)(CONV_HEX_DIGIT_TO_VALUE(pCharLine[stReadStatus.uCharCount + 3]) << 4)
| (A_UINT8)(CONV_HEX_DIGIT_TO_VALUE(pCharLine[stReadStatus.uCharCount + 4]));
(A_UINT8)(hex_to_bin(pCharLine[stReadStatus.uCharCount + 3]) << 4)
| (A_UINT8)(hex_to_bin(pCharLine[stReadStatus.uCharCount + 4]));

stReadStatus.uCharCount += 6; // read two bytes, plus a space;
stReadStatus.uByteCount += 2;
Expand Down Expand Up @@ -574,14 +563,14 @@ A_STATUS GetNextTwoChar(A_UCHAR *srcbuffer,A_UINT32 len, A_UINT32 *pos, char * b
unsigned char ch;

ch = AthReadChar(srcbuffer,len,pos);
if(ch != '\0' && IS_HEX(ch)) {
if(ch != '\0' && isxdigit(ch)) {
buffer[0] = ch;
} else
{
return A_ERROR;
}
ch = AthReadChar(srcbuffer,len,pos);
if(ch != '\0' && IS_HEX(ch)) {
if(ch != '\0' && isxdigit(ch)) {
buffer[1] = ch;
} else
{
Expand All @@ -606,7 +595,7 @@ A_STATUS AthDoParsePatch(A_UCHAR *patchbuffer, A_UINT32 patchlen)
Patch_Count = 0;

while(NULL != AthGetLine(Line,MAX_BYTE_LENGTH,patchbuffer,patchlen,&filepos)) {
if(strlen(Line) <= 1 || !IS_HEX(Line[0])) {
if(strlen(Line) <= 1 || !isxdigit(Line[0])) {
continue;
} else {
break;
Expand Down
32 changes: 15 additions & 17 deletions trunk/drivers/staging/ath6kl/os/linux/eeprom.c
Original file line number Diff line number Diff line change
Expand Up @@ -71,24 +71,22 @@ wmic_ether_aton(const char *orig, A_UINT8 *eth)
i = 0;
for(bufp = orig; *bufp != '\0'; ++bufp) {
unsigned int val;
unsigned char c = *bufp++;
if (c >= '0' && c <= '9') val = c - '0';
else if (c >= 'a' && c <= 'f') val = c - 'a' + 10;
else if (c >= 'A' && c <= 'F') val = c - 'A' + 10;
else {
printk("%s: MAC value is invalid\n", __FUNCTION__);
break;
}
int h, l;

val <<= 4;
c = *bufp++;
if (c >= '0' && c <= '9') val |= c - '0';
else if (c >= 'a' && c <= 'f') val |= c - 'a' + 10;
else if (c >= 'A' && c <= 'F') val |= c - 'A' + 10;
else {
printk("%s: MAC value is invalid\n", __FUNCTION__);
break;
}
h = hex_to_bin(*bufp++);

if (h < 0) {
printk("%s: MAC value is invalid\n", __FUNCTION__);
break;
}

l = hex_to_bin(*bufp++);
if (l < 0) {
printk("%s: MAC value is invalid\n", __FUNCTION__);
break;
}

val = (h << 4) | l;

eth[i] = (unsigned char) (val & 0377);
if(++i == ATH_MAC_LEN) {
Expand Down

0 comments on commit c1d30ca

Please sign in to comment.