From a4b08df4e01beac8a5e90f5dfb8a1ffda943d73d Mon Sep 17 00:00:00 2001 From: Johan Hovold Date: Fri, 27 May 2016 17:26:23 +0200 Subject: [PATCH] greybus: interface: clean up bootrom quirk handling Clean up bootrom quirk handling in preparation for addition of further flags. Reviewed-by: Viresh Kumar Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman --- drivers/staging/greybus/interface.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/staging/greybus/interface.c b/drivers/staging/greybus/interface.c index d1e2c456462e..0f2b5914eae5 100644 --- a/drivers/staging/greybus/interface.c +++ b/drivers/staging/greybus/interface.c @@ -174,6 +174,7 @@ static void gb_interface_route_destroy(struct gb_interface *intf) static int gb_interface_read_and_clear_init_status(struct gb_interface *intf) { struct gb_host_device *hd = intf->hd; + unsigned long bootrom_quirks; int ret; u32 value; u16 attr; @@ -217,16 +218,18 @@ static int gb_interface_read_and_clear_init_status(struct gb_interface *intf) init_status = value >> 24; /* - * Check if the interface is executing the quirky ES3 bootrom that - * requires E2EFC, CSD and CSV to be disabled. + * Check if the interface is executing the quirky ES3 bootrom that, + * for example, requires E2EFC, CSD and CSV to be disabled. */ + bootrom_quirks = GB_INTERFACE_QUIRK_NO_CPORT_FEATURES; + switch (init_status) { case GB_INIT_BOOTROM_UNIPRO_BOOT_STARTED: case GB_INIT_BOOTROM_FALLBACK_UNIPRO_BOOT_STARTED: - intf->quirks |= GB_INTERFACE_QUIRK_NO_CPORT_FEATURES; + intf->quirks |= bootrom_quirks; break; default: - intf->quirks &= ~GB_INTERFACE_QUIRK_NO_CPORT_FEATURES; + intf->quirks &= ~bootrom_quirks; } /* Clear the init status. */