From owner-freebsd-arm@FreeBSD.ORG Sat Oct 13 03:06:12 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8D183EAA for ; Sat, 13 Oct 2012 03:06:12 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-ie0-f182.google.com (mail-ie0-f182.google.com [209.85.223.182]) by mx1.freebsd.org (Postfix) with ESMTP id 42A398FC08 for ; Sat, 13 Oct 2012 03:06:11 +0000 (UTC) Received: by mail-ie0-f182.google.com with SMTP id k10so7492838iea.13 for ; Fri, 12 Oct 2012 20:06:11 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=t3+/4xnnXA9LGsW/EODgXJACWUhHY2D/Fdie07shiVs=; b=ZZ2CC+JCCgvqnz7o4kT5pJSkAbD6xLJHbZ9eKogqpJt94yswFrvkHvFTapy05dbf5F 2jGL96pIQ35raYkDQhql0h4rjDZW+JDgVeq64sqz/FIrppjOo/V2ZByELGLbxz0bWZs3 qWqosW+fJZSkLSGXV2SImPGdwgnOXYKrwXlWvW2LeqdGKlakQUSkiZ7SRPqhuQstxsMC /pNC1XphWcczFRymrqz/lCrjbBdQm6dnt7QTdVZUPWAoVhD9SOB9zEA5Ylpc2KqEbgix faa3dlr8TrCrjJhJdPdTOUcK0O+KQJuwcWYSS52JRw1cdWp9o/y3aDYxdzie8bHNses8 asZA== Received: by 10.43.43.194 with SMTP id ud2mr4820610icb.13.1350097571589; Fri, 12 Oct 2012 20:06:11 -0700 (PDT) Received: from 63.imp.bsdimp.com (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPS id mi10sm424072igc.16.2012.10.12.20.06.08 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 12 Oct 2012 20:06:11 -0700 (PDT) Sender: Warner Losh Subject: Re: Latest code and scripts are working for me on BeagleBone... Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <20121013152610.5f5f72bd@fubar.geek.nz> Date: Fri, 12 Oct 2012 21:06:07 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <3ECCBCA3-D190-4AC0-8292-4B34BD43A45A@bsdimp.com> References: <201210120839.q9C8dKR6073428@grabthar.secnetix.de> <2C318C44-38AB-4D56-B102-B12CD7E90776@neville-neil.com> <90FB30E0-569E-4DBF-ACCB-36C723A4E937@neville-neil.com> <82A753B1-B6EE-4B6A-9B5E-7F09FC5E1266@bsdimp.com> <20121013152610.5f5f72bd@fubar.geek.nz> To: Andrew Turner X-Mailer: Apple Mail (2.1084) X-Gm-Message-State: ALoCoQlJYyVIrtUs6J4/vdQCTOwkXiNSzs3EGAeXYVxgl8ve5JYtV/LhXa5ziuXkcNb2IuXnlUv4 Cc: Tim Kientzle , George Neville-Neil , Oliver Fromme , freebsd-arm@freebsd.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2012 03:06:12 -0000 On Oct 12, 2012, at 8:26 PM, Andrew Turner wrote: > On Fri, 12 Oct 2012 19:27:15 -0600 > Warner Losh wrote: >=20 >>=20 >> On Oct 12, 2012, at 7:11 PM, George Neville-Neil wrote: >>>=20 >>> What's the rough outline of what's necessary to do that? I can >>> work on it. >>=20 >> (1) Finish unifying the initarm() > I'm working on this. I just need to update one more SoC before I can > merge them. Even with them merged we will still need to detect the SoC > we are running on. That shouldn't be a problem as long as we only = allow > FDT on ARMv6. This is ambiguous. Do you mean "All armv6 ports must support FDT" or "we = don't allow FDT on armv4?" I think the former is a-ok, but the latter = is a non-starter. >> (2) Unify the interrupt code >> (3) unify the shutdown/startup code >> (4) polish off any of the dangling loose ends that compiling all the >> armv6 together. (0) write a GENERICV6 config file > There are a number of functions that currently need to be implemented > for each SoC. They should be trivial to find, e.g. with the linker, = but > we will need to come up with a solution to detect which SoC we are > on and call the correct function. Or we need to have drivers attach function pointers based on what = hardware is present... > Another problem I can see is in the memory layout. We need to specify = a > fixed virtual address layout for the kernel. It would be nice to be > able to then load the kernel to any page aligned address and have it > just work. It shouldn't be too difficult when the virtual and physical > addresses don't overlap, e.g. we can figure out what address we have > been loaded to by looking at the pc register at a known location. The > problem will be when the virtual and physical addresses overlap but = are > not identical. In this case care will be needed when we turn the MMU = on. > This is because we create a map for the current physical address and > the new virtual address to point them at the same physical memory = then, > when the MMU is enabled, jump between them. armv6 is supposed to solve this by standardizing the memory layout... = There are some compile-time constants that need to become run-time = values, which may have a minor performance hit in a few places.... > Having a look at the SoCs we support the only one I can see that might > cause us problems is sa11x0. The sa11x0 is an ancient armv4 processor, I thoght, predecessor to = strongarm. Not really a consideration for this project. Warner=