Lines Matching refs:info
80 info->sense_data[2] = sk; \
81 info->sense_data[12] = asc; \
82 info->sense_data[13] = ascq; \
112 struct sddr55_card_info *info = (struct sddr55_card_info *)us->extra;
118 info->last_access = jiffies;
132 struct sddr55_card_info *info = (struct sddr55_card_info *)us->extra;
154 kfree(info->lba_to_pba);
155 kfree(info->pba_to_lba);
156 info->lba_to_pba = NULL;
157 info->pba_to_lba = NULL;
159 info->fatal_error = 0;
160 info->force_read_only = 0;
172 info->read_only = (status[0] & 0x20);
195 struct sddr55_card_info *info = (struct sddr55_card_info *)us->extra;
209 len = min((unsigned int) sectors, (unsigned int) info->blocksize >>
210 info->smallpageshift) * PAGESIZE;
220 if (lba >= info->max_log_blks)
223 pba = info->lba_to_pba[lba];
227 pages = min((unsigned int) sectors << info->smallpageshift,
228 info->blocksize - page);
229 len = pages << info->pageshift;
239 address = (pba << info->blockshift) + page;
248 command[6] = LSB_of(pages << (1 - info->smallpageshift));
295 sectors -= pages >> info->smallpageshift;
314 struct sddr55_card_info *info = (struct sddr55_card_info *)us->extra;
327 if (info->read_only || info->force_read_only) {
336 len = min((unsigned int) sectors, (unsigned int) info->blocksize >>
337 info->smallpageshift) * PAGESIZE;
347 if (lba >= info->max_log_blks)
350 pba = info->lba_to_pba[lba];
354 pages = min((unsigned int) sectors << info->smallpageshift,
355 info->blocksize - page);
356 len = pages << info->pageshift;
370 int max_pba = (info->max_log_blks / 250 ) * 256;
389 if (info->pba_to_lba[pba] == UNUSED_BLOCK) {
414 address = (pba << info->blockshift) + page;
424 command[4] |= LSB_of(pages >> info->smallpageshift);
470 >> info->blockshift;
474 info->pba_to_lba[new_pba] = BAD_BLOCK;
485 info->lba_to_pba[lba] = new_pba;
486 info->pba_to_lba[pba] = UNUSED_BLOCK;
489 if (info->pba_to_lba[new_pba] != UNUSED_BLOCK) {
491 new_pba, info->pba_to_lba[new_pba]);
492 info->fatal_error = 1;
499 info->pba_to_lba[new_pba] = lba % 1000;
503 sectors -= pages >> info->smallpageshift;
560 struct sddr55_card_info *info = (struct sddr55_card_info *)us->extra;
576 info->pageshift = 9;
577 info->smallpageshift = 0;
578 info->blocksize = 16;
579 info->blockshift = 4;
580 info->blockmask = 15;
587 info->pageshift = 8;
588 info->smallpageshift = 1;
593 info->pageshift = 8;
594 info->smallpageshift = 1;
610 info->blocksize = 32;
611 info->blockshift = 5;
612 info->blockmask = 31;
616 info->blocksize = 32;
617 info->blockshift = 5;
618 info->blockmask = 31;
622 info->blocksize = 32;
623 info->blockshift = 5;
624 info->blockmask = 31;
628 info->blocksize = 32;
629 info->blockshift = 5;
630 info->blockmask = 31;
641 struct sddr55_card_info *info = (struct sddr55_card_info *)(us->extra);
650 if (!info->capacity)
653 numblocks = info->capacity >> (info->blockshift + info->pageshift);
686 kfree(info->lba_to_pba);
687 kfree(info->pba_to_lba);
688 info->lba_to_pba = kmalloc_array(numblocks, sizeof(int), GFP_NOIO);
689 info->pba_to_lba = kmalloc_array(numblocks, sizeof(int), GFP_NOIO);
691 if (info->lba_to_pba == NULL || info->pba_to_lba == NULL) {
692 kfree(info->lba_to_pba);
693 kfree(info->pba_to_lba);
694 info->lba_to_pba = NULL;
695 info->pba_to_lba = NULL;
700 memset(info->lba_to_pba, 0xff, numblocks*sizeof(int));
701 memset(info->pba_to_lba, 0xff, numblocks*sizeof(int));
704 max_lba = info->max_log_blks;
736 info->pba_to_lba[i] = lba;
742 if (info->lba_to_pba[lba + zone * 1000] != NOT_ALLOCATED &&
743 !info->force_read_only) {
747 info->force_read_only = 1;
753 info->lba_to_pba[lba + zone * 1000] = i;
762 struct sddr55_card_info *info = (struct sddr55_card_info *)extra;
767 kfree(info->lba_to_pba);
768 kfree(info->pba_to_lba);
793 struct sddr55_card_info *info;
803 info = (struct sddr55_card_info *)(us->extra);
807 info->sense_data[2],
808 info->sense_data[12],
809 info->sense_data[13]);
811 memcpy (ptr, info->sense_data, sizeof info->sense_data);
814 usb_stor_set_xfer_buf (ptr, sizeof info->sense_data, srb);
815 memset (info->sense_data, 0, sizeof info->sense_data);
820 memset (info->sense_data, 0, sizeof info->sense_data);
837 if (info->lba_to_pba == NULL || time_after(jiffies, info->last_access + HZ/2)) {
854 if (info->fatal_error) {
869 info->capacity = capacity;
875 info->max_log_blks = ((info->capacity >> (info->pageshift + info->blockshift)) / 256) * 250;
898 ptr[3] = (info->read_only || info->force_read_only) ? 0x80 : 0;
930 page <<= info->smallpageshift;
934 lba = page >> info->blockshift;
935 page = page & info->blockmask;
939 if (lba >= info->max_log_blks) {
942 lba, info->max_log_blks - 1);
949 pba = info->lba_to_pba[lba];