From 994f861dfc0e188167ee26e7ab3b2e70591ffda5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 15 Aug 2010 22:32:58 +0000 Subject: [PATCH] Generic: Type fixes for byte swapping Cast further pointer arguments for B_HOST_TO_LENDIAN_INT32 to uint32. Resolves warnings treated as errors for Big Endian targets. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38127 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/generic/ata_adapter/ata_adapter.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/add-ons/kernel/generic/ata_adapter/ata_adapter.c b/src/add-ons/kernel/generic/ata_adapter/ata_adapter.c index 320a4219fe..fc7eb49f3c 100644 --- a/src/add-ons/kernel/generic/ata_adapter/ata_adapter.c +++ b/src/add-ons/kernel/generic/ata_adapter/ata_adapter.c @@ -249,7 +249,7 @@ ata_adapter_prepare_dma(ata_adapter_channel_info *channel, writeToDevice ? "write" : "read", sgListCount); for (i = sgListCount - 1, prd = channel->prdt; i >= 0; --i, ++prd, ++sgList) { - prd->address = B_HOST_TO_LENDIAN_INT32(pci->ram_address(device, + prd->address = B_HOST_TO_LENDIAN_INT32((uint32)pci->ram_address(device, (void*)(addr_t)sgList->address)); // 0 means 64K - this is done automatically be discarding upper 16 bits prd->count = B_HOST_TO_LENDIAN_INT16((uint16)sgList->size); @@ -262,7 +262,8 @@ ata_adapter_prepare_dma(ata_adapter_channel_info *channel, pci->write_io_32(device, channel->bus_master_base + ATA_BM_PRDT_ADDRESS, (pci->read_io_32(device, channel->bus_master_base + ATA_BM_PRDT_ADDRESS) & 3) - | (B_HOST_TO_LENDIAN_INT32(pci->ram_address(device, (void *)channel->prdt_phys)) & ~3)); + | (B_HOST_TO_LENDIAN_INT32((uint32)pci->ram_address(device, + (void *)channel->prdt_phys)) & ~3)); // reset interrupt and error signal status = pci->read_io_8(device, channel->bus_master_base