diff options
author | Marek Belisko <marek.belisko@open-nandra.com> | 2011-03-10 05:51:34 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-03-14 14:51:21 -0400 |
commit | fc796a6502de4c146bf3893390cca43df2d0e539 (patch) | |
tree | dcab0196684ad069772ca097a093674d02f84233 | |
parent | 8b2dab1cf8dec78aecaf1b4cf65fb316562699ca (diff) |
staging: ft1000: Fix coding style in ft1000_dsp_prov function.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/staging/ft1000/ft1000-usb/ft1000_hw.c | 141 |
1 files changed, 73 insertions, 68 deletions
diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c index f1b4ce15daa..01877581a57 100644 --- a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c +++ b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c | |||
@@ -1439,92 +1439,97 @@ static bool ft1000_receive_cmd(struct ft1000_device *dev, u16 *pbuffer, | |||
1439 | } | 1439 | } |
1440 | } | 1440 | } |
1441 | 1441 | ||
1442 | |||
1443 | static int ft1000_dsp_prov(void *arg) | 1442 | static int ft1000_dsp_prov(void *arg) |
1444 | { | 1443 | { |
1445 | struct ft1000_device *dev = (struct ft1000_device *)arg; | 1444 | struct ft1000_device *dev = (struct ft1000_device *)arg; |
1446 | struct ft1000_info *info = netdev_priv(dev->net); | 1445 | struct ft1000_info *info = netdev_priv(dev->net); |
1447 | u16 tempword; | 1446 | u16 tempword; |
1448 | u16 len; | 1447 | u16 len; |
1449 | u16 i=0; | 1448 | u16 i = 0; |
1450 | struct prov_record *ptr; | 1449 | struct prov_record *ptr; |
1451 | struct pseudo_hdr *ppseudo_hdr; | 1450 | struct pseudo_hdr *ppseudo_hdr; |
1452 | u16 *pmsg; | 1451 | u16 *pmsg; |
1453 | u16 status; | 1452 | u16 status; |
1454 | u16 TempShortBuf [256]; | 1453 | u16 TempShortBuf[256]; |
1455 | 1454 | ||
1456 | DEBUG("*** DspProv Entered\n"); | 1455 | DEBUG("*** DspProv Entered\n"); |
1457 | 1456 | ||
1458 | while (list_empty(&info->prov_list) == 0) | 1457 | while (list_empty(&info->prov_list) == 0) { |
1459 | { | 1458 | DEBUG("DSP Provisioning List Entry\n"); |
1460 | DEBUG("DSP Provisioning List Entry\n"); | 1459 | |
1461 | 1460 | /* Check if doorbell is available */ | |
1462 | // Check if doorbell is available | 1461 | DEBUG("check if doorbell is cleared\n"); |
1463 | DEBUG("check if doorbell is cleared\n"); | 1462 | status = |
1464 | status = ft1000_read_register (dev, &tempword, FT1000_REG_DOORBELL); | 1463 | ft1000_read_register(dev, &tempword, FT1000_REG_DOORBELL); |
1465 | if (status) | 1464 | if (status) { |
1466 | { | 1465 | DEBUG("ft1000_dsp_prov::ft1000_read_register error\n"); |
1467 | DEBUG("ft1000_dsp_prov::ft1000_read_register error\n"); | 1466 | break; |
1468 | break; | 1467 | } |
1469 | } | ||
1470 | 1468 | ||
1471 | while (tempword & FT1000_DB_DPRAM_TX) { | 1469 | while (tempword & FT1000_DB_DPRAM_TX) { |
1472 | mdelay(10); | 1470 | mdelay(10); |
1473 | i++; | 1471 | i++; |
1474 | if (i==10) { | 1472 | if (i == 10) { |
1475 | DEBUG("FT1000:ft1000_dsp_prov:message drop\n"); | 1473 | DEBUG("FT1000:ft1000_dsp_prov:message drop\n"); |
1476 | return STATUS_FAILURE; | 1474 | return STATUS_FAILURE; |
1477 | } | 1475 | } |
1478 | ft1000_read_register(dev, &tempword, FT1000_REG_DOORBELL); | 1476 | ft1000_read_register(dev, &tempword, |
1479 | } | 1477 | FT1000_REG_DOORBELL); |
1478 | } | ||
1480 | 1479 | ||
1481 | if ( !(tempword & FT1000_DB_DPRAM_TX) ) { | 1480 | if (!(tempword & FT1000_DB_DPRAM_TX)) { |
1482 | DEBUG("*** Provision Data Sent to DSP\n"); | 1481 | DEBUG("*** Provision Data Sent to DSP\n"); |
1483 | |||
1484 | // Send provisioning data | ||
1485 | ptr = list_entry(info->prov_list.next, struct prov_record, list); | ||
1486 | len = *(u16 *)ptr->pprov_data; | ||
1487 | len = htons(len); | ||
1488 | len += PSEUDOSZ; | ||
1489 | |||
1490 | pmsg = (u16 *)ptr->pprov_data; | ||
1491 | ppseudo_hdr = (struct pseudo_hdr *)pmsg; | ||
1492 | // Insert slow queue sequence number | ||
1493 | ppseudo_hdr->seq_num = info->squeseqnum++; | ||
1494 | ppseudo_hdr->portsrc = 0; | ||
1495 | // Calculate new checksum | ||
1496 | ppseudo_hdr->checksum = *pmsg++; | ||
1497 | //DEBUG("checksum = 0x%x\n", ppseudo_hdr->checksum); | ||
1498 | for (i=1; i<7; i++) { | ||
1499 | ppseudo_hdr->checksum ^= *pmsg++; | ||
1500 | //DEBUG("checksum = 0x%x\n", ppseudo_hdr->checksum); | ||
1501 | } | ||
1502 | 1482 | ||
1503 | TempShortBuf[0] = 0; | 1483 | /* Send provisioning data */ |
1504 | TempShortBuf[1] = htons (len); | 1484 | ptr = |
1505 | memcpy(&TempShortBuf[2], ppseudo_hdr, len); | 1485 | list_entry(info->prov_list.next, struct prov_record, |
1486 | list); | ||
1487 | len = *(u16 *) ptr->pprov_data; | ||
1488 | len = htons(len); | ||
1489 | len += PSEUDOSZ; | ||
1506 | 1490 | ||
1507 | status = ft1000_write_dpram32 (dev, 0, (u8 *)&TempShortBuf[0], (unsigned short)(len+2)); | 1491 | pmsg = (u16 *) ptr->pprov_data; |
1508 | status = ft1000_write_register (dev, FT1000_DB_DPRAM_TX, FT1000_REG_DOORBELL); | 1492 | ppseudo_hdr = (struct pseudo_hdr *)pmsg; |
1493 | /* Insert slow queue sequence number */ | ||
1494 | ppseudo_hdr->seq_num = info->squeseqnum++; | ||
1495 | ppseudo_hdr->portsrc = 0; | ||
1496 | /* Calculate new checksum */ | ||
1497 | ppseudo_hdr->checksum = *pmsg++; | ||
1498 | //DEBUG("checksum = 0x%x\n", ppseudo_hdr->checksum); | ||
1499 | for (i = 1; i < 7; i++) { | ||
1500 | ppseudo_hdr->checksum ^= *pmsg++; | ||
1501 | //DEBUG("checksum = 0x%x\n", ppseudo_hdr->checksum); | ||
1502 | } | ||
1509 | 1503 | ||
1510 | list_del(&ptr->list); | 1504 | TempShortBuf[0] = 0; |
1511 | kfree(ptr->pprov_data); | 1505 | TempShortBuf[1] = htons(len); |
1512 | kfree(ptr); | 1506 | memcpy(&TempShortBuf[2], ppseudo_hdr, len); |
1513 | } | 1507 | |
1514 | msleep(10); | 1508 | status = |
1515 | } | 1509 | ft1000_write_dpram32(dev, 0, |
1510 | (u8 *) &TempShortBuf[0], | ||
1511 | (unsigned short)(len + 2)); | ||
1512 | status = | ||
1513 | ft1000_write_register(dev, FT1000_DB_DPRAM_TX, | ||
1514 | FT1000_REG_DOORBELL); | ||
1515 | |||
1516 | list_del(&ptr->list); | ||
1517 | kfree(ptr->pprov_data); | ||
1518 | kfree(ptr); | ||
1519 | } | ||
1520 | msleep(10); | ||
1521 | } | ||
1516 | 1522 | ||
1517 | DEBUG("DSP Provisioning List Entry finished\n"); | 1523 | DEBUG("DSP Provisioning List Entry finished\n"); |
1518 | 1524 | ||
1519 | msleep(100); | 1525 | msleep(100); |
1520 | 1526 | ||
1521 | info->fProvComplete = 1; | 1527 | info->fProvComplete = 1; |
1522 | info->CardReady = 1; | 1528 | info->CardReady = 1; |
1523 | return STATUS_SUCCESS; | ||
1524 | 1529 | ||
1530 | return STATUS_SUCCESS; | ||
1525 | } | 1531 | } |
1526 | 1532 | ||
1527 | |||
1528 | static int ft1000_proc_drvmsg (struct ft1000_device *dev, u16 size) { | 1533 | static int ft1000_proc_drvmsg (struct ft1000_device *dev, u16 size) { |
1529 | struct ft1000_info *info = netdev_priv(dev->net); | 1534 | struct ft1000_info *info = netdev_priv(dev->net); |
1530 | u16 msgtype; | 1535 | u16 msgtype; |