diff --git a/drivers/staging/greybus/protocol.c b/drivers/staging/greybus/protocol.c index 400f73386474..ae8ab21ee920 100644 --- a/drivers/staging/greybus/protocol.c +++ b/drivers/staging/greybus/protocol.c @@ -70,7 +70,7 @@ int __gb_protocol_register(struct gb_protocol *protocol, struct module *module) * We need to insert the protocol here, before the existing one * (or before the head if we searched the whole list) */ - list_add_tail(&protocol->links, &gb_protocols); + list_add_tail(&protocol->links, &existing->links); spin_unlock_irq(&gb_protocols_lock); pr_info("Registered %s protocol.\n", protocol->name);