From owner-svn-src-all@FreeBSD.ORG Sun Jan 24 18:05:39 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 482B81065676; Sun, 24 Jan 2010 18:05:39 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 375BC8FC16; Sun, 24 Jan 2010 18:05:39 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o0OI5d65002906; Sun, 24 Jan 2010 18:05:39 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o0OI5cDb002905; Sun, 24 Jan 2010 18:05:38 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201001241805.o0OI5cDb002905@svn.freebsd.org> From: Warner Losh Date: Sun, 24 Jan 2010 18:05:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r202939 - head/sys/mips/cavium X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Jan 2010 18:05:39 -0000 Author: imp Date: Sun Jan 24 18:05:38 2010 New Revision: 202939 URL: http://svn.freebsd.org/changeset/base/202939 Log: o Write the soft reset bit in the cavium core to reset. [1] o panic if the board boot descriptor is too old... Obtained from: [1] looking at the cavium sdk's executive code Modified: head/sys/mips/cavium/octeon_machdep.c head/sys/mips/cavium/octeon_pcmap_regs.h Modified: head/sys/mips/cavium/octeon_machdep.c ============================================================================== --- head/sys/mips/cavium/octeon_machdep.c Sun Jan 24 17:00:21 2010 (r202938) +++ head/sys/mips/cavium/octeon_machdep.c Sun Jan 24 18:05:38 2010 (r202939) @@ -109,7 +109,7 @@ platform_cpu_init() void platform_reset(void) { - mips_generic_reset(); + oct_write64(OCTEON_CIU_SOFT_RST, 1); } @@ -961,7 +961,9 @@ octeon_boot_params_init(register_t ptr) if (ptr != 0 && ptr < MAX_APP_DESC_ADDR) { app_desc_ptr = (octeon_boot_descriptor_t *)(intptr_t)ptr; octeon_bd_ver = app_desc_ptr->desc_version; - if (app_desc_ptr->desc_version == 6) + if (app_desc_ptr->desc_version < 6) + panic("Your boot code is too old to be supported.\n"); + if (app_desc_ptr->desc_version >= 6) bad_desc = octeon_process_app_desc_ver_6(); } if (bad_desc) Modified: head/sys/mips/cavium/octeon_pcmap_regs.h ============================================================================== --- head/sys/mips/cavium/octeon_pcmap_regs.h Sun Jan 24 17:00:21 2010 (r202938) +++ head/sys/mips/cavium/octeon_pcmap_regs.h Sun Jan 24 18:05:38 2010 (r202939) @@ -597,11 +597,9 @@ static inline mipsx_addr_size octeon_ptr #define OCTEON_CIU_PP_RST OCTEON_ADD_IO_SEG(0x0001070000000700ull) +#define OCTEON_CIU_SOFT_RST OCTEON_ADD_IO_SEG(0x0001070000000740ull) #define OCTEON_OCTEON_DID_TAG 12ULL - - - /* * octeon_addr_t */