### Godot version

v4.2.beta4.official [93cdacbb0], 4.1.2.stable

### System information

Godot v4.2.beta4 - Android 10 - Vulkan (Mobile)

### Issue description

This happens only when trying to run it on Android 10 using the mobile renderer.

It fails on Samsung Galaxy S9+ (Android 10).
It works on Nokia 5.4 (Android 12).

The surface tool doesn't seem generate mesh at least not visible one. It also fails to generate collision mesh as a character will fall through it.

I included an example code. 

### Steps to reproduce

Export the attached reproduction project (remember to set the renderer to mobile) and install it on an Android phone. The phone I tested is Samsung Galaxy S9+ with Android 10.


### Minimal reproduction project

[SurfaceToolBug.zip](https://github.com/godotengine/godot/files/13237789/SurfaceToolBug.zip)

image_view_create_info.components.r = component_swizzles[p_view.swizzle_r];
	image_view_create_info.components.g = component_swizzles[p_view.swizzle_g];
	image_view_create_info.components.b = component_swizzles[p_view.swizzle_b];
	image_view_create_info.components.a = component_swizzles[p_view.swizzle_a];
	if (p_slice_type == TEXTURE_SLICE_CUBEMAP) {
		ERR_FAIL_COND_V_MSG(p_layer >= src_texture->layers, RID(),
				"Specified layer is invalid for cubemap");
		ERR_FAIL_COND_V_MSG((p_layer % 6) != 0, RID(),
				"Specified layer must be a multiple of 6.");
	}
	image_view_create_info.subresourceRange.baseMipLevel = p_mipmap;
	image_view_create_info.subresourceRange.levelCount = p_mipmaps;
	image_view_create_info.subresourceRange.layerCount = slice_layers;
	image_view_create_info.subresourceRange.baseArrayLayer = p_layer;
	if (texture.usage_flags & TEXTURE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT) {
		image_view_create_info.subresourceRange.aspectMask = VK_IMAGE_ASPECT_DEPTH_BIT;
	} else {
		image_view_create_info.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
	}
	VkResult err = vkCreateImageView(device, &image_view_create_info, nullptr, &texture.view);
	ERR_FAIL_COND_V_MSG(err, RID(), "vkCreateImageView failed with error " + itos(err) + ".");
	texture.owner = p_with_texture;
	RID id = texture_owner.make_rid(texture);
#ifdef DEV_ENABLED
	set_resource_name(id, "RID:" + itos(id.get_id()));
#endif
	_add_dependency(id, p_with_texture);
	return id;
}
Error RenderingDeviceVulkan::texture_update(RID p_texture, uint32_t p_layer, const Vector<uint8_t> &p_data, BitField<BarrierMask> p_post_barrier) {