1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- /*
- * 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__ */
|