File: cbfs_glue.h

package info (click to toggle)
coreboot 24.12%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 210,640 kB
  • sloc: ansic: 1,640,478; sh: 15,676; python: 10,743; perl: 10,186; asm: 8,483; makefile: 5,097; cpp: 4,724; pascal: 2,327; ada: 1,928; yacc: 1,264; lex: 731; sed: 75; lisp: 5; ruby: 5; awk: 4
file content (28 lines) | stat: -rw-r--r-- 615 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* SPDX-License-Identifier: GPL-2.0-only */

#ifndef _CBFS_GLUE_H_
#define _CBFS_GLUE_H_

#include "cbfs_image.h"

#define CBFS_ENABLE_HASHING 1
#define CBFS_HASH_HWCRYPTO 0

typedef const struct cbfs_image *cbfs_dev_t;

static inline ssize_t cbfs_dev_read(cbfs_dev_t dev, void *buffer, size_t offset, size_t size)
{
	if (buffer_size(&dev->buffer) < offset ||
	    buffer_size(&dev->buffer) - offset < size)
		return -1;

	memcpy(buffer, buffer_get(&dev->buffer) + offset, size);
	return size;
}

static inline size_t cbfs_dev_size(cbfs_dev_t dev)
{
	return buffer_size(&dev->buffer);
}

#endif	/* _CBFS_GLUE_H_ */