null_audio: fix warnings, enable -Werror
Change-Id: I83630f697cfb3d12bf8bea35b24dbdfd93b38ef1 Reviewed-on: https://review.haiku-os.org/c/haiku/+/7595 Tested-by: Commit checker robot <[email protected]> Reviewed-by: waddlesplash <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
fa2e76a142
commit
4d058c90a6
@@ -681,7 +681,7 @@ rule ArchitectureSetupWarnings architecture
|
|||||||
EnableWerror src add-ons kernel drivers audio generic ;
|
EnableWerror src add-ons kernel drivers audio generic ;
|
||||||
# EnableWerror src add-ons kernel drivers audio hda ;
|
# EnableWerror src add-ons kernel drivers audio hda ;
|
||||||
EnableWerror src add-ons kernel drivers audio ice1712 ;
|
EnableWerror src add-ons kernel drivers audio ice1712 ;
|
||||||
# EnableWerror src add-ons kernel drivers audio null ;
|
EnableWerror src add-ons kernel drivers audio null ;
|
||||||
# EnableWerror src add-ons kernel drivers audio sb16 ;
|
# EnableWerror src add-ons kernel drivers audio sb16 ;
|
||||||
EnableWerror src add-ons kernel drivers audio usb ;
|
EnableWerror src add-ons kernel drivers audio usb ;
|
||||||
EnableWerror src add-ons kernel drivers audio virtio ;
|
EnableWerror src add-ons kernel drivers audio virtio ;
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
status_t
|
status_t
|
||||||
null_hw_create_virtual_buffers(device_stream_t* stream, const char* name)
|
null_hw_create_virtual_buffers(device_stream_t* stream, const char* name)
|
||||||
{
|
{
|
||||||
int i;
|
uint32 i;
|
||||||
int buffer_size;
|
int buffer_size;
|
||||||
int area_size;
|
int area_size;
|
||||||
uint8* buffer;
|
uint8* buffer;
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ get_description(void* cookie, multi_description* data)
|
|||||||
{
|
{
|
||||||
multi_description description;
|
multi_description description;
|
||||||
|
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
|
|
||||||
if (user_memcpy(&description, data, sizeof(multi_description)) != B_OK) {
|
if (user_memcpy(&description, data, sizeof(multi_description)) != B_OK) {
|
||||||
return B_BAD_ADDRESS;
|
return B_BAD_ADDRESS;
|
||||||
@@ -86,8 +86,7 @@ get_description(void* cookie, multi_description* data)
|
|||||||
if (user_memcpy(data, &description, sizeof(multi_description)) != B_OK)
|
if (user_memcpy(data, &description, sizeof(multi_description)) != B_OK)
|
||||||
return B_BAD_ADDRESS;
|
return B_BAD_ADDRESS;
|
||||||
|
|
||||||
if (description.request_channel_count
|
if ((size_t)description.request_channel_count >= B_COUNT_OF(channel_descriptions)) {
|
||||||
>= sizeof(channel_descriptions) / sizeof(channel_descriptions[0])) {
|
|
||||||
if (user_memcpy(data->channels,
|
if (user_memcpy(data->channels,
|
||||||
&channel_descriptions, sizeof(channel_descriptions)) != B_OK)
|
&channel_descriptions, sizeof(channel_descriptions)) != B_OK)
|
||||||
return B_BAD_ADDRESS;
|
return B_BAD_ADDRESS;
|
||||||
@@ -100,7 +99,7 @@ get_description(void* cookie, multi_description* data)
|
|||||||
static status_t
|
static status_t
|
||||||
get_enabled_channels(void* cookie, multi_channel_enable* data)
|
get_enabled_channels(void* cookie, multi_channel_enable* data)
|
||||||
{
|
{
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
// By default we say, that all channels are enabled
|
// By default we say, that all channels are enabled
|
||||||
// and that this cannot be changed
|
// and that this cannot be changed
|
||||||
B_SET_CHANNEL(data->enable_bits, 0, true);
|
B_SET_CHANNEL(data->enable_bits, 0, true);
|
||||||
@@ -116,7 +115,7 @@ set_global_format(device_t* device, multi_format_info* data)
|
|||||||
{
|
{
|
||||||
// The media kit asks us to set our streams
|
// The media kit asks us to set our streams
|
||||||
// according to its settings
|
// according to its settings
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
device->playback_stream.format = data->output.format;
|
device->playback_stream.format = data->output.format;
|
||||||
device->playback_stream.rate = data->output.rate;
|
device->playback_stream.rate = data->output.rate;
|
||||||
|
|
||||||
@@ -130,7 +129,7 @@ set_global_format(device_t* device, multi_format_info* data)
|
|||||||
static status_t
|
static status_t
|
||||||
get_global_format(device_t* device, multi_format_info* data)
|
get_global_format(device_t* device, multi_format_info* data)
|
||||||
{
|
{
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
// Zero latency is unlikely to happen, so we fake some
|
// Zero latency is unlikely to happen, so we fake some
|
||||||
// additional latency
|
// additional latency
|
||||||
data->output_latency = 30;
|
data->output_latency = 30;
|
||||||
@@ -147,8 +146,8 @@ get_global_format(device_t* device, multi_format_info* data)
|
|||||||
|
|
||||||
|
|
||||||
static int32
|
static int32
|
||||||
create_group_control(multi_mix_control* multi, int32 idx, int32 parent,
|
create_group_control(multi_mix_control* multi, int32 idx, int32 parent, int32 string,
|
||||||
int32 string, const char* name)
|
const char* name)
|
||||||
{
|
{
|
||||||
multi->id = MULTI_AUDIO_BASE_ID + idx;
|
multi->id = MULTI_AUDIO_BASE_ID + idx;
|
||||||
multi->parent = parent;
|
multi->parent = parent;
|
||||||
@@ -165,11 +164,10 @@ create_group_control(multi_mix_control* multi, int32 idx, int32 parent,
|
|||||||
static status_t
|
static status_t
|
||||||
list_mix_controls(device_t* device, multi_mix_control_info * data)
|
list_mix_controls(device_t* device, multi_mix_control_info * data)
|
||||||
{
|
{
|
||||||
int32 parent;
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
|
||||||
|
|
||||||
parent = create_group_control(data->controls +0, 0, 0, 0, "Record");
|
create_group_control(data->controls + 0, 0, 0, 0, "Record");
|
||||||
parent = create_group_control(data->controls +1, 1, 0, 0, "Playback");
|
create_group_control(data->controls + 1, 1, 0, 0, "Playback");
|
||||||
data->control_count = 2;
|
data->control_count = 2;
|
||||||
|
|
||||||
return B_OK;
|
return B_OK;
|
||||||
@@ -179,7 +177,7 @@ list_mix_controls(device_t* device, multi_mix_control_info * data)
|
|||||||
static status_t
|
static status_t
|
||||||
list_mix_connections(void* cookie, multi_mix_connection_info* connection_info)
|
list_mix_connections(void* cookie, multi_mix_connection_info* connection_info)
|
||||||
{
|
{
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -187,7 +185,7 @@ list_mix_connections(void* cookie, multi_mix_connection_info* connection_info)
|
|||||||
static status_t
|
static status_t
|
||||||
list_mix_channels(void* cookie, multi_mix_channel_info* channel_info)
|
list_mix_channels(void* cookie, multi_mix_channel_info* channel_info)
|
||||||
{
|
{
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -195,27 +193,22 @@ list_mix_channels(void* cookie, multi_mix_channel_info* channel_info)
|
|||||||
static status_t
|
static status_t
|
||||||
get_buffers(device_t* device, multi_buffer_list* data)
|
get_buffers(device_t* device, multi_buffer_list* data)
|
||||||
{
|
{
|
||||||
uint32 playback_sample_size
|
uint32 playback_sample_size = format_to_sample_size(device->playback_stream.format);
|
||||||
= format_to_sample_size(device->playback_stream.format);
|
uint32 record_sample_size = format_to_sample_size(device->record_stream.format);
|
||||||
uint32 record_sample_size
|
int32 bidx;
|
||||||
= format_to_sample_size(device->record_stream.format);
|
int32 cidx;
|
||||||
uint32 cidx, bidx;
|
status_t result;
|
||||||
status_t result;
|
|
||||||
|
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
|
|
||||||
// Workaround for Haiku multi_audio API, since it prefers
|
// Workaround for Haiku multi_audio API, since it prefers
|
||||||
// to let the driver pick values, while the BeOS multi_audio
|
// to let the driver pick values, while the BeOS multi_audio
|
||||||
// actually gives the user's defaults.
|
// actually gives the user's defaults.
|
||||||
if (data->request_playback_buffers > STRMAXBUF
|
if (data->request_playback_buffers > STRMAXBUF || data->request_playback_buffers < STRMINBUF)
|
||||||
|| data->request_playback_buffers < STRMINBUF) {
|
|
||||||
data->request_playback_buffers = STRMINBUF;
|
data->request_playback_buffers = STRMINBUF;
|
||||||
}
|
|
||||||
|
|
||||||
if (data->request_record_buffers > STRMAXBUF
|
if (data->request_record_buffers > STRMAXBUF || data->request_record_buffers < STRMINBUF)
|
||||||
|| data->request_record_buffers < STRMINBUF) {
|
|
||||||
data->request_record_buffers = STRMINBUF;
|
data->request_record_buffers = STRMINBUF;
|
||||||
}
|
|
||||||
|
|
||||||
if (data->request_playback_buffer_size == 0)
|
if (data->request_playback_buffer_size == 0)
|
||||||
data->request_playback_buffer_size = FRAMES_PER_BUFFER;
|
data->request_playback_buffer_size = FRAMES_PER_BUFFER;
|
||||||
@@ -260,7 +253,7 @@ get_buffers(device_t* device, multi_buffer_list* data)
|
|||||||
for (bidx = 0; bidx < data->return_playback_buffers; bidx++) {
|
for (bidx = 0; bidx < data->return_playback_buffers; bidx++) {
|
||||||
for (cidx = 0; cidx < data->return_playback_channels; cidx++) {
|
for (cidx = 0; cidx < data->return_playback_channels; cidx++) {
|
||||||
data->playback_buffers[bidx][cidx].base
|
data->playback_buffers[bidx][cidx].base
|
||||||
= device->playback_stream.buffers[bidx] + (playback_sample_size * cidx);
|
= (char*)device->playback_stream.buffers[bidx] + (playback_sample_size * cidx);
|
||||||
data->playback_buffers[bidx][cidx].stride
|
data->playback_buffers[bidx][cidx].stride
|
||||||
= playback_sample_size * data->return_playback_channels;
|
= playback_sample_size * data->return_playback_channels;
|
||||||
}
|
}
|
||||||
@@ -273,7 +266,7 @@ get_buffers(device_t* device, multi_buffer_list* data)
|
|||||||
for (bidx = 0; bidx < data->return_record_buffers; bidx++) {
|
for (bidx = 0; bidx < data->return_record_buffers; bidx++) {
|
||||||
for (cidx = 0; cidx < data->return_record_channels; cidx++) {
|
for (cidx = 0; cidx < data->return_record_channels; cidx++) {
|
||||||
data->record_buffers[bidx][cidx].base
|
data->record_buffers[bidx][cidx].base
|
||||||
= device->record_stream.buffers[bidx] + (record_sample_size * cidx);
|
= (char*)device->record_stream.buffers[bidx] + (record_sample_size * cidx);
|
||||||
data->record_buffers[bidx][cidx].stride
|
data->record_buffers[bidx][cidx].stride
|
||||||
= record_sample_size * data->return_record_channels;
|
= record_sample_size * data->return_record_channels;
|
||||||
}
|
}
|
||||||
@@ -286,7 +279,7 @@ get_buffers(device_t* device, multi_buffer_list* data)
|
|||||||
static status_t
|
static status_t
|
||||||
buffer_exchange(device_t* device, multi_buffer_info* info)
|
buffer_exchange(device_t* device, multi_buffer_info* info)
|
||||||
{
|
{
|
||||||
//dprintf("null_audio: %s\n" , __func__ );
|
//dprintf("null_audio: %s\n", __func__ );
|
||||||
static int debug_buffers_exchanged = 0;
|
static int debug_buffers_exchanged = 0;
|
||||||
cpu_status status;
|
cpu_status status;
|
||||||
status_t result;
|
status_t result;
|
||||||
@@ -342,7 +335,7 @@ buffer_exchange(device_t* device, multi_buffer_info* info)
|
|||||||
static status_t
|
static status_t
|
||||||
buffer_force_stop(device_t* device)
|
buffer_force_stop(device_t* device)
|
||||||
{
|
{
|
||||||
dprintf("null_audio: %s\n" , __func__ );
|
dprintf("null_audio: %s\n", __func__ );
|
||||||
|
|
||||||
if (device == NULL)
|
if (device == NULL)
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
@@ -386,7 +379,7 @@ multi_audio_control(void* cookie, uint32 op, void* arg, size_t len)
|
|||||||
case B_MULTI_BUFFER_FORCE_STOP: return buffer_force_stop(cookie);
|
case B_MULTI_BUFFER_FORCE_STOP: return buffer_force_stop(cookie);
|
||||||
}
|
}
|
||||||
|
|
||||||
dprintf("null_audio: %s - unknown op\n" , __func__);
|
dprintf("null_audio: %s - unknown op\n", __func__);
|
||||||
return B_BAD_VALUE;
|
return B_BAD_VALUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user