aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/davinci
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/davinci')
-rw-r--r--sound/soc/davinci/davinci-mcasp.c22
1 files changed, 5 insertions, 17 deletions
diff --git a/sound/soc/davinci/davinci-mcasp.c b/sound/soc/davinci/davinci-mcasp.c
index bbc9a0793eb9..71e14bb3a8cd 100644
--- a/sound/soc/davinci/davinci-mcasp.c
+++ b/sound/soc/davinci/davinci-mcasp.c
@@ -1050,7 +1050,6 @@ static struct snd_platform_data *davinci_mcasp_set_pdata_from_of(
1050 struct of_phandle_args dma_spec; 1050 struct of_phandle_args dma_spec;
1051 1051
1052 const u32 *of_serial_dir32; 1052 const u32 *of_serial_dir32;
1053 u8 *of_serial_dir;
1054 u32 val; 1053 u32 val;
1055 int i, ret = 0; 1054 int i, ret = 0;
1056 1055
@@ -1081,32 +1080,21 @@ static struct snd_platform_data *davinci_mcasp_set_pdata_from_of(
1081 pdata->tdm_slots = val; 1080 pdata->tdm_slots = val;
1082 } 1081 }
1083 1082
1084 ret = of_property_read_u32(np, "num-serializer", &val);
1085 if (ret >= 0)
1086 pdata->num_serializer = val;
1087
1088 of_serial_dir32 = of_get_property(np, "serial-dir", &val); 1083 of_serial_dir32 = of_get_property(np, "serial-dir", &val);
1089 val /= sizeof(u32); 1084 val /= sizeof(u32);
1090 if (val != pdata->num_serializer) {
1091 dev_err(&pdev->dev,
1092 "num-serializer(%d) != serial-dir size(%d)\n",
1093 pdata->num_serializer, val);
1094 ret = -EINVAL;
1095 goto nodata;
1096 }
1097
1098 if (of_serial_dir32) { 1085 if (of_serial_dir32) {
1099 of_serial_dir = devm_kzalloc(&pdev->dev, 1086 u8 *of_serial_dir = devm_kzalloc(&pdev->dev,
1100 (sizeof(*of_serial_dir) * val), 1087 (sizeof(*of_serial_dir) * val),
1101 GFP_KERNEL); 1088 GFP_KERNEL);
1102 if (!of_serial_dir) { 1089 if (!of_serial_dir) {
1103 ret = -ENOMEM; 1090 ret = -ENOMEM;
1104 goto nodata; 1091 goto nodata;
1105 } 1092 }
1106 1093
1107 for (i = 0; i < pdata->num_serializer; i++) 1094 for (i = 0; i < val; i++)
1108 of_serial_dir[i] = be32_to_cpup(&of_serial_dir32[i]); 1095 of_serial_dir[i] = be32_to_cpup(&of_serial_dir32[i]);
1109 1096
1097 pdata->num_serializer = val;
1110 pdata->serial_dir = of_serial_dir; 1098 pdata->serial_dir = of_serial_dir;
1111 } 1099 }
1112 1100