Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/bhnd/bhndb/bhndb.c
Show First 20 Lines • Show All 1,722 Lines • ▼ Show 20 Lines | if (dwa == NULL) { | ||||
(unsigned long long) addr+size-1); | (unsigned long long) addr+size-1); | ||||
} | } | ||||
return (dwa); | return (dwa); | ||||
} | } | ||||
/* Adjust the window if the I/O request won't fit in the current | /* Adjust the window if the I/O request won't fit in the current | ||||
* target range. */ | * target range. */ | ||||
if (addr < dwa->target || | if (addr < dwa->target || | ||||
addr > dwa->target + dwa->win->win_size || | |||||
(dwa->target + dwa->win->win_size) - addr < size) | (dwa->target + dwa->win->win_size) - addr < size) | ||||
{ | { | ||||
error = bhndb_dw_set_addr(sc->dev, sc->bus_res, dwa, addr, | error = bhndb_dw_set_addr(sc->dev, sc->bus_res, dwa, addr, | ||||
size); | size); | ||||
if (error) { | if (error) { | ||||
panic("failed to set register window target mapping " | panic("failed to set register window target mapping " | ||||
"0x%llx-0x%llx\n", | "0x%llx-0x%llx\n", | ||||
(unsigned long long) addr, | (unsigned long long) addr, | ||||
(unsigned long long) addr+size-1); | (unsigned long long) addr+size-1); | ||||
▲ Show 20 Lines • Show All 290 Lines • Show Last 20 Lines |