@@ -77,6 +77,7 @@ struct chipop {
int (*mpipl_enter)(struct chipop *);
int (*mpipl_continue)(struct chipop *);
int (*mpipl_get_ti_info)(struct chipop *, uint8_t **, uint32_t *);
+ int (*dump)(struct chipop *, uint8_t, uint8_t, uint8_t **, uint32_t *);
};
#define target_to_chipop(x) container_of(x, struct chipop, target)
@@ -205,6 +205,14 @@ static int sbefifo_op_mpipl_get_ti_info(struct chipop *chipop, uint8_t **data, u
return sbefifo_mpipl_get_ti_info(sctx, data, data_len);
}
+static int sbefifo_op_dump(struct chipop *chipop, uint8_t type, uint8_t clock, uint8_t **data, uint32_t *data_len)
+{
+ struct sbefifo *sbefifo = target_to_sbefifo(chipop->target.parent);
+ struct sbefifo_context *sctx = sbefifo->get_sbefifo_context(sbefifo);
+
+ return sbefifo_get_dump(sctx, type, clock, data, data_len);
+}
+
static struct sbefifo *pib_to_sbefifo(struct pdbg_target *pib)
{
struct pdbg_target *target;
@@ -800,6 +808,7 @@ static struct chipop sbefifo_chipop = {
.mpipl_enter = sbefifo_op_mpipl_enter,
.mpipl_continue = sbefifo_op_mpipl_continue,
.mpipl_get_ti_info = sbefifo_op_mpipl_get_ti_info,
+ .dump = sbefifo_op_dump,
};
DECLARE_HW_UNIT(sbefifo_chipop);
Signed-off-by: Amitay Isaacs <amitay@ozlabs.org> --- libpdbg/hwunit.h | 1 + libpdbg/sbefifo.c | 9 +++++++++ 2 files changed, 10 insertions(+)