u32 size;                       /* block size */
        u32 index;                      /* block index 0..N */
        enum sst_mem_type type;         /* block memory type IRAM/DRAM */
-       struct sst_block_ops *ops;      /* block operations, if any */
+       const struct sst_block_ops *ops;/* block operations, if any */
 
        /* block status */
        u32 bytes_used;                 /* bytes in use by modules */
 
 /* Register the DSPs memory blocks - would be nice to read from ACPI */
 struct sst_mem_block *sst_mem_block_register(struct sst_dsp *dsp, u32 offset,
-       u32 size, enum sst_mem_type type, struct sst_block_ops *ops, u32 index,
-       void *private);
+       u32 size, enum sst_mem_type type, const struct sst_block_ops *ops,
+       u32 index, void *private);
 void sst_mem_block_unregister_all(struct sst_dsp *dsp);
 
 /* Create/Free DMA resources */
 
 
 /* register a DSP memory block for use with FW based modules */
 struct sst_mem_block *sst_mem_block_register(struct sst_dsp *dsp, u32 offset,
-       u32 size, enum sst_mem_type type, struct sst_block_ops *ops, u32 index,
-       void *private)
+       u32 size, enum sst_mem_type type, const struct sst_block_ops *ops,
+       u32 index, void *private)
 {
        struct sst_mem_block *block;
 
 
        return 0;
 }
 
-static struct sst_block_ops sst_hsw_ops = {
+static const struct sst_block_ops sst_hsw_ops = {
        .enable = hsw_block_enable,
        .disable = hsw_block_disable,
 };