18aa6aadbSXiao-Yu Zhang /* 28aa6aadbSXiao-Yu Zhang * CDDL HEADER START 38aa6aadbSXiao-Yu Zhang * 48aa6aadbSXiao-Yu Zhang * The contents of this file are subject to the terms of the 58aa6aadbSXiao-Yu Zhang * Common Development and Distribution License (the "License"). 68aa6aadbSXiao-Yu Zhang * You may not use this file except in compliance with the License. 78aa6aadbSXiao-Yu Zhang * 88aa6aadbSXiao-Yu Zhang * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 98aa6aadbSXiao-Yu Zhang * or http://www.opensolaris.org/os/licensing. 108aa6aadbSXiao-Yu Zhang * See the License for the specific language governing permissions 118aa6aadbSXiao-Yu Zhang * and limitations under the License. 128aa6aadbSXiao-Yu Zhang * 138aa6aadbSXiao-Yu Zhang * When distributing Covered Code, include this CDDL HEADER in each 148aa6aadbSXiao-Yu Zhang * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 158aa6aadbSXiao-Yu Zhang * If applicable, add the following below this CDDL HEADER, with the 168aa6aadbSXiao-Yu Zhang * fields enclosed by brackets "[]" replaced with your own identifying 178aa6aadbSXiao-Yu Zhang * information: Portions Copyright [yyyy] [name of copyright owner] 188aa6aadbSXiao-Yu Zhang * 198aa6aadbSXiao-Yu Zhang * CDDL HEADER END 208aa6aadbSXiao-Yu Zhang */ 218aa6aadbSXiao-Yu Zhang 228aa6aadbSXiao-Yu Zhang /* 238aa6aadbSXiao-Yu Zhang * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 248aa6aadbSXiao-Yu Zhang * Use is subject to license terms. 258aa6aadbSXiao-Yu Zhang */ 268aa6aadbSXiao-Yu Zhang 278aa6aadbSXiao-Yu Zhang #ifndef _SATA_BLACKLIST_H 288aa6aadbSXiao-Yu Zhang #define _SATA_BLACKLIST_H 298aa6aadbSXiao-Yu Zhang 308aa6aadbSXiao-Yu Zhang #ifdef __cplusplus 318aa6aadbSXiao-Yu Zhang extern "C" { 328aa6aadbSXiao-Yu Zhang #endif 338aa6aadbSXiao-Yu Zhang 348aa6aadbSXiao-Yu Zhang /* 358aa6aadbSXiao-Yu Zhang * SATA port multiplier blacklist 368aa6aadbSXiao-Yu Zhang * 378aa6aadbSXiao-Yu Zhang * The number of the device ports is indicated by GSCR2[3:0]. These port 388aa6aadbSXiao-Yu Zhang * multipliers got faulty values in GSCR2 (w/ pseudo port) by vendor 398aa6aadbSXiao-Yu Zhang * configuration. 408aa6aadbSXiao-Yu Zhang * 418aa6aadbSXiao-Yu Zhang * Following is a list of some black-listed port multipliers with the actual 428aa6aadbSXiao-Yu Zhang * number of device ports. 438aa6aadbSXiao-Yu Zhang */ 448aa6aadbSXiao-Yu Zhang struct sata_pmult_bl { 458aa6aadbSXiao-Yu Zhang uint32_t bl_gscr0; 468aa6aadbSXiao-Yu Zhang uint32_t bl_gscr1; 478aa6aadbSXiao-Yu Zhang uint32_t bl_gscr2; 488aa6aadbSXiao-Yu Zhang uint32_t bl_flags; 498aa6aadbSXiao-Yu Zhang }; 508aa6aadbSXiao-Yu Zhang 518aa6aadbSXiao-Yu Zhang typedef struct sata_pmult_bl sata_pmult_bl_t; 528aa6aadbSXiao-Yu Zhang 538aa6aadbSXiao-Yu Zhang sata_pmult_bl_t sata_pmult_blacklist[] = { 548aa6aadbSXiao-Yu Zhang {0x37261095, 0x0, 0x6, 0x5}, /* Silicon Image 3726, 5 ports. */ 558aa6aadbSXiao-Yu Zhang {0x47261095, 0x0, 0x7, 0x5}, /* Silicon Image 4726, 5 ports. */ 568aa6aadbSXiao-Yu Zhang {0x47231095, 0x0, 0x4, 0x2}, /* Silicon Image 4723, 2 ports. */ 57*b38836b5SToomas Soome 0 588aa6aadbSXiao-Yu Zhang }; 598aa6aadbSXiao-Yu Zhang 608aa6aadbSXiao-Yu Zhang 618aa6aadbSXiao-Yu Zhang #ifdef __cplusplus 628aa6aadbSXiao-Yu Zhang } 638aa6aadbSXiao-Yu Zhang #endif 648aa6aadbSXiao-Yu Zhang 658aa6aadbSXiao-Yu Zhang #endif /* _SATA_BLACKLIST_H */ 66