diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-07-10 18:28:16 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-08-03 11:59:16 -0400 |
commit | 27ded041f03026e8c6be9efc626e11ddfb4620c1 (patch) | |
tree | f8b156b2c31a97805c8341fd215648e989e12430 /sound/soc/codecs | |
parent | 8d50e447d19fec64adebeef55f2b60d695435412 (diff) |
ASoC: Factor out 7 bit register 9 bit data SPI write
This converts all the Wolfson drivers using this format (the only devices
that do) except WM8753 to use it.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs')
-rw-r--r-- | sound/soc/codecs/wm8510.c | 25 | ||||
-rw-r--r-- | sound/soc/codecs/wm8728.c | 25 | ||||
-rw-r--r-- | sound/soc/codecs/wm8731.c | 25 | ||||
-rw-r--r-- | sound/soc/codecs/wm8750.c | 25 | ||||
-rw-r--r-- | sound/soc/codecs/wm8988.c | 25 |
5 files changed, 0 insertions, 125 deletions
diff --git a/sound/soc/codecs/wm8510.c b/sound/soc/codecs/wm8510.c index 4ca724ff4c6e..bcd6a40171dc 100644 --- a/sound/soc/codecs/wm8510.c +++ b/sound/soc/codecs/wm8510.c | |||
@@ -737,30 +737,6 @@ static struct spi_driver wm8510_spi_driver = { | |||
737 | .probe = wm8510_spi_probe, | 737 | .probe = wm8510_spi_probe, |
738 | .remove = __devexit_p(wm8510_spi_remove), | 738 | .remove = __devexit_p(wm8510_spi_remove), |
739 | }; | 739 | }; |
740 | |||
741 | static int wm8510_spi_write(struct spi_device *spi, const char *data, int len) | ||
742 | { | ||
743 | struct spi_transfer t; | ||
744 | struct spi_message m; | ||
745 | u8 msg[2]; | ||
746 | |||
747 | if (len <= 0) | ||
748 | return 0; | ||
749 | |||
750 | msg[0] = data[0]; | ||
751 | msg[1] = data[1]; | ||
752 | |||
753 | spi_message_init(&m); | ||
754 | memset(&t, 0, (sizeof t)); | ||
755 | |||
756 | t.tx_buf = &msg[0]; | ||
757 | t.len = len; | ||
758 | |||
759 | spi_message_add_tail(&t, &m); | ||
760 | spi_sync(spi, &m); | ||
761 | |||
762 | return len; | ||
763 | } | ||
764 | #endif /* CONFIG_SPI_MASTER */ | 740 | #endif /* CONFIG_SPI_MASTER */ |
765 | 741 | ||
766 | static int wm8510_probe(struct platform_device *pdev) | 742 | static int wm8510_probe(struct platform_device *pdev) |
@@ -790,7 +766,6 @@ static int wm8510_probe(struct platform_device *pdev) | |||
790 | #endif | 766 | #endif |
791 | #if defined(CONFIG_SPI_MASTER) | 767 | #if defined(CONFIG_SPI_MASTER) |
792 | if (setup->spi) { | 768 | if (setup->spi) { |
793 | codec->hw_write = (hw_write_t)wm8510_spi_write; | ||
794 | ret = spi_register_driver(&wm8510_spi_driver); | 769 | ret = spi_register_driver(&wm8510_spi_driver); |
795 | if (ret != 0) | 770 | if (ret != 0) |
796 | printk(KERN_ERR "can't add spi driver"); | 771 | printk(KERN_ERR "can't add spi driver"); |
diff --git a/sound/soc/codecs/wm8728.c b/sound/soc/codecs/wm8728.c index a28630de9c91..16e969a762c3 100644 --- a/sound/soc/codecs/wm8728.c +++ b/sound/soc/codecs/wm8728.c | |||
@@ -425,30 +425,6 @@ static struct spi_driver wm8728_spi_driver = { | |||
425 | .probe = wm8728_spi_probe, | 425 | .probe = wm8728_spi_probe, |
426 | .remove = __devexit_p(wm8728_spi_remove), | 426 | .remove = __devexit_p(wm8728_spi_remove), |
427 | }; | 427 | }; |
428 | |||
429 | static int wm8728_spi_write(struct spi_device *spi, const char *data, int len) | ||
430 | { | ||
431 | struct spi_transfer t; | ||
432 | struct spi_message m; | ||
433 | u8 msg[2]; | ||
434 | |||
435 | if (len <= 0) | ||
436 | return 0; | ||
437 | |||
438 | msg[0] = data[0]; | ||
439 | msg[1] = data[1]; | ||
440 | |||
441 | spi_message_init(&m); | ||
442 | memset(&t, 0, (sizeof t)); | ||
443 | |||
444 | t.tx_buf = &msg[0]; | ||
445 | t.len = len; | ||
446 | |||
447 | spi_message_add_tail(&t, &m); | ||
448 | spi_sync(spi, &m); | ||
449 | |||
450 | return len; | ||
451 | } | ||
452 | #endif /* CONFIG_SPI_MASTER */ | 428 | #endif /* CONFIG_SPI_MASTER */ |
453 | 429 | ||
454 | static int wm8728_probe(struct platform_device *pdev) | 430 | static int wm8728_probe(struct platform_device *pdev) |
@@ -478,7 +454,6 @@ static int wm8728_probe(struct platform_device *pdev) | |||
478 | #endif | 454 | #endif |
479 | #if defined(CONFIG_SPI_MASTER) | 455 | #if defined(CONFIG_SPI_MASTER) |
480 | if (setup->spi) { | 456 | if (setup->spi) { |
481 | codec->hw_write = (hw_write_t)wm8728_spi_write; | ||
482 | ret = spi_register_driver(&wm8728_spi_driver); | 457 | ret = spi_register_driver(&wm8728_spi_driver); |
483 | if (ret != 0) | 458 | if (ret != 0) |
484 | printk(KERN_ERR "can't add spi driver"); | 459 | printk(KERN_ERR "can't add spi driver"); |
diff --git a/sound/soc/codecs/wm8731.c b/sound/soc/codecs/wm8731.c index 27fc942a5ced..6232afd907ef 100644 --- a/sound/soc/codecs/wm8731.c +++ b/sound/soc/codecs/wm8731.c | |||
@@ -591,30 +591,6 @@ static void wm8731_unregister(struct wm8731_priv *wm8731) | |||
591 | } | 591 | } |
592 | 592 | ||
593 | #if defined(CONFIG_SPI_MASTER) | 593 | #if defined(CONFIG_SPI_MASTER) |
594 | static int wm8731_spi_write(struct spi_device *spi, const char *data, int len) | ||
595 | { | ||
596 | struct spi_transfer t; | ||
597 | struct spi_message m; | ||
598 | u8 msg[2]; | ||
599 | |||
600 | if (len <= 0) | ||
601 | return 0; | ||
602 | |||
603 | msg[0] = data[0]; | ||
604 | msg[1] = data[1]; | ||
605 | |||
606 | spi_message_init(&m); | ||
607 | memset(&t, 0, (sizeof t)); | ||
608 | |||
609 | t.tx_buf = &msg[0]; | ||
610 | t.len = len; | ||
611 | |||
612 | spi_message_add_tail(&t, &m); | ||
613 | spi_sync(spi, &m); | ||
614 | |||
615 | return len; | ||
616 | } | ||
617 | |||
618 | static int __devinit wm8731_spi_probe(struct spi_device *spi) | 594 | static int __devinit wm8731_spi_probe(struct spi_device *spi) |
619 | { | 595 | { |
620 | struct snd_soc_codec *codec; | 596 | struct snd_soc_codec *codec; |
@@ -626,7 +602,6 @@ static int __devinit wm8731_spi_probe(struct spi_device *spi) | |||
626 | 602 | ||
627 | codec = &wm8731->codec; | 603 | codec = &wm8731->codec; |
628 | codec->control_data = spi; | 604 | codec->control_data = spi; |
629 | codec->hw_write = (hw_write_t)wm8731_spi_write; | ||
630 | codec->dev = &spi->dev; | 605 | codec->dev = &spi->dev; |
631 | 606 | ||
632 | dev_set_drvdata(&spi->dev, wm8731); | 607 | dev_set_drvdata(&spi->dev, wm8731); |
diff --git a/sound/soc/codecs/wm8750.c b/sound/soc/codecs/wm8750.c index e6422b161678..4ba1e7e93fb4 100644 --- a/sound/soc/codecs/wm8750.c +++ b/sound/soc/codecs/wm8750.c | |||
@@ -911,30 +911,6 @@ static struct spi_driver wm8750_spi_driver = { | |||
911 | .probe = wm8750_spi_probe, | 911 | .probe = wm8750_spi_probe, |
912 | .remove = __devexit_p(wm8750_spi_remove), | 912 | .remove = __devexit_p(wm8750_spi_remove), |
913 | }; | 913 | }; |
914 | |||
915 | static int wm8750_spi_write(struct spi_device *spi, const char *data, int len) | ||
916 | { | ||
917 | struct spi_transfer t; | ||
918 | struct spi_message m; | ||
919 | u8 msg[2]; | ||
920 | |||
921 | if (len <= 0) | ||
922 | return 0; | ||
923 | |||
924 | msg[0] = data[0]; | ||
925 | msg[1] = data[1]; | ||
926 | |||
927 | spi_message_init(&m); | ||
928 | memset(&t, 0, (sizeof t)); | ||
929 | |||
930 | t.tx_buf = &msg[0]; | ||
931 | t.len = len; | ||
932 | |||
933 | spi_message_add_tail(&t, &m); | ||
934 | spi_sync(spi, &m); | ||
935 | |||
936 | return len; | ||
937 | } | ||
938 | #endif | 914 | #endif |
939 | 915 | ||
940 | static int wm8750_probe(struct platform_device *pdev) | 916 | static int wm8750_probe(struct platform_device *pdev) |
@@ -973,7 +949,6 @@ static int wm8750_probe(struct platform_device *pdev) | |||
973 | #endif | 949 | #endif |
974 | #if defined(CONFIG_SPI_MASTER) | 950 | #if defined(CONFIG_SPI_MASTER) |
975 | if (setup->spi) { | 951 | if (setup->spi) { |
976 | codec->hw_write = (hw_write_t)wm8750_spi_write; | ||
977 | ret = spi_register_driver(&wm8750_spi_driver); | 952 | ret = spi_register_driver(&wm8750_spi_driver); |
978 | if (ret != 0) | 953 | if (ret != 0) |
979 | printk(KERN_ERR "can't add spi driver"); | 954 | printk(KERN_ERR "can't add spi driver"); |
diff --git a/sound/soc/codecs/wm8988.c b/sound/soc/codecs/wm8988.c index 7486d3ec787e..1c8653523c8c 100644 --- a/sound/soc/codecs/wm8988.c +++ b/sound/soc/codecs/wm8988.c | |||
@@ -979,30 +979,6 @@ static struct i2c_driver wm8988_i2c_driver = { | |||
979 | #endif | 979 | #endif |
980 | 980 | ||
981 | #if defined(CONFIG_SPI_MASTER) | 981 | #if defined(CONFIG_SPI_MASTER) |
982 | static int wm8988_spi_write(struct spi_device *spi, const char *data, int len) | ||
983 | { | ||
984 | struct spi_transfer t; | ||
985 | struct spi_message m; | ||
986 | u8 msg[2]; | ||
987 | |||
988 | if (len <= 0) | ||
989 | return 0; | ||
990 | |||
991 | msg[0] = data[0]; | ||
992 | msg[1] = data[1]; | ||
993 | |||
994 | spi_message_init(&m); | ||
995 | memset(&t, 0, (sizeof t)); | ||
996 | |||
997 | t.tx_buf = &msg[0]; | ||
998 | t.len = len; | ||
999 | |||
1000 | spi_message_add_tail(&t, &m); | ||
1001 | spi_sync(spi, &m); | ||
1002 | |||
1003 | return len; | ||
1004 | } | ||
1005 | |||
1006 | static int __devinit wm8988_spi_probe(struct spi_device *spi) | 982 | static int __devinit wm8988_spi_probe(struct spi_device *spi) |
1007 | { | 983 | { |
1008 | struct wm8988_priv *wm8988; | 984 | struct wm8988_priv *wm8988; |
@@ -1013,7 +989,6 @@ static int __devinit wm8988_spi_probe(struct spi_device *spi) | |||
1013 | return -ENOMEM; | 989 | return -ENOMEM; |
1014 | 990 | ||
1015 | codec = &wm8988->codec; | 991 | codec = &wm8988->codec; |
1016 | codec->hw_write = (hw_write_t)wm8988_spi_write; | ||
1017 | codec->control_data = spi; | 992 | codec->control_data = spi; |
1018 | codec->dev = &spi->dev; | 993 | codec->dev = &spi->dev; |
1019 | 994 | ||