Lines Matching full:field
14 static void __eeprom_field_print_bin(const struct eeprom_field *field, in __eeprom_field_print_bin() argument
18 int from = reverse ? field->size - 1 : 0; in __eeprom_field_print_bin()
19 int to = reverse ? 0 : field->size - 1; in __eeprom_field_print_bin()
21 printf(PRINT_FIELD_SEGMENT, field->name); in __eeprom_field_print_bin()
23 printf("%02x%s", field->buf[i], delimiter); in __eeprom_field_print_bin()
25 printf("%02x\n", field->buf[i]); in __eeprom_field_print_bin()
28 static int __eeprom_field_update_bin(struct eeprom_field *field, in __eeprom_field_update_bin() argument
37 if (len > field->size * 2) in __eeprom_field_update_bin()
40 memset(field->buf, 0, field->size); in __eeprom_field_update_bin()
43 for (j = 0; j < field->size; j++) { in __eeprom_field_update_bin()
63 field->buf[j] = byte; in __eeprom_field_update_bin()
70 static int __eeprom_field_update_bin_delim(struct eeprom_field *field, in __eeprom_field_update_bin_delim() argument
86 if (count > field->size) in __eeprom_field_update_bin_delim()
90 for (i = 0; tok && i < field->size; i++) { in __eeprom_field_update_bin_delim()
96 field->buf[i] = (unsigned char)val; in __eeprom_field_update_bin_delim()
104 * eeprom_field_print_bin() - print a field which contains binary data
106 * Treat the field data as simple binary data, and print it as two digit
109 * Field Name 0102030405060708090a
111 * @field: an initialized field to print
113 void eeprom_field_print_bin(const struct eeprom_field *field) in eeprom_field_print_bin() argument
115 __eeprom_field_print_bin(field, "", false); in eeprom_field_print_bin()
119 * eeprom_field_update_bin() - Update field with new data in binary form
121 * @field: an initialized field
124 int eeprom_field_update_bin(struct eeprom_field *field, char *value) in eeprom_field_update_bin() argument
126 return __eeprom_field_update_bin(field, value, false); in eeprom_field_update_bin()
130 * eeprom_field_update_reserved() - Update reserved field with new data in
133 * @field: an initialized field
136 int eeprom_field_update_reserved(struct eeprom_field *field, char *value) in eeprom_field_update_reserved() argument
138 return __eeprom_field_update_bin_delim(field, value, " "); in eeprom_field_update_reserved()
142 * eeprom_field_print_bin_rev() - print a field which contains binary data in
145 * Treat the field data as simple binary data, and print it in reverse order
148 * Data in field:
151 * Field Name 0a090807060504030201
153 * @field: an initialized field to print
155 void eeprom_field_print_bin_rev(const struct eeprom_field *field) in eeprom_field_print_bin_rev() argument
157 __eeprom_field_print_bin(field, "", true); in eeprom_field_print_bin_rev()
161 * eeprom_field_update_bin_rev() - Update field with new data in binary form,
165 * in the field in the reverse order. i.e. if the input string was "1234",
166 * "3412" will be written to the field.
168 * @field: an initialized field
171 int eeprom_field_update_bin_rev(struct eeprom_field *field, char *value) in eeprom_field_update_bin_rev() argument
173 return __eeprom_field_update_bin(field, value, true); in eeprom_field_update_bin_rev()
177 * eeprom_field_print_mac_addr() - print a field which contains a mac address
179 * Treat the field data as simple binary data, and print it formatted as a MAC
182 * Field Name 01:02:03:04:05:06
184 * @field: an initialized field to print
186 void eeprom_field_print_mac(const struct eeprom_field *field) in eeprom_field_print_mac() argument
188 __eeprom_field_print_bin(field, ":", false); in eeprom_field_print_mac()
192 * eeprom_field_update_mac() - Update a mac address field which contains binary
195 * @field: an initialized field
198 int eeprom_field_update_mac(struct eeprom_field *field, char *value) in eeprom_field_update_mac() argument
200 return __eeprom_field_update_bin_delim(field, value, ":"); in eeprom_field_update_mac()
204 * eeprom_field_print_ascii() - print a field which contains ASCII data
205 * @field: an initialized field to print
207 void eeprom_field_print_ascii(const struct eeprom_field *field) in eeprom_field_print_ascii() argument
211 sprintf(format, "%%.%ds\n", field->size); in eeprom_field_print_ascii()
212 printf(PRINT_FIELD_SEGMENT, field->name); in eeprom_field_print_ascii()
213 printf(format, field->buf); in eeprom_field_print_ascii()
217 * eeprom_field_update_ascii() - Update field with new data in ASCII form
218 * @field: an initialized field
223 int eeprom_field_update_ascii(struct eeprom_field *field, char *value) in eeprom_field_update_ascii() argument
225 if (strlen(value) >= field->size) { in eeprom_field_update_ascii()
226 printf("%s: new data too long\n", field->name); in eeprom_field_update_ascii()
230 strncpy((char *)field->buf, value, field->size - 1); in eeprom_field_update_ascii()
231 field->buf[field->size - 1] = '\0'; in eeprom_field_update_ascii()
237 * eeprom_field_print_reserved() - print the "Reserved fields" field
244 * @field: an initialized field to print
246 void eeprom_field_print_reserved(const struct eeprom_field *field) in eeprom_field_print_reserved() argument
249 printf("(%d bytes)\n", field->size); in eeprom_field_print_reserved()