| /* | 
 |  * Copyright (C) 2012 Samsung Electronics | 
 |  * R. Chandrasekar < rcsekar@samsung.com> | 
 |  * | 
 |  * SPDX-License-Identifier:	GPL-2.0+ | 
 |  */ | 
 |  | 
 | #ifndef __SOUND_H__ | 
 | #define __SOUND_H__ | 
 |  | 
 | /* sound codec enum */ | 
 | enum en_sound_codec { | 
 | 	CODEC_WM_8994, | 
 | 	CODEC_WM_8995, | 
 | 	CODEC_MAX_98095, | 
 | 	CODEC_MAX | 
 | }; | 
 |  | 
 | /* sound codec enum */ | 
 | enum sound_compat { | 
 | 	AUDIO_COMPAT_SPI, | 
 | 	AUDIO_COMPAT_I2C, | 
 | }; | 
 |  | 
 | /* Codec information structure to store the info from device tree */ | 
 | struct sound_codec_info { | 
 | 	int i2c_bus; | 
 | 	int i2c_dev_addr; | 
 | 	enum en_sound_codec codec_type; | 
 | }; | 
 |  | 
 | /* | 
 |  * Generates square wave sound data for 1 second | 
 |  * | 
 |  * @param data          data buffer pointer | 
 |  * @param size          size of the buffer | 
 |  * @param freq          frequency of the wave | 
 |  */ | 
 | void sound_create_square_wave(unsigned short *data, int size, uint32_t freq); | 
 |  | 
 | /* | 
 |  * Initialises audio sub system | 
 |  * @param blob	Pointer of device tree node or NULL if none. | 
 |  * @return	int value 0 for success, -1 for error | 
 |  */ | 
 | int sound_init(const void *blob); | 
 |  | 
 | /* | 
 |  * plays the pcm data buffer in pcm_data.h through i2s1 to make the | 
 |  * sine wave sound | 
 |  * | 
 |  * @return	int 0 for success, -1 for error | 
 |  */ | 
 | int sound_play(uint32_t msec, uint32_t frequency); | 
 |  | 
 | #endif  /* __SOUND__H__ */ |