| 361 | | const sensors_feature *feature_list; |
| 362 | | int i; |
| 363 | | |
| 364 | | for (i = 0; i < sensors_proc_chips_count; i++) |
| 365 | | if (sensors_match_chip(&sensors_proc_chips[i].chip, name)) { |
| 366 | | feature_list = sensors_proc_chips[i].feature; |
| 367 | | while (*nr < sensors_proc_chips[i].feature_count |
| 368 | | && sensors_get_ignored(name, &feature_list[*nr])) |
| 369 | | (*nr)++; |
| 370 | | if (*nr >= sensors_proc_chips[i].feature_count) |
| 371 | | return NULL; |
| 372 | | return &feature_list[(*nr)++]; |
| 373 | | } |
| 374 | | return NULL; /* end of list */ |
| | 361 | const sensors_chip_features *chip; |
| | 362 | |
| | 363 | if (!(chip = sensors_lookup_chip(name))) |
| | 364 | return NULL; /* No such chip */ |
| | 365 | |
| | 366 | while (*nr < chip->feature_count |
| | 367 | && sensors_get_ignored(name, &chip->feature[*nr])) |
| | 368 | (*nr)++; |
| | 369 | if (*nr >= chip->feature_count) |
| | 370 | return NULL; |
| | 371 | return &chip->feature[(*nr)++]; |
| 388 | | for (i = 0; i < sensors_proc_chips_count; i++) |
| 389 | | if (sensors_match_chip(&sensors_proc_chips[i].chip, name)) { |
| 390 | | if (*nr >= sensors_proc_chips[i].subfeature_count) |
| 391 | | return NULL; /* end of list */ |
| 392 | | subfeature = &sensors_proc_chips[i].subfeature[(*nr)++]; |
| 393 | | if (subfeature->mapping == feature->number) |
| 394 | | return subfeature; |
| 395 | | return NULL; /* end of subfeature list */ |
| 396 | | } |
| 397 | | return NULL; /* no matching chip */ |
| | 388 | if (*nr >= chip->subfeature_count) |
| | 389 | return NULL; /* end of list */ |
| | 390 | subfeature = &chip->subfeature[(*nr)++]; |
| | 391 | if (subfeature->mapping == feature->number) |
| | 392 | return subfeature; |
| | 393 | return NULL; /* end of subfeature list */ |