/drivers/audio/a5536/geode.c |
---|
48,7 → 48,6 |
int CurrentPowerState; |
addr_t buffer; |
addr_t buffer_dma; |
addr_t prd_dma; |
addr_t irq_line; |
246,7 → 245,6 |
addr_t buffer = geode.buffer; |
addr_t dma = GetPgAddr(geode.buffer); |
geode.buffer_dma = dma; |
geode.prd_dma = (((addr_t)prd_tab) & 4095) + GetPgAddr((void*)prd_tab); |
480,8 → 478,6 |
return 0; |
} |
printf("AMD Geode CS5536 audio driver\n"); |
if( FindPciDevice() == FALSE) |
{ |
dbgprintf("Device not found\n"); |
549,10 → 545,7 |
case DEV_GET_POS: |
if(io->out_size==4) |
{ |
u32_t dma; |
dma = ctrl_read_32(0x60); |
dma-= geode.buffer_dma; |
*outp = (dma & 16383)>>2; |
*outp = ctrl_read_32(0x60)>>2; |
return 0; |
} |
break; |
/drivers/audio/a5536/makefile |
---|
2,7 → 2,7 |
CC = gcc |
FASM = e:/fasm/fasm.exe |
CFLAGS = -c -O2 -fomit-frame-pointer -fno-builtin-printf |
LDFLAGS = -nostdlib -shared -s -Map geode.map --image-base 0\ |
LDFLAGS = -nostdlib -shared -s -Map usb.map --image-base 0\ |
--file-alignment 512 --section-alignment 4096 |
DEFINES = -D__KERNEL__ -DCONFIG_X86_32 |
/drivers/audio/a5536/geode.lk |
---|
0,0 → 1,23 |
IMP |
_KernelAlloc core.KernelAlloc, |
_KernelFree core.KernelFree, |
_CommitPages core.CommitPages, |
_MapIoMem core.MapIoMem, |
_GetPgAddr core.GetPgAddr, |
_CreateRingBuffer core.CreateRingBuffer, |
_PciApi core.PciApi, |
_PciRead8 core.PciRead8, |
_PciRead16 core.PciRead16, |
_PciRead32 core.PciRead32, |
_PciWrite8 core.PciWrite8, |
_PciWrite16 core.PciWrite16, |
_PciWrite32 core.PciWrite32, |
_RegService core.RegService, |
_AttachIntHandler core.AttachIntHandler, |
_SysMsgBoardStr core.SysMsgBoardStr, |
_Delay core.Delay |
FIL geode.obj, |
vsprintf.obj, |
icompute.obj |