Set B_DMA_HIGH_ADDRESS to 4 GB in the ATA/IDE modules.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37227 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -75,6 +75,7 @@ publish_channel(device_node *parent, uint16 command_block_base,
|
||||
// the ata bus manager handles that very efficiently, but why
|
||||
// not use the block device manager for doing that?
|
||||
{ B_DMA_ALIGNMENT, B_UINT32_TYPE, { ui32: 1 }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to identify device
|
||||
{ ATA_ISA_COMMAND_BLOCK_BASE, B_UINT16_TYPE, { ui16: command_block_base }},
|
||||
|
||||
@@ -192,6 +192,7 @@ publish_controller(device_node_handle parent, uint16 bus_master_base, uint8 intn
|
||||
{ B_DMA_MAX_SEGMENT_BLOCKS, B_UINT32_TYPE, { ui32: 0x10000 }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: ATA_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ ATA_ADAPTER_BUS_MASTER_BASE, B_UINT16_TYPE, { ui16: bus_master_base }},
|
||||
|
||||
@@ -222,6 +222,7 @@ controller_probe(device_node *parent)
|
||||
{ B_DMA_MAX_SEGMENT_BLOCKS, B_UINT32_TYPE, { ui32: 0x10000 }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: ATA_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ "silicon_image_3112/asic_index", B_UINT32_TYPE,
|
||||
|
||||
@@ -78,6 +78,7 @@ publish_channel(device_node *parent, uint16 command_block_base,
|
||||
// the ide bus manager handles that very efficiently, but why
|
||||
// not use the block device manager for doing that?
|
||||
{ B_DMA_ALIGNMENT, B_UINT32_TYPE, { ui32: 1 }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to identify device
|
||||
{ IDE_ISA_COMMAND_BLOCK_BASE, B_UINT16_TYPE, { ui16: command_block_base }},
|
||||
|
||||
@@ -205,6 +205,7 @@ publish_controller(device_node_handle parent, uint16 bus_master_base, uint8 intn
|
||||
{ B_DMA_MAX_SEGMENT_BLOCKS, B_UINT32_TYPE, { ui32: 0x10000 }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: IDE_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ IDE_ADAPTER_BUS_MASTER_BASE, B_UINT16_TYPE, { ui16: bus_master_base }},
|
||||
|
||||
@@ -231,6 +231,7 @@ controller_probe(device_node *parent)
|
||||
{ B_DMA_MAX_SEGMENT_BLOCKS, B_UINT32_TYPE, { ui32: 0x10000 }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: IDE_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ "silicon_image_3112/asic_index", B_UINT32_TYPE, { ui32: asicIndex }},
|
||||
|
||||
@@ -722,10 +722,7 @@ ata_adapter_publish_controller(device_node *parent, uint16 bus_master_base,
|
||||
{ ui32: max_sg_block_size/*0x10000*/ }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: ATA_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE,
|
||||
{ ui64: 0x100000000LL }},
|
||||
// TODO: Add a parameter and set accordingly! For the time being
|
||||
// play it safe and only allow 32 bit addresses.
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ ATA_ADAPTER_BUS_MASTER_BASE, B_UINT16_TYPE, { ui16: bus_master_base }},
|
||||
|
||||
@@ -675,6 +675,7 @@ ide_adapter_publish_controller(device_node *parent, uint16 bus_master_base,
|
||||
{ ui32: max_sg_block_size/*0x10000*/ }},
|
||||
{ B_DMA_MAX_SEGMENT_COUNT, B_UINT32_TYPE,
|
||||
{ ui32: IDE_ADAPTER_MAX_SG_COUNT }},
|
||||
{ B_DMA_HIGH_ADDRESS, B_UINT64_TYPE, { ui64: 0x100000000LL }},
|
||||
|
||||
// private data to find controller
|
||||
{ IDE_ADAPTER_BUS_MASTER_BASE, B_UINT16_TYPE, { ui16: bus_master_base }},
|
||||
|
||||
Reference in New Issue
Block a user