how can I just add to parent theme function(s) instead of redeclaring whole the function

I might have a solution for you.

But, consider first using the default WordPress custom logo support. You just need to add this to your functions.php file:


function theme_prefix_setup() {

    add_theme_support( 'custom-logo' );

}

add_action( 'after_setup_theme', 'theme_prefix_setup' );

See more details about add_theme_support( 'custom-logo' ); at https://codex.wordpress.org/Theme_Logo.

Now, if you click Appearance > Customize, under Site Identity you will se the new Logo field.

If the solution above doesn’t fit you, keep reading…

I tested the code below and it works fine (of course I changed it to fit some of your needs).


/**
 * @param object    $instance
 */
function customize_customize_page( $instance ) {

    // Set the args. You do not need to set 'type' key here.
    $args = array(
        'priority' => 0,
        'section' => 'home',
        // 'settings' => 'home',
        'label' => __( 'Logo' ),
        'description' => __( 'Description' ),
    );

    // Here we instance WP_Customize_Image_Control class and set its paramaters.
    // See that here is where you choose your option ID.
    $instance->add_control( new WP_Customize_Image_Control( $instance, 'home_logo', $args ) );

}

add_action( 'customize_register', 'customize_customize_page', 199, 1 );

If the code above won’t work you should try uncommenting the key ‘settings’ and try again.