Re: [PATCH v2 02/13] ASoC: Intel: catpt: Define DSP operations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020-08-11 2:17 PM, Amadeusz Sławiński wrote:


On 8/11/2020 12:00 PM, Cezary Rojewski wrote:
Implement dsp lifecycle functions such as core RESET and STALL,
SRAM power control and LP clock selection. This also adds functions for
handling transport over DW DMA controller.

Signed-off-by: Cezary Rojewski <cezary.rojewski@xxxxxxxxx>
---

...

+
+int lpt_dsp_power_down(struct catpt_dev *cdev)
+{
+    catpt_dsp_reset(cdev, true);
+
+    /* set 24Mhz clock for both SSPs */
+    catpt_updatel_shim(cdev, CS, CATPT_CS_SBCS(0) | CATPT_CS_SBCS(1),
+               CATPT_CS_SBCS(0) | CATPT_CS_SBCS(1));
+    catpt_dsp_select_lpclock(cdev, true, false);
+
+    /* DRAM power gating all */
+    catpt_dsp_set_srampge(cdev, &cdev->dram, cdev->spec->dram_mask,
+                  cdev->spec->dram_mask);
+    catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->iram_mask,
+                  cdev->spec->iram_mask);
+
+    /* set D3 */
+    catpt_updatel_pci(cdev, PMCS, CATPT_PMCS_PS, CATPT_PMCS_PS_D3HOT);
+    udelay(50);
+
+    return 0;
+}
+
+int lpt_dsp_power_up(struct catpt_dev *cdev)
+{
+    /* SRAM power gating none */
+    catpt_dsp_set_srampge(cdev, &cdev->dram, cdev->spec->dram_mask, 0);
+    catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->dram_mask, 0);

Wrong mask for iram here? For example in above function (lpt_dsp_power_down) cdev->spec->iram_mask is used?


Yes, for this update I've run tests for all bdw (wpt) devices -only. Thanks for catching this up!

Czarek



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux