1. 16 3月, 2017 1 次提交
  2. 29 10月, 2016 3 次提交
  3. 25 10月, 2016 1 次提交
    • J
      ASoC: constify snd_soc_ops structures · 9b6fdef6
      Julia Lawall 提交于
      Check for snd_soc_ops structures that are only stored in the ops field of a
      snd_soc_dai_link structure.  This field is declared const, so snd_soc_ops
      structures that have this property can be declared as const also.
      
      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct snd_soc_ops i@p = { ... };
      
      @ok1@
      identifier r.i;
      struct snd_soc_dai_link e;
      position p;
      @@
      e.ops = &i@p;
      
      @ok2@
      identifier r.i, e;
      position p;
      @@
      struct snd_soc_dai_link e[] = { ..., { .ops = &i@p, }, ..., };
      
      @bad@
      position p != {r.p,ok1.p,ok2.p};
      identifier r.i;
      struct snd_soc_ops e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct snd_soc_ops i = { ... };
      // </smpl>
      
      The effect on the layout of the .o files is shown by the following output
      of the size command, first before then after the transformation:
      
         text    data     bss     dec     hex filename
         4500     696       0    5196    144c sound/soc/generic/simple-card.o
         4564     632       0    5196    144c sound/soc/generic/simple-card.o
      
         text    data     bss     dec     hex filename
         3018     608       0    3626     e2a sound/soc/generic/simple-scu-card.o
         3074     544       0    3618     e22 sound/soc/generic/simple-scu-card.o
      
         text    data     bss     dec     hex filename
         4148    2448     768    7364    1cc4 sound/soc/intel/boards/bdw-rt5677.o
         4212    2384     768    7364    1cc4 sound/soc/intel/boards/bdw-rt5677.o
      
         text    data     bss     dec     hex filename
         5403    4628     384   10415    28af sound/soc/intel/boards/bxt_da7219_max98357a.o
         5531    4516     384   10431    28bf sound/soc/intel/boards/bxt_da7219_max98357a.o
      
         text    data     bss     dec     hex filename
         5275    4496     384   10155    27ab sound/soc/intel/boards/bxt_rt298.o
         5403    4368     384   10155    27ab sound/soc/intel/boards/bxt_rt298.o
      
         text    data     bss     dec     hex filename
        10017    2344      48   12409    3079 sound/soc/intel/boards/bytcr_rt5640.o
        10145    2232      48   12425    3089 sound/soc/intel/boards/bytcr_rt5640.o
      
         text    data     bss     dec     hex filename
         3719    2356       0    6075    17bb sound/soc/intel/boards/bytcr_rt5651.o
         3847    2244       0    6091    17cb sound/soc/intel/boards/bytcr_rt5651.o
      
         text    data     bss     dec     hex filename
         3598    2392       0    5990    1766 sound/soc/intel/boards/cht_bsw_max98090_ti.o
         3726    2280       0    6006    1776 sound/soc/intel/boards/cht_bsw_max98090_ti.o
      
         text    data     bss     dec     hex filename
         5343    3624      16    8983    2317 sound/soc/intel/boards/cht_bsw_rt5645.o
         5471    3496      16    8983    2317 sound/soc/intel/boards/cht_bsw_rt5645.o
      
         text    data     bss     dec     hex filename
         4662    2592     384    7638    1dd6 sound/soc/intel/boards/cht_bsw_rt5672.o
         4790    2464     384    7638    1dd6 sound/soc/intel/boards/cht_bsw_rt5672.o
      
         text    data     bss     dec     hex filename
         1595    2528       0    4123    101b sound/soc/intel/boards/haswell.o
         1659    2472       0    4131    1023 sound/soc/intel/boards/haswell.o
      
         text    data     bss     dec     hex filename
         6272    4760     416   11448    2cb8 sound/soc/intel/boards/skl_nau88l25_max98357a.o
         6464    4568     416   11448    2cb8 sound/soc/intel/boards/skl_nau88l25_max98357a.o
      
         text    data     bss     dec     hex filename
         7075    4888     416   12379    305b sound/soc/intel/boards/skl_nau88l25_ssm4567.o
         7267    4696     416   12379    305b sound/soc/intel/boards/skl_nau88l25_ssm4567.o
      
         text    data     bss     dec     hex filename
         5659    4496     384   10539    292b sound/soc/intel/boards/skl_rt286.o
         5787    4368     384   10539    292b sound/soc/intel/boards/skl_rt286.o
      
         text    data     bss     dec     hex filename
         1721    2048       0    3769     eb9 sound/soc/kirkwood/armada-370-db.o
         1769    1976       0    3745     ea1 sound/soc/kirkwood/armada-370-db.o
      
         text    data     bss     dec     hex filename
         1363    1792       0    3155     c53 sound/soc/mxs/mxs-sgtl5000.o
         1427    1728       0    3155     c53 sound/soc/mxs/mxs-sgtl5000.o
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      9b6fdef6
  4. 02 9月, 2016 6 次提交
  5. 24 8月, 2016 4 次提交
  6. 11 8月, 2016 2 次提交
  7. 09 8月, 2016 2 次提交
  8. 08 8月, 2016 1 次提交
  9. 05 8月, 2016 1 次提交
  10. 16 7月, 2016 3 次提交
  11. 01 7月, 2016 1 次提交
  12. 31 5月, 2016 1 次提交
  13. 05 3月, 2016 1 次提交
  14. 02 3月, 2016 1 次提交
  15. 17 12月, 2015 3 次提交
  16. 01 12月, 2015 1 次提交
  17. 19 11月, 2015 1 次提交
    • M
      ASoC: Change the PCM runtime array to a list · 1a497983
      Mengdong Lin 提交于
      Currently the number of DAI links is statically defined by the machine
      driver at build time using an array. This makes it difficult to shrink/
      grow the number of DAI links at runtime in order to reflect any changes
      in topology.
      
      We can change the DAI link array in the core to a list so that PCMs and
      FE DAI links can be added and deleted at runtime to reflect changes in
      use case and DSP topology. The machine driver can still register DAI links
      as an array.
      
      As the 1st step, this patch change the PCM runtime array to a list. A new
      PCM runtime is added to the list when a DAI link is bound successfully.
      
      Later patches will further implement the DAI link list.
      
      More:
      - define snd_soc_new/free_pcm_runtime() to create/free a runtime.
      - define soc_add_pcm_runtime() to add a runtime to the rtd list.
      - define soc_remove_pcm_runtimes() to clean up the runtime list.
      
      - traverse the rtd list to probe the link components and dais.
      
      - Add a field "num" to PCM runtime struct, used to specify the device
        number when creating the pcm device, and for a soc card to access
        its dai_props array.
      
      - The following 3rd party machine/platform drivers iterate the rtd list
        to check the runtimes:
        sound/soc/intel/atom/sst-mfld-platform-pcm.c
        sound/soc/intel/boards/cht_bsw_rt5645.c
        sound/soc/intel/boards/cht_bsw_rt5672.c
        sound/soc/intel/boards/cht_bsw_max98090_ti.c
      Signed-off-by: NMengdong Lin <mengdong.lin@linux.intel.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      1a497983
  18. 17 7月, 2015 1 次提交
  19. 17 6月, 2015 1 次提交
  20. 16 6月, 2015 5 次提交