Deleted Added
full compact
arcmsr.c (227843) arcmsr.c (227912)
1/*
2*****************************************************************************************
3** O.S : FreeBSD
4** FILE NAME : arcmsr.c
5** BY : Erich Chen, Ching Huang
6** Description: SCSI RAID Device Driver for
7** ARECA (ARC11XX/ARC12XX/ARC13XX/ARC16XX/ARC188x) SATA/SAS RAID HOST Adapter
8** ARCMSR RAID Host adapter

--- 59 unchanged lines hidden (view full) ---

68** 1.20.00.21 02/08/2011 Ching Huang Implement I/O request timeout
69** 02/14/2011 Ching Huang Modified pktRequestCount
70** 1.20.00.21 03/03/2011 Ching Huang if a command timeout, then wait its ccb back before free it
71** 1.20.00.22 07/04/2011 Ching Huang Fixed multiple MTX panic
72******************************************************************************************
73*/
74
75#include <sys/cdefs.h>
1/*
2*****************************************************************************************
3** O.S : FreeBSD
4** FILE NAME : arcmsr.c
5** BY : Erich Chen, Ching Huang
6** Description: SCSI RAID Device Driver for
7** ARECA (ARC11XX/ARC12XX/ARC13XX/ARC16XX/ARC188x) SATA/SAS RAID HOST Adapter
8** ARCMSR RAID Host adapter

--- 59 unchanged lines hidden (view full) ---

68** 1.20.00.21 02/08/2011 Ching Huang Implement I/O request timeout
69** 02/14/2011 Ching Huang Modified pktRequestCount
70** 1.20.00.21 03/03/2011 Ching Huang if a command timeout, then wait its ccb back before free it
71** 1.20.00.22 07/04/2011 Ching Huang Fixed multiple MTX panic
72******************************************************************************************
73*/
74
75#include <sys/cdefs.h>
76__FBSDID("$FreeBSD: head/sys/dev/arcmsr/arcmsr.c 227843 2011-11-22 21:28:20Z marius $");
76__FBSDID("$FreeBSD: head/sys/dev/arcmsr/arcmsr.c 227912 2011-11-23 21:43:51Z marius $");
77
78#if 0
79#define ARCMSR_DEBUG1 1
80#endif
81#include <sys/param.h>
82#include <sys/systm.h>
83#include <sys/malloc.h>
84#include <sys/kernel.h>

--- 2624 unchanged lines hidden (view full) ---

2709 xpt_done(pccb);
2710 break;
2711 }
2712 case XPT_SET_TRAN_SETTINGS: {
2713 pccb->ccb_h.status |= CAM_FUNC_NOTAVAIL;
2714 xpt_done(pccb);
2715 break;
2716 }
77
78#if 0
79#define ARCMSR_DEBUG1 1
80#endif
81#include <sys/param.h>
82#include <sys/systm.h>
83#include <sys/malloc.h>
84#include <sys/kernel.h>

--- 2624 unchanged lines hidden (view full) ---

2709 xpt_done(pccb);
2710 break;
2711 }
2712 case XPT_SET_TRAN_SETTINGS: {
2713 pccb->ccb_h.status |= CAM_FUNC_NOTAVAIL;
2714 xpt_done(pccb);
2715 break;
2716 }
2717 case XPT_CALC_GEOMETRY: {
2718 struct ccb_calc_geometry *ccg;
2719 u_int32_t size_mb;
2720 u_int32_t secs_per_cylinder;
2721
2717 case XPT_CALC_GEOMETRY:
2722 if(pccb->ccb_h.target_id == 16) {
2723 pccb->ccb_h.status |= CAM_FUNC_NOTAVAIL;
2724 xpt_done(pccb);
2725 break;
2726 }
2718 if(pccb->ccb_h.target_id == 16) {
2719 pccb->ccb_h.status |= CAM_FUNC_NOTAVAIL;
2720 xpt_done(pccb);
2721 break;
2722 }
2723#if __FreeBSD_version >= 500000
2724 cam_calc_geometry(&pccb->ccg, 1);
2725#else
2726 {
2727 struct ccb_calc_geometry *ccg;
2728 u_int32_t size_mb;
2729 u_int32_t secs_per_cylinder;
2730
2727 ccg= &pccb->ccg;
2728 if (ccg->block_size == 0) {
2729 pccb->ccb_h.status = CAM_REQ_INVALID;
2730 xpt_done(pccb);
2731 break;
2732 }
2733 if(((1024L * 1024L)/ccg->block_size) < 0) {
2734 pccb->ccb_h.status = CAM_REQ_INVALID;

--- 6 unchanged lines hidden (view full) ---

2741 ccg->secs_per_track=63;
2742 } else {
2743 ccg->heads=64;
2744 ccg->secs_per_track=32;
2745 }
2746 secs_per_cylinder=ccg->heads * ccg->secs_per_track;
2747 ccg->cylinders=ccg->volume_size / secs_per_cylinder;
2748 pccb->ccb_h.status |= CAM_REQ_CMP;
2731 ccg= &pccb->ccg;
2732 if (ccg->block_size == 0) {
2733 pccb->ccb_h.status = CAM_REQ_INVALID;
2734 xpt_done(pccb);
2735 break;
2736 }
2737 if(((1024L * 1024L)/ccg->block_size) < 0) {
2738 pccb->ccb_h.status = CAM_REQ_INVALID;

--- 6 unchanged lines hidden (view full) ---

2745 ccg->secs_per_track=63;
2746 } else {
2747 ccg->heads=64;
2748 ccg->secs_per_track=32;
2749 }
2750 secs_per_cylinder=ccg->heads * ccg->secs_per_track;
2751 ccg->cylinders=ccg->volume_size / secs_per_cylinder;
2752 pccb->ccb_h.status |= CAM_REQ_CMP;
2753 }
2754#endif
2749 xpt_done(pccb);
2750 break;
2755 xpt_done(pccb);
2756 break;
2751 }
2752 default:
2753 pccb->ccb_h.status |= CAM_REQ_INVALID;
2754 xpt_done(pccb);
2755 break;
2756 }
2757 return;
2758}
2759/*

--- 1184 unchanged lines hidden ---
2757 default:
2758 pccb->ccb_h.status |= CAM_REQ_INVALID;
2759 xpt_done(pccb);
2760 break;
2761 }
2762 return;
2763}
2764/*

--- 1184 unchanged lines hidden ---