fu-chunk

fu-chunk

Functions

FuChunk * fu_chunk_new ()
gchar * fu_chunk_to_string ()
gchar * fu_chunk_array_to_string ()
GPtrArray * fu_chunk_array_new ()
GPtrArray * fu_chunk_array_new_from_bytes ()

Types and Values

  FuChunk

Description

Functions

fu_chunk_new ()

FuChunk *
fu_chunk_new (guint32 idx,
              guint32 page,
              guint32 address,
              const guint8 *data,
              guint32 data_sz);

Creates a new packet of chunked data.

Parameters

idx

the packet number

 

page

the hardware memory page

 

address

the address *within* the page

 

data

the data

 

data_sz

size of data_sz

 

Returns

a FuChunk.

[transfer full]


fu_chunk_to_string ()

gchar *
fu_chunk_to_string (FuChunk *item);

Converts the chunked packet to a string representation.

Parameters

item

a FuChunk

 

Returns

A string.

[transfer full]


fu_chunk_array_to_string ()

gchar *
fu_chunk_array_to_string (GPtrArray *chunks);

Converts all the chunked packets in an array to a string representation.

Parameters

chunks

array of packets.

[element-type FuChunk]

Returns

A string.

[transfer full]


fu_chunk_array_new ()

GPtrArray *
fu_chunk_array_new (const guint8 *data,
                    guint32 data_sz,
                    guint32 addr_start,
                    guint32 page_sz,
                    guint32 packet_sz);

Chunks a linear blob of memory into packets, ensuring each packet does not cross a package boundary and is less that a specific transfer size.

Parameters

data

a linear blob of memory, or NULL

 

data_sz

size of data_sz

 

addr_start

the hardware address offset, or 0

 

page_sz

the hardware page size, or 0

 

packet_sz

the transfer size, or 0

 

Returns

array of packets.

[element-type FuChunk]


fu_chunk_array_new_from_bytes ()

GPtrArray *
fu_chunk_array_new_from_bytes (GBytes *blob,
                               guint32 addr_start,
                               guint32 page_sz,
                               guint32 packet_sz);

Chunks a linear blob of memory into packets, ensuring each packet does not cross a package boundary and is less that a specific transfer size.

Parameters

blob

a GBytes

 

addr_start

the hardware address offset, or 0

 

page_sz

the hardware page size, or 0

 

packet_sz

the transfer size, or 0

 

Returns

array of packets.

[element-type FuChunk]

Types and Values

FuChunk

typedef struct {
	guint32		 idx;
	guint32		 page;
	guint32		 address;
	const guint8 *data;
	guint32		 data_sz;
} FuChunk;