Lines Matching refs:part

89 static void lba2chs(unsigned long lba_addr, CHS *chs, PARTITION *part)
94 abss = (lba_addr >> 9) + part->start;
95 chs->cyl = abss / (part->sects * part->heads);
96 chs->head = (abss / part->sects) % part->heads;
97 chs->sector = (abss % part->sects) + 1;
148 static io_channel alloc_io_channel(PARTITION *part)
158 ioch->name = (char *)malloc(strlen(part->dev)+1);
163 strcpy(ioch->name, part->dev);
164 ioch->private_data = part;
182 PARTITION *part;
213 part = (PARTITION*)malloc(sizeof(PARTITION));
214 if (!part)
238 part->phys = 0x80;
239 part->phys += toupper(tmp[2]) - 'A';
244 part->pno = isdigit((int)tmp[3]) ? tmp[3] - '0' - 1: 0;
246 part->pno = 0xFF;
251 part->phys = isdigit((int)tmp[2]) ? tmp[2] - '0' : 0;
253 part->phys = 0x00; /* We'll assume /dev/fd0 */
261 if(part->phys < 0x80)
268 part->dev = strdup(dev);
274 part->phys,
284 free(part->dev);
285 free(part);
292 part->cyls = (unsigned short)(((sec[0] >> 6) << 8) + sec[1] + 1);
293 part->heads = sec[3] + 1;
294 part->sects = sec[0] & 0x3F;
299 _dio_hw_error = biosdisk(DISK_READ, part->phys, 0, 0, 1, 1, sec);
304 free(part->dev);
305 free(part);
310 pent = scan_partition_table(pent, part->phys, &part->pno);
314 _dio_error = part->pno == 0xFE ? ERR_EMPTYPART :
315 part->pno == 0xFD ? ERR_LINUXSWAP : ERR_NOTEXT2FS;
316 free(part->dev);
317 free(part);
330 part->start = fsec + fhead * part->sects + fcyl *
331 (part->heads * part->sects) - 1;
332 part->len = pent->size;
340 free(part);
344 partitions[npart++] = active = part;
374 PARTITION *part;
380 part = (PARTITION*)channel->private_data;
385 lba2chs(loc, &chs, part);
392 part->phys,
411 PARTITION *part;
417 part = (PARTITION*)channel->private_data;
430 lba2chs(loc, &chs, part);
432 part->phys,