From owner-svn-src-all@FreeBSD.ORG Mon May 10 18:47:54 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D954E1065676; Mon, 10 May 2010 18:47:54 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id C714F8FC19; Mon, 10 May 2010 18:47:54 +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 o4AIls62036305; Mon, 10 May 2010 18:47:54 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4AIls4v036301; Mon, 10 May 2010 18:47:54 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201005101847.o4AIls4v036301@svn.freebsd.org> From: Marius Strobl Date: Mon, 10 May 2010 18:47:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r207864 - in stable/7/sys: sparc64/include sparc64/sparc64 sun4v/include 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: Mon, 10 May 2010 18:47:55 -0000 Author: marius Date: Mon May 10 18:47:54 2010 New Revision: 207864 URL: http://svn.freebsd.org/changeset/base/207864 Log: MFC: r207243 Add OF_getscsinitid(), a helper similar to OF_getetheraddr() but for obtaining the initiator ID to be used for SPI controllers from the Open Firmware device tree. Modified: stable/7/sys/sparc64/include/ofw_machdep.h stable/7/sys/sparc64/sparc64/ofw_machdep.c stable/7/sys/sun4v/include/ofw_machdep.h Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/sparc64/include/ofw_machdep.h ============================================================================== --- stable/7/sys/sparc64/include/ofw_machdep.h Mon May 10 18:47:52 2010 (r207863) +++ stable/7/sys/sparc64/include/ofw_machdep.h Mon May 10 18:47:54 2010 (r207864) @@ -32,6 +32,7 @@ int OF_decode_addr(phandle_t, int, int *, bus_addr_t *); void OF_getetheraddr(device_t, u_char *); +u_int OF_getscsinitid(device_t); void cpu_shutdown(void *); void openfirmware_exit(void *); Modified: stable/7/sys/sparc64/sparc64/ofw_machdep.c ============================================================================== --- stable/7/sys/sparc64/sparc64/ofw_machdep.c Mon May 10 18:47:52 2010 (r207863) +++ stable/7/sys/sparc64/sparc64/ofw_machdep.c Mon May 10 18:47:54 2010 (r207864) @@ -1,6 +1,6 @@ /*- * Copyright (c) 2001 by Thomas Moestl . - * Copyright (c) 2005 - 2009 by Marius Strobl . + * Copyright (c) 2005 - 2010 by Marius Strobl . * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -69,6 +69,19 @@ OF_getetheraddr(device_t dev, u_char *ad bcopy(&idp.id_ether, addr, ETHER_ADDR_LEN); } +u_int +OF_getscsinitid(device_t dev) +{ + phandle_t node; + uint32_t id; + + for (node = ofw_bus_get_node(dev); node != 0; node = OF_parent(node)) + if (OF_getprop(node, "scsi-initiator-id", &id, + sizeof(id)) > 0) + return (id); + return (7); +} + static __inline uint32_t phys_hi_mask_space(const char *bus, uint32_t phys_hi) { Modified: stable/7/sys/sun4v/include/ofw_machdep.h ============================================================================== --- stable/7/sys/sun4v/include/ofw_machdep.h Mon May 10 18:47:52 2010 (r207863) +++ stable/7/sys/sun4v/include/ofw_machdep.h Mon May 10 18:47:54 2010 (r207864) @@ -32,6 +32,7 @@ int OF_decode_addr(phandle_t, int, int *, bus_addr_t *); void OF_getetheraddr(device_t, u_char *); +u_int OF_getscsinitid(device_t); void cpu_shutdown(void *); void openfirmware_exit(void *);