static void sd_write_strn(std::ostringstream &buf, char *b, int size, const char *name) { sd_write_name(buf, name); sd_write8(buf, SD_STRING); sd_write16(buf, size); buf.write(b, size); }
static inline void sd_write_blob(std::ostringstream &buf, void *b, int buf_size, char *name) { sd_write_name(buf, name); sd_write8(buf, SD_BLOB); sd_write32(buf, buf_size); buf.write((const char *) b, buf_size); }
static inline void sd_write_name(std::ostringstream &buf, const char *name) { PDEBUG("Writing name '%s'\n", name); if (name) { sd_write8(buf, SD_NAME); sd_write16(buf, strlen(name) + 1); buf.write(name, strlen(name) + 1); } }
static s32 sdio_write8(struct intf_hdl *intfhdl, u32 addr, u8 val) { u32 ftaddr; s32 err; ftaddr = _cvrt2ftaddr(addr, NULL, NULL); sd_write8(intfhdl, ftaddr, val, &err); return err; }
static inline void sd_write_aligned_blob(std::ostringstream &buf, void *b, int b_size, const char *name) { sd_write_name(buf, name); /* pad calculation MUST come after name is written */ size_t pad = align64(buf.tellp() + ((std::streamoff) 5l)) - (buf.tellp() + ((std::streamoff) 5l)); sd_write8(buf, SD_BLOB); sd_write32(buf, b_size + pad); buf.write(zeros, pad); buf.write((const char *) b, b_size); }
s32 sdio_write8(struct intf_hdl *pintfhdl, u32 addr, u8 val) { u32 ftaddr; s32 err; _func_enter_; ftaddr = _cvrt2ftaddr(addr, NULL, NULL); sd_write8(pintfhdl, ftaddr, val, &err); _func_exit_; return err; }
s32 sdio_write8(struct intf_hdl *pintfhdl, u32 addr, u8 val) { struct dvobj_priv *psdiodev; PSDIO_DATA psdio; u32 ftaddr; s32 err; _func_enter_; psdiodev = pintfhdl->pintf_dev; psdio = &psdiodev->intf_data; ftaddr = _cvrt2ftaddr(addr, NULL, NULL); sd_write8(psdio, ftaddr, val, &err); _func_exit_; return err; }
static inline void sd_write_listend(std::ostringstream &buf) { sd_write8(buf, SD_LISTEND); }
static inline void sd_write_list(std::ostringstream &buf, const char *name) { sd_write_name(buf, name); sd_write8(buf, SD_LIST); }
static inline void sd_write_arrayend(std::ostringstream &buf) { sd_write8(buf, SD_ARRAYEND); }
static inline void sd_write_array(std::ostringstream &buf, const char *name, int size) { sd_write_name(buf, name); sd_write8(buf, SD_ARRAY); sd_write16(buf, size); }
static inline void sd_write_structend(std::ostringstream &buf) { sd_write8(buf, SD_STRUCTEND); }
static inline void sd_write_uint16(std::ostringstream &buf, u16 b) { sd_write8(buf, SD_U16); sd_write16(buf, b); }
static inline void sd_write_uint64(std::ostringstream &buf, u64 b) { sd_write8(buf, SD_U64); sd_write64(buf, b); }
static inline void sd_write_uint32(std::ostringstream &buf, u32 b) { sd_write8(buf, SD_U32); sd_write32(buf, b); }
static inline void sd_write_struct(std::ostringstream &buf, const char *name) { sd_write_name(buf, name); sd_write8(buf, SD_STRUCT); }
static inline void sd_write_uint8(std::ostringstream &buf, u8 b) { sd_write8(buf, SD_U8); sd_write8(buf, b); }