Lines Matching refs:page
43 * struct rave_sp_eeprom_page - RAVE SP EEPROM page
76 * rave_sp_eeprom_io - Low-level part of EEPROM page access
80 * @idx: number of the EEPROM page
81 * @page: Data to write or buffer to store result (via page->data)
93 struct rave_sp_eeprom_page *page)
96 const unsigned int data_size = is_write ? sizeof(page->data) : 0;
99 is_write ? sizeof(*page) - sizeof(page->data) : sizeof(*page);
101 u8 cmd[RAVE_SP_EEPROM_HEADER_MAX + sizeof(page->data)];
114 * are talkin to EEPROM that uses 16-bit page numbers and we
124 memcpy(&cmd[offset], page->data, data_size);
126 ret = rave_sp_exec(eeprom->sp, cmd, cmd_size, page, rsp_size);
130 if (page->type != type)
133 if (!page->success)
140 * rave_sp_eeprom_page_access - Access single EEPROM page
148 * This function performs a generic access to a single page or a
149 * portion thereof. Requested access MUST NOT cross the EEPROM page
163 struct rave_sp_eeprom_page page;
168 * to do is crossing EEPROM page boundary. Normally this
172 if (WARN_ON(data_len > sizeof(page.data) - page_offset))
178 * to fill the rest of the page with correct data.
182 page_nr, &page);
187 memcpy(&page.data[page_offset], data, data_len);
190 ret = rave_sp_eeprom_io(eeprom, type, page_nr, &page);
195 * Since we receive the result of the read via 'page.data'
199 memcpy(data, &page.data[page_offset], data_len);
214 * arbitrary offset (not necessary page aligned) of arbitrary length
215 * (is not constrained by EEPROM page size).
239 * to a page boundary to avoid corssing it in
305 * page.