1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD 3 * 4 * Copyright (C) 2010 Nathan Whitehorn 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19 * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 20 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 * 27 * $FreeBSD$ 28 */ 29 30 #ifndef _POWERPC_PS3_PS3BUS_H 31 #define _POWERPC_PS3_PS3BUS_H 32 33 enum { 34 PS3BUS_IVAR_BUS, 35 PS3BUS_IVAR_DEVICE, 36 PS3BUS_IVAR_BUSTYPE, 37 PS3BUS_IVAR_DEVTYPE, 38 PS3BUS_IVAR_BUSIDX, 39 PS3BUS_IVAR_DEVIDX, 40 }; 41 42 #define PS3BUS_ACCESSOR(A, B, T) \ 43 __BUS_ACCESSOR(ps3bus, A, PS3BUS, B, T) 44 45 PS3BUS_ACCESSOR(bus, BUS, int) 46 PS3BUS_ACCESSOR(device, DEVICE, int) 47 PS3BUS_ACCESSOR(bustype, BUSTYPE, uint64_t) 48 PS3BUS_ACCESSOR(devtype, DEVTYPE, uint64_t) 49 PS3BUS_ACCESSOR(busidx, BUSIDX, int) 50 PS3BUS_ACCESSOR(devidx, DEVIDX, int) 51 52 /* Bus types */ 53 enum { 54 PS3_BUSTYPE_SYSBUS = 4, 55 PS3_BUSTYPE_STORAGE = 5, 56 }; 57 58 /* Device types */ 59 enum { 60 /* System bus devices */ 61 PS3_DEVTYPE_GELIC = 3, 62 PS3_DEVTYPE_USB = 4, 63 PS3_DEVTYPE_GPIO = 6, 64 65 /* Storage bus devices */ 66 PS3_DEVTYPE_DISK = 0, 67 PS3_DEVTYPE_CDROM = 5, 68 PS3_DEVTYPE_FLASH = 14, 69 }; 70 71 #endif /* _POWERPC_PS3_PS3BUS_H */ 72