@ -296,6 +296,9 @@ static void atmel_spi_cs_activate(struct udevice *dev)
struct dm_spi_slave_platdata * slave_plat = dev_get_parent_platdata ( dev ) ;
u32 cs = slave_plat - > cs ;
if ( ! dm_gpio_is_valid ( & priv - > cs_gpios [ cs ] ) )
return ;
dm_gpio_set_value ( & priv - > cs_gpios [ cs ] , 0 ) ;
}
@ -306,6 +309,9 @@ static void atmel_spi_cs_deactivate(struct udevice *dev)
struct dm_spi_slave_platdata * slave_plat = dev_get_parent_platdata ( dev ) ;
u32 cs = slave_plat - > cs ;
if ( ! dm_gpio_is_valid ( & priv - > cs_gpios [ cs ] ) )
return ;
dm_gpio_set_value ( & priv - > cs_gpios [ cs ] , 1 ) ;
}
@ -473,6 +479,9 @@ static int atmel_spi_probe(struct udevice *bus)
}
for ( i = 0 ; i < ARRAY_SIZE ( priv - > cs_gpios ) ; i + + ) {
if ( ! dm_gpio_is_valid ( & priv - > cs_gpios [ i ] ) )
continue ;
dm_gpio_set_dir_flags ( & priv - > cs_gpios [ i ] ,
GPIOD_IS_OUT | GPIOD_IS_OUT_ACTIVE ) ;
}