.ops = &cq93vc_dai_ops,
 };
 
-static struct regmap *cq93vc_get_regmap(struct device *dev)
+static int cq93vc_probe(struct snd_soc_component *component)
 {
-       struct davinci_vc *davinci_vc = dev->platform_data;
+       struct davinci_vc *davinci_vc = component->dev->platform_data;
 
-       return davinci_vc->regmap;
+       snd_soc_component_init_regmap(component, davinci_vc->regmap);
+
+       return 0;
 }
 
 static const struct snd_soc_codec_driver soc_codec_dev_cq93vc = {
        .set_bias_level = cq93vc_set_bias_level,
-       .get_regmap = cq93vc_get_regmap,
        .component_driver = {
+               .probe = cq93vc_probe,
                .controls = cq93vc_snd_controls,
                .num_controls = ARRAY_SIZE(cq93vc_snd_controls),
        },