From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EB31C2566 for ; Wed, 22 Mar 2023 12:17:42 +0000 (UTC) Received: from [192.168.1.100] (2-237-20-237.ip236.fastwebnet.it [2.237.20.237]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: kholk11) by madras.collabora.co.uk (Postfix) with ESMTPSA id 389CE66030ED; Wed, 22 Mar 2023 12:17:39 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1679487461; bh=Y/ViFHF+5ivXcB2oIYzIPVmCLMqimwaue47WFt0l5lw=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=U0BpYf8r5D1sTxdz4HbVYYErfotKO7ueqc1imuNp+BqvyZDaWF8+vpYvHJokG7ljz +3CrIcyBy8Gy1l1Mvu9+8cy3QDyYvIXcnPSKOQ4sJeTqskA6mCp1BjuW4trXxY3Yfi jq9nE7z2GMHpLzrNs/kwLgddTznBTwGtMwoAXm4a+OBE8V3ez8McJzXLpiCe5BnfTB Of4cHHPBMDS5Ix2/Iv2TY/SWSj6tZIMCFtizNF3j+/s0WbgrVucDVRe7nPxIBZhDif AhQZfjji55lsLtf7CF4ksmE9pmxQ7vzGc+tf05UvLEZ4W1IolvsVTjPJ7eYMQmvaru xetIjb87blQWA== Message-ID: <4607ead5-66c2-ab43-5053-6dfbbac7feef@collabora.com> Date: Wed, 22 Mar 2023 13:17:36 +0100 Precedence: bulk X-Mailing-List: chrome-platform@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [PATCH v14 02/10] platform/chrome: cros_ec_typec: Purge blocking switch devlinks Content-Language: en-US To: Pin-yen Lin , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , David Airlie , Daniel Vetter , Rob Herring , Krzysztof Kozlowski , Andy Shevchenko , Daniel Scally , Heikki Krogerus , Sakari Ailus , Greg Kroah-Hartman , "Rafael J . Wysocki" , Prashant Malani , Benson Leung , Guenter Roeck Cc: Xin Ji , linux-kernel@vger.kernel.org, Thomas Zimmermann , linux-acpi@vger.kernel.org, Javier Martinez Canillas , Hsin-Yi Wang , Lyude Paul , =?UTF-8?Q?N=c3=adcolas_F_=2e_R_=2e_A_=2e_Prado?= , Allen Chen , dri-devel@lists.freedesktop.org, Marek Vasut , Stephen Boyd , chrome-platform@lists.linux.dev, devicetree@vger.kernel.org, Chen-Yu Tsai References: <20230322104639.221402-1-treapking@chromium.org> <20230322104639.221402-3-treapking@chromium.org> From: AngeloGioacchino Del Regno In-Reply-To: <20230322104639.221402-3-treapking@chromium.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Il 22/03/23 11:46, Pin-yen Lin ha scritto: > From: Prashant Malani > > When using OF graph, the fw_devlink code will create links between the > individual port driver (cros-ec-typec here) and the parent device for > a Type-C switch (like mode-switch). Since the mode-switch will in turn > have the usb-c-connector (i.e the child of the port driver) as a > supplier, fw_devlink will not be able to resolve the cyclic dependency > correctly. > > As a result, the mode-switch driver probe() never runs, so mode-switches > are never registered. Because of that, the port driver probe constantly > fails with -EPROBE_DEFER, because the Type-C connector class requires all > switch devices to be registered prior to port registration. > > To break this deadlock and allow the mode-switch registration to occur, > purge all the usb-c-connector nodes' absent suppliers. This eliminates > the connector as a supplier for a switch and allows it to be probed. > > Signed-off-by: Prashant Malani > Signed-off-by: Pin-yen Lin > Reviewed-by: Chen-Yu Tsai > Tested-by: Chen-Yu Tsai > Acked-by: Heikki Krogerus Reviewed-by: AngeloGioacchino Del Regno