From e33879a45ed3c3c0f9f19f6c658ae4ac6683e42d Mon Sep 17 00:00:00 2001
From: =?utf8?q?Pali=20Roh=C3=A1r?= <pali@kernel.org>
Date: Thu, 19 May 2022 11:11:52 +0200
Subject: [PATCH] board: turris: Find atsha device by atsha driver
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

It does not matter what is DT node name of atsha device. So find it via
atsha driver and not by DT node name.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
---
 board/CZ.NIC/turris_atsha_otp.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/board/CZ.NIC/turris_atsha_otp.c b/board/CZ.NIC/turris_atsha_otp.c
index 8c39f5e524..e62b7ee2a4 100644
--- a/board/CZ.NIC/turris_atsha_otp.c
+++ b/board/CZ.NIC/turris_atsha_otp.c
@@ -6,6 +6,7 @@
 
 #include <env.h>
 #include <net.h>
+#include <dm/device.h>
 #include <dm/uclass.h>
 #include <atsha204a-i2c.h>
 
@@ -16,12 +17,14 @@
 #define TURRIS_ATSHA_OTP_MAC0		3
 #define TURRIS_ATSHA_OTP_MAC1		4
 
+extern U_BOOT_DRIVER(atsha204);
+
 static struct udevice *get_atsha204a_dev(void)
 {
 	/* Cannot be static because BSS does not have to be ready at this early stage */
 	struct udevice *dev;
 
-	if (uclass_get_device_by_name(UCLASS_MISC, "crypto@64", &dev)) {
+	if (uclass_get_device_by_driver(UCLASS_MISC, DM_DRIVER_GET(atsha204), &dev)) {
 		puts("Cannot find ATSHA204A on I2C bus!\n");
 		dev = NULL;
 	}
-- 
2.39.5