#define B0_SILICON_ID 0x20
+static struct dcss_debug_reg blkctl_debug_reg[] = {
+ DCSS_DBG_REG(DCSS_BLKCTL_RESET_CTRL),
+ DCSS_DBG_REG(DCSS_BLKCTL_CONTROL0),
+};
+
struct dcss_blkctl_priv {
struct dcss_soc *dcss;
void __iomem *base_reg;
u32 clk_setting;
};
+#ifdef CONFIG_DEBUG_FS
+void dcss_blkctl_dump_regs(struct seq_file *s, void *data)
+{
+ struct dcss_soc *dcss = data;
+ int j;
+
+ seq_puts(s, ">> Dumping BLKCTL:\n");
+ for (j = 0; j < ARRAY_SIZE(blkctl_debug_reg); j++)
+ seq_printf(s, "%-35s(0x%04x) -> 0x%08x\n",
+ blkctl_debug_reg[j].name,
+ blkctl_debug_reg[j].ofs,
+ dcss_readl(dcss->blkctl_priv->base_reg +
+ blkctl_debug_reg[j].ofs));
+}
+#endif
+
static void dcss_blkctl_clk_reset(struct dcss_blkctl_priv *blkctl,
u32 assert, u32 deassert)
{
static int dcss_dump_regs_show(struct seq_file *s, void *data)
{
+ dcss_blkctl_dump_regs(s, s->private);
dcss_dtrc_dump_regs(s, s->private);
dcss_dpr_dump_regs(s, s->private);
dcss_scaler_dump_regs(s, s->private);
int dcss_dec400d_init(struct dcss_soc *dcss, unsigned long dec400d_base);
void dcss_dec400d_exit(struct dcss_soc *dcss);
+void dcss_blkctl_dump_regs(struct seq_file *s, void *data);
void dcss_dtrc_dump_regs(struct seq_file *s, void *data);
void dcss_dpr_dump_regs(struct seq_file *s, void *data);
void dcss_dtg_dump_regs(struct seq_file *s, void *data);