Base the max number of SG elements on MAXPHYS.
Sponsored by: Intel Discussed with: scottl, emax MFC after: 3 days
This commit is contained in:
parent
5c300060a8
commit
5d16b89793
sys/dev/isci/scil
@ -62,6 +62,8 @@
|
||||
* structure data, fill in sense data, etc.
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
#include <dev/isci/scil/sati_types.h>
|
||||
#include <dev/isci/scil/sati_translator_sequence.h>
|
||||
|
||||
@ -144,15 +146,6 @@
|
||||
#define ATA_MICROCODE_OFFSET_DOWNLOAD 0x03
|
||||
#define ATA_MICROCODE_DOWNLOAD_SAVE 0x07
|
||||
|
||||
#ifndef MIN
|
||||
#define MIN(x,y) ((x) < (y) ? (x) : (y))
|
||||
#endif
|
||||
|
||||
#ifndef MAX
|
||||
#define MAX(x,y) ((x) > (y) ? (x) : (y))
|
||||
#endif
|
||||
|
||||
|
||||
void sati_ata_non_data_command(
|
||||
void * ata_io,
|
||||
SATI_TRANSLATOR_SEQUENCE_T * sequence
|
||||
|
@ -54,6 +54,8 @@
|
||||
#ifndef _SCI_CONTROLLER_CONSTANTS_H_
|
||||
#define _SCI_CONTROLLER_CONSTANTS_H_
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
/**
|
||||
* @file
|
||||
*
|
||||
@ -148,8 +150,13 @@ extern "C" {
|
||||
/**
|
||||
* This constant defines the maximum number of Scatter-Gather Elements
|
||||
* to be used by any SCI component.
|
||||
*
|
||||
* Note: number of elements must be an even number, since descriptors
|
||||
* posted to hardware always contain pairs of elements (with second
|
||||
* element set to zeroes if not needed).
|
||||
*/
|
||||
#define SCI_MAX_SCATTER_GATHER_ELEMENTS 130
|
||||
#define __MAXPHYS_ELEMENTS ((MAXPHYS / PAGE_SIZE) + 1)
|
||||
#define SCI_MAX_SCATTER_GATHER_ELEMENTS ((__MAXPHYS_ELEMENTS + 1) & ~0x1)
|
||||
#endif
|
||||
|
||||
#ifndef SCI_MIN_SCATTER_GATHER_ELEMENTS
|
||||
|
@ -54,20 +54,14 @@
|
||||
#ifndef _SCI_UTIL_H_
|
||||
#define _SCI_UTIL_H_
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
#include <dev/isci/scil/sci_types.h>
|
||||
|
||||
#ifndef ARRAY_SIZE
|
||||
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#endif
|
||||
|
||||
#ifndef MIN
|
||||
#define MIN(x,y) ((x) < (y) ? (x) : (y))
|
||||
#endif
|
||||
|
||||
#ifndef MAX
|
||||
#define MAX(x,y) ((x) > (y) ? (x) : (y))
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Normal byte swap macro
|
||||
*/
|
||||
|
@ -65,6 +65,8 @@
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
#include <dev/isci/scil/scic_io_request.h>
|
||||
|
||||
#include <dev/isci/scil/sci_base_request.h>
|
||||
@ -331,7 +333,6 @@ extern SCIC_SDS_IO_REQUEST_STATE_HANDLER_T
|
||||
#define scic_sds_request_get_task_context(request) \
|
||||
((request)->task_context_buffer)
|
||||
|
||||
#define CACHE_LINE_SIZE (64)
|
||||
#define scic_sds_request_align_task_context_buffer(address) \
|
||||
((SCU_TASK_CONTEXT_T *)( \
|
||||
(((POINTER_UINT)(address)) + (CACHE_LINE_SIZE - 1)) \
|
||||
|
Loading…
x
Reference in New Issue
Block a user