From nobody Thu Feb 12 20:14:57 2026 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A00B37080B for ; Sun, 5 Jan 2025 07:15:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.175 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061302; cv=none; b=KX62HzV6rjzOHPqso6zCAOiQNxynI4GnJCCQspB1BzUX73BEKZ3vVTtqZBDCiT0DZp4DItrIsepemdWcTCC4MDk9B6ymVt1Jhkn/S+9kH12gn4NPZUh1JlmGK68Z1d9aVhL8fAb/21he25UgFCoHSa8s4lGgpiPxloRdyOmnEvQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061302; c=relaxed/simple; bh=NtIPh46BeBBRavGAIlzmNcOKuXgtwLSH38m5dpJNAys=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KOsW81UQ6cp9DreOwG0MDue+fco+0L72M6qwfHMIhU/WxolE0roPQy3XMYCQcuVoj+kDii8PRQpVsmUvttJb8tXwSIG6Its9MzxCjqw6QuTlmUeQNhwPqD3wbSaYaGRRSQswSSjztgwKH/TblYclyIfmNq4vufjSEiUrVjeDYtw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com; spf=pass smtp.mailfrom=0x0f.com; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b=rphlID8G; arc=none smtp.client-ip=209.85.214.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=0x0f.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b="rphlID8G" Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-2166651f752so221932365ad.3 for ; Sat, 04 Jan 2025 23:15:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=0x0f.com; s=google; t=1736061300; x=1736666100; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=h1UM9YxumSC7m8fCEV77dLpbLIfMqY7kUCOGI+oWymc=; b=rphlID8G8M1ZtsHhxSbpvBkS+GrX4Y+jskH2b9jo8XulGYDENFyiSjSvZgodsmzI5x nFrb7S5InfhV4+W2Pe6qbLOnoo+JbMBlBq2aNUKEXPwgxcYyGX3mluUtgxGjlQcDvT6a na6bFfwleo+RuGz+ZOIF20PhvZgLGVGC7VhSU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736061300; x=1736666100; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=h1UM9YxumSC7m8fCEV77dLpbLIfMqY7kUCOGI+oWymc=; b=jLxuKr4eG7Fr4D9Q2E33yYbvE2ZEEHxxX4uCnpQ/Pow0NNu6d5/3nhaz8iD9Rajui2 9LYjziOsNSesP6nbxVo3ayIZL3twk5fxesDknbSzAAflsxPTeLUkSv4achM94pNlqSpC UXsZB46++xI/2p5Q4yn9ZT/zxHN2xhRKFo3yirP0pifv2TlIS6RnjeY39PWGT9wRG7ay Wj50bC7Ilh1EPT26nksAu5S0BV+2VfRs2YCsYpn725Tq1SrLNllFzJe2ZzHrNSbvz00h 7A6cbfcW1nkGEFKVGVgnAs7bCud/yh6sIbWX+UUe16+AXqVpQtfAJaVuQFHRqD3jlC3P O+8g== X-Gm-Message-State: AOJu0Yxmk4HRhCk8VQ0DWK4lcNTchR+D/mMgDiiPrQbFSGGU0b3k6HvY rMKI93swLTn11Nd6N3fARKHsNzbtHyFakbgBycwi7bQhL5wM/0cdWBOavsuTPws= X-Gm-Gg: ASbGncsDhjD1v3ZQqdPN+vE4q25435oG08gyimQCqtwvUn/veKjmfPFcPhtCh1RnQ7i Dmwpuj7fMQPhOyj+k1GFdXdmYeciWsG81/XhmYoZS3lw9B4/9QdrLmJEyZ7PynFN1mhUjMhHXr1 rFpy2XGaZEztxck1g9KoEZMu7LMvPhbxTDmx1ywI9VvGxTFfu70jnkWYAMT7g3yqR2zJXVX4CVL 2lOYHMnfXYVEafBaZseuQOA6ZSgnt9KGDBpr8kxBHxJfe97Kacy6ksWV5xEZr28wR+/ X-Google-Smtp-Source: AGHT+IGcMNkP197o6owDLgc02j2lkk8bugUjCIOVPjuJglq0i5lpZO+GOfRIhTciQjmqE9Uo63QlRg== X-Received: by 2002:a17:903:98e:b0:212:63db:bb15 with SMTP id d9443c01a7336-219e6f14f81mr858741595ad.38.1736061299988; Sat, 04 Jan 2025 23:14:59 -0800 (PST) Received: from shiro.work.home.arpa. ([2400:4162:2428:2ffe:e94c:e5d:106e:3582]) by smtp.googlemail.com with ESMTPSA id d9443c01a7336-219dc9cdef7sm270007125ad.133.2025.01.04.23.14.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Jan 2025 23:14:59 -0800 (PST) From: Daniel Palmer To: geert@linux-m68k.org, fthain@linux-m68k.org, linux-m68k@lists.linux-m68k.org Cc: linux-kernel@vger.kernel.org, Daniel Palmer Subject: [RFC PATCH 1/3] m68k: bootinfo: Add tag for FDT address Date: Sun, 5 Jan 2025 16:14:31 +0900 Message-ID: <20250105071433.3943289-2-daniel@0x0f.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250105071433.3943289-1-daniel@0x0f.com> References: <20250105071433.3943289-1-daniel@0x0f.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Allow bootinfo to carry a pointer to an FDT so that the bootloader can pass us one. This allows for devicetree support without changing the boot protocol too much and breaking unmaintained bootloaders. Signed-off-by: Daniel Palmer --- arch/m68k/include/uapi/asm/bootinfo.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/m68k/include/uapi/asm/bootinfo.h b/arch/m68k/include/uapi= /asm/bootinfo.h index 024e87d7095f..326f20e82769 100644 --- a/arch/m68k/include/uapi/asm/bootinfo.h +++ b/arch/m68k/include/uapi/asm/bootinfo.h @@ -73,6 +73,9 @@ struct mem_info { #define BI_RNG_SEED 0x0008 =20 =20 +/* Pointer to FDT if there is one */ +#define BI_FDT 0x0009 + /* * Linux/m68k Architectures (BI_MACHTYPE) */ --=20 2.45.2 From nobody Thu Feb 12 20:14:57 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B758913B592 for ; Sun, 5 Jan 2025 07:15:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061304; cv=none; b=XvdjE1AI4A3wLLgPIlWC6uUY0ETyhhQxOexqVyzUHWiDPguTaYfr0TAmrMON57Lp7R6nEdJf7tS/zqJ+8cRh12qlGbn8DcPgP+eSfFwtAQWJqUYSA4jlf/5qQaEHaKlhIKroTg8PM7vj9K3wEf04xmz/bh5fAK+c5nPAbwokb3E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061304; c=relaxed/simple; bh=bAVYeRTyH9it2XS91sWRwPnXF5Iq5evkQGxyxsDaqC4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MSx32KXFNSVDTzwfqMpzv1xx44CSniC554lGlEr+Vd8dBLfMhtjhF52gCmIW8eg+M8ZxZkFtextfO219k7uH9AZJJTb0n6yiEuZse8LiHRy+GBVFADEsL+l5fdtYupf2B7CMgx0tWeO3Z24Ff1aoEhCRdMWO/uBCr9Vo8pCddVI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com; spf=pass smtp.mailfrom=0x0f.com; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b=D73tBUIL; arc=none smtp.client-ip=209.85.214.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=0x0f.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b="D73tBUIL" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-21675fd60feso251001135ad.2 for ; Sat, 04 Jan 2025 23:15:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=0x0f.com; s=google; t=1736061302; x=1736666102; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PpFvK9eU/t8hNYDP9XQWnc8bXb3AgTnRlyt0Rp6Wxv0=; b=D73tBUILOQoMd2PB5Jv57LsJaOMETv2bJ/3F+LrYpeByxYvPQkGPP88M2V6JnHjt3K 5xVmSYAwcKyogG+c5aQCqvkyLXBhBOotFr+a6FEC1XP380yv0btlDfNVZ5wAqkVVVvfn x4J4p4ozhn7UNtrKQ/FhaGWdorQxS2ItBKh7M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736061302; x=1736666102; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PpFvK9eU/t8hNYDP9XQWnc8bXb3AgTnRlyt0Rp6Wxv0=; b=Fc6NiQXVDN3oDfffPHFbt923e9SjZtMTBGi+5hW0hVzbsaMAXNe9i2m+upeG3P5ToA OPkDcEfHhcJqluPbU8miijO9oSNKitmwNsRDtLRdTPJ6sPTJk5EyLL0xszqTw4aSiVsZ zHvg8T9tS9mB/xYsKtGG6IB6RUWY3wl1DYEh37H9aXZglejN2fnF+s9q87XjPSrcDh6E LvkXKP3VJlo8sPVR+Nq2S8jOvf3p+mQ0JC3ecZwed9JESbWt0JeEIdUVcoXCnJ9pntJq saQ8BUrRQAvB0Ja86p05laA+lfQIt2wF+MTdYwYjp/d73YI7ABPUEjx3Mac8BCfrW43B H1Rw== X-Gm-Message-State: AOJu0YwE2nrF3wFC+zB2h4ZFtiLHptrK1eImC6NRVvnQfxFQtZFspMet jFvY1efHgqykUa+lrIbw637JpWbI84Zg4tkQx9DGP6GocgnVm5tVa4AlxSeDdYc= X-Gm-Gg: ASbGncvTqVujjX9SIAy2zF2DteUatixKyggaxxavSZMeD0EfStLweiw8rmx+Y3CUprQ hFORrEw1wBOoS5zwUkIueo0A6CXfyuB1526Kt/vdWpozhiOmRcvtO3umFaY8nBPoIDdZQE3le9a qYs344fBEeP4bWoQoB3WG0XcHiFNNrQ1Yef6eL8GWNxo0r6TinzxNw0DNN2bKv7VIS9N4psdAC7 INoSRREzE9dnKkGJMvo06kIXEJL9uWRMbCBbj6DOUVPX3xHjQQ5EErb+7Q9wcpNVXo9 X-Google-Smtp-Source: AGHT+IFwrFNGCjXvHA5ahmFCVR5GMznwulJmCjkk5vSaS+IUbcw2meg9QsPp5xP+vRjtp/TJRqFUTQ== X-Received: by 2002:a17:902:da81:b0:216:61d2:46b8 with SMTP id d9443c01a7336-219e6ea1c0cmr799287015ad.23.1736061302129; Sat, 04 Jan 2025 23:15:02 -0800 (PST) Received: from shiro.work.home.arpa. ([2400:4162:2428:2ffe:e94c:e5d:106e:3582]) by smtp.googlemail.com with ESMTPSA id d9443c01a7336-219dc9cdef7sm270007125ad.133.2025.01.04.23.15.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Jan 2025 23:15:01 -0800 (PST) From: Daniel Palmer To: geert@linux-m68k.org, fthain@linux-m68k.org, linux-m68k@lists.linux-m68k.org Cc: linux-kernel@vger.kernel.org, Daniel Palmer Subject: [RFC PATCH 2/3] m68k: bootinfo: Add generic machine type Date: Sun, 5 Jan 2025 16:14:32 +0900 Message-ID: <20250105071433.3943289-3-daniel@0x0f.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250105071433.3943289-1-daniel@0x0f.com> References: <20250105071433.3943289-1-daniel@0x0f.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add a generic machine type that will use an FDT instead of board setup code. This will allow the bootloader to just pass the generic machine type, some memory info for the head.S code and a pointer to a FDT blob instead of a specific machine type and make adding new machines simpler. Signed-off-by: Daniel Palmer --- arch/m68k/include/uapi/asm/bootinfo.h | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/m68k/include/uapi/asm/bootinfo.h b/arch/m68k/include/uapi= /asm/bootinfo.h index 326f20e82769..e885bbc462d3 100644 --- a/arch/m68k/include/uapi/asm/bootinfo.h +++ b/arch/m68k/include/uapi/asm/bootinfo.h @@ -94,6 +94,7 @@ struct mem_info { #define MACH_M54XX 12 #define MACH_M5441X 13 #define MACH_VIRT 14 +#define MACH_GENERIC 15 =20 =20 /* --=20 2.45.2 From nobody Thu Feb 12 20:14:57 2026 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D3F97224FD for ; Sun, 5 Jan 2025 07:15:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.175 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061306; cv=none; b=OtQ75VLDDMK8gNuIYvXmq1hItfYsZY7Mk/kxufdu4fVN0RsqCyoBadObme9FJaLKJabFGcAJMWM5XeunKGeGFWpUvKkQb6EUKBFAfZ1Oygu/EAIlTJqX0cF4MQme2VZ1SuN2uzBRLFncTAAxxy6F/Yp1sNHoVpl/gJZV+A+1MaU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736061306; c=relaxed/simple; bh=B1k9u6Ut55Q1yDg67JhK1vQvtIPsl10jceFNbmp++q8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mVtCYZ8eBQrWOGDtc+SWk2L8oqUaG/+A+kFL0x0dihFMbq03asm//+VhdAhrKDzpk+9uoneMi4ODT7zf3Cr1wZeeSxwmc4XAVjnTNqk2WjXVnsdGVNvrHls1xdBIJTYPI3kgPx0oInz2MIGbycyHzC9OaORWDRxxtKr8SIqHO00= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com; spf=pass smtp.mailfrom=0x0f.com; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b=WaOF/uuN; arc=none smtp.client-ip=209.85.214.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=0x0f.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=0x0f.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=0x0f.com header.i=@0x0f.com header.b="WaOF/uuN" Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-21a1e6fd923so155592595ad.1 for ; Sat, 04 Jan 2025 23:15:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=0x0f.com; s=google; t=1736061304; x=1736666104; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+kHweRIcONRT5tLJtckOeOXgzzh6Qs9WFL/vxgnpeF0=; b=WaOF/uuNOdHPG3u63BVq+eoDDEmBNQWlzGUnrIVsLJ7ypr9TmKNOKNMWMyiZJ9pagR 7KpzyuS0YxU0RGd3YzZVR+SEsZa56nx4NhvCTLfxv44GEOQZj4GKmHW3WrKh2U3wKloN Ul6T+pH6X2FxQ8VdqQMiBHAIUsE6DM6mXeyhQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736061304; x=1736666104; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+kHweRIcONRT5tLJtckOeOXgzzh6Qs9WFL/vxgnpeF0=; b=CsH3ZySDd0lAZjG9xFB87bLaOGu4p0l6vx75YNyKLlsHD8vVmEr0awH4NUV1285pN3 FFBSDsULj3d2I+YY9EONkis7jA6IUYTiZs5ya+BWpHtCdvjT95Pa0CpsRlMz9hhXnRYg dWZ6Vwjw/2xW5cEP4VcBynp5sCekd2IHAj9PPsjSI1vnneH++ZsZfRLVkxQrLGw+sypP 4aLKxTyRAOuZMvTfge+ZsyuedyhkpB/TGmkZBa7T2k6qL1VUFPMs03QbaBgw08RQPh54 oxMTDvo8mDVgVGcA9QtGx9j/OQl9q0wiC02VLfNQSnTdR3hhYHsV7oJPt8BC/0HWB0fB JB8A== X-Gm-Message-State: AOJu0YwQT4hX+qNtnyX5ALKmWlgIc3bw/lqSTKFXPb6WlsLDlUIVlo5G DlGbXa+bynGzWr21g9NcI6Mmlm/t3G8mJAkgJxS/f27y7BFaJGLZy5f+y58x3ZqOeolVTky294X r X-Gm-Gg: ASbGncsCiGK27jNMPGgehGlliij5H5Or08ZU6omX+dC9cW7hcsI4yLeZFqzacoLQGHZ NGYEJcLQyA1EBRpS0E5Oc6kUeiNqfMSp8tjU+ZKW1KjzrE4xuctdGVGfXoVwMPpf31VNES6+hvN 9z8A+SADwW7P00/QR8OGm6sxxLYbR1Ub+vb9PGA3hByKB8635qufbhTpvFHcL9qPM+nUuTeT90E e/9BSQzlEdABU4Tcsjzm8eLqMlGGlb34avDZTRiI7g0wO3hReiLFZlzChbBXKLBnOEu X-Google-Smtp-Source: AGHT+IEGU1Vt+Pmj7jkPTcwq1RTapVlQfMVVIuOabCz0za5xxjYc9YrGvNyMitcyIlU8PC3yyLIELg== X-Received: by 2002:a17:903:181:b0:216:66d2:f172 with SMTP id d9443c01a7336-219e6f4a86bmr726109815ad.56.1736061304228; Sat, 04 Jan 2025 23:15:04 -0800 (PST) Received: from shiro.work.home.arpa. ([2400:4162:2428:2ffe:e94c:e5d:106e:3582]) by smtp.googlemail.com with ESMTPSA id d9443c01a7336-219dc9cdef7sm270007125ad.133.2025.01.04.23.15.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Jan 2025 23:15:03 -0800 (PST) From: Daniel Palmer To: geert@linux-m68k.org, fthain@linux-m68k.org, linux-m68k@lists.linux-m68k.org Cc: linux-kernel@vger.kernel.org, Daniel Palmer Subject: [RFC PATCH 3/3] m68k: Add dt support (proof of concept) Date: Sun, 5 Jan 2025 16:14:33 +0900 Message-ID: <20250105071433.3943289-4-daniel@0x0f.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250105071433.3943289-1-daniel@0x0f.com> References: <20250105071433.3943289-1-daniel@0x0f.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" This is not ready for merge. This just adds enough, probably incorrect, code to get the FDT blob from the bootinfo and parse it. This is enough to get drivers to probe using devicetree nodes instead of manually registering them but looking up interrupts etc in the DT will not work. Signed-off-by: Daniel Palmer --- arch/m68k/Kconfig | 2 ++ arch/m68k/kernel/setup_mm.c | 63 ++++++++++++++++++++++++++++++++++++- 2 files changed, 64 insertions(+), 1 deletion(-) diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index 7c4f7bcc89d7..e348e6822943 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig @@ -39,6 +39,8 @@ config M68K select OLD_SIGSUSPEND3 select UACCESS_MEMCPY if !MMU select ZONE_DMA + select OF + select OF_EARLY_FLATTREE =20 config CPU_BIG_ENDIAN def_bool y diff --git a/arch/m68k/kernel/setup_mm.c b/arch/m68k/kernel/setup_mm.c index 15c1a595a1de..6d358124259e 100644 --- a/arch/m68k/kernel/setup_mm.c +++ b/arch/m68k/kernel/setup_mm.c @@ -50,6 +50,10 @@ #include #include =20 +#include +#include +#include + #if !FPSTATESIZE || !NR_IRQS #warning No CPU/platform type selected, your kernel will not work! #warning Are you building an allnoconfig kernel? @@ -107,11 +111,57 @@ EXPORT_SYMBOL(isa_sex); =20 #define MASK_256K 0xfffc0000 =20 +static phys_addr_t fdt_blob; +static void __init m68k_setup_fdt(void) +{ + pr_info("m68k generic DT machine support, FDT blob at 0x%08x\n", fdt_blob= ); + if (!early_init_dt_verify(__va(fdt_blob), fdt_blob)) { + pr_err("FDT blob is bad?!\n"); + return; + } + + early_init_dt_scan_nodes(); +} + +static const struct bi_record __init *m68k_find_bootinfo_record(const stru= ct bi_record *record, u16 bi_type) +{ + uint16_t tag; + + while ((tag =3D be16_to_cpu(record->tag)) !=3D BI_LAST) { + uint16_t size =3D be16_to_cpu(record->size); + + if (tag =3D=3D bi_type) + return record; + record =3D (struct bi_record *)((unsigned long)record + size); + } + + return NULL; +} + static void __init m68k_parse_bootinfo(const struct bi_record *record) { const struct bi_record *first_record =3D record; + const struct bi_record *machine_record; uint16_t tag; =20 + fdt_blob =3D 0; + + /* + * First attempt to work out if we are a generic DT machine, + * must have an FDT record. + */ + machine_record =3D m68k_find_bootinfo_record(record, BI_MACHTYPE); + if (machine_record->data[0] =3D=3D MACH_GENERIC) { + const struct bi_record *fdt_record; + + fdt_record =3D m68k_find_bootinfo_record(record, BI_FDT); + + BUG_ON(!fdt_record); + fdt_blob =3D (phys_addr_t) fdt_record->data[0]; + } + + /* Revert to the pure bootinfo method */ + record =3D first_record; while ((tag =3D be16_to_cpu(record->tag)) !=3D BI_LAST) { int unknown =3D 0; const void *data =3D record->data; @@ -124,7 +174,6 @@ static void __init m68k_parse_bootinfo(const struct bi_= record *record) case BI_MMUTYPE: /* Already set up by head.S */ break; - case BI_MEMCHUNK: if (m68k_num_memory < NUM_MEMINFO) { const struct mem_info *m =3D data; @@ -162,6 +211,10 @@ static void __init m68k_parse_bootinfo(const struct bi= _record *record) break; } =20 + case BI_FDT: + fdt_blob =3D (phys_addr_t) record->data[0]; + break; + default: if (MACH_IS_AMIGA) unknown =3D amiga_parse_bootinfo(record); @@ -240,6 +293,9 @@ void __init setup_arch(char **cmdline_p) } } =20 + if (fdt_blob) + m68k_setup_fdt(); + setup_initial_init_mm((void *)PAGE_OFFSET, _etext, _edata, _end); =20 #if defined(CONFIG_BOOTPARAM) @@ -329,6 +385,11 @@ void __init setup_arch(char **cmdline_p) panic("No configuration setup"); } =20 + if (fdt_blob) { + memblock_reserve(fdt_blob, fdt_totalsize(__va(fdt_blob))); + unflatten_device_tree(); + } + if (IS_ENABLED(CONFIG_BLK_DEV_INITRD) && m68k_ramdisk.size) memblock_reserve(m68k_ramdisk.addr, m68k_ramdisk.size); =20 --=20 2.45.2