| // SPDX-License-Identifier: GPL-2.0+ |
| * Copyright (C) 2012 Samsung Electronics |
| * R. Chandrasekar <rcsekar@samsung.com> |
| void sound_create_square_wave(uint sample_rate, unsigned short *data, int size, |
| uint freq, uint channels) |
| const unsigned short amplitude = 16000; /* between 1 and 32767 */ |
| const int period = freq ? sample_rate / freq : 0; |
| const int half = period / 2; |
| /* Make sure we don't overflow our buffer */ |
| for (i = 0; size && i < half; i++) { |
| for (j = 0; size && j < channels; j++, size -= 2) |
| for (i = 0; size && i < period - half; i++) { |
| for (j = 0; size && j < channels; j++, size -= 2) |