Try removing the spaces between the mime types in both places
'logo' => 'image|mimes:jpeg,jpg,bmp,png'
When a rule accepts parameters separated by commas, there can't be any spaces in between the values since it will explode() on commas to get the individual parameters and if they have spaces in it then it becomes " jpg" and " png" instead of "jpg" and "png". I don't think it runs trim() on the results.
Notice in the user guide how they don't have spaces: https://laravel.com/docs/5.6/validation#rule-mimes
'photo' => 'mimes:jpeg,bmp,png'