Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 4418 → Rev 4438

/branches/dd/uspace/srv/pci/psycho.c
84,10 → 84,8
 
uint8_t pci_conf_read_8(pci_dev_t *dev, int reg)
{
uint8_t res;
futex_down(&pci_conf_futex);
uint8_t res;
psycho_conf_read(dev, reg, &res, sizeof(uint8_t));
futex_up(&pci_conf_futex);
return res;
}
 
94,9 → 92,7
uint16_t pci_conf_read_16(pci_dev_t *dev, int reg)
{
uint16_t res;
futex_down(&pci_conf_futex);
psycho_conf_read(dev, reg, (uint8_t *)(&res), sizeof(uint16_t));
futex_up(&pci_conf_futex);
return res;
}
 
103,9 → 99,7
uint32_t pci_conf_read_32(pci_dev_t *dev, int reg)
{
uint32_t res;
futex_down(&pci_conf_futex);
psycho_conf_read(dev, reg, (uint8_t *)(&res), sizeof(uint32_t));
futex_up(&pci_conf_futex);
psycho_conf_read(dev, reg, (uint8_t *)(&res), sizeof(uint32_t));
return res;
}
 
121,6 → 115,7
 
static void psycho_conf_read(pci_dev_t *d, int reg, uint8_t *buf, int len)
{
futex_down(&pci_conf_futex);
switch (len) {
case 1:
buf[0] = pio_read_8(psycho_conf_addr(d, reg));
131,11 → 126,13
case 4:
*((uint32_t *)buf) = invert_endianness_32(pio_read_32(psycho_conf_addr(d, reg)));
break;
}
}
futex_up(&pci_conf_futex);
}
 
static void psycho_conf_write(pci_dev_t *d, int reg, uint8_t *buf, int len)
{
futex_down(&pci_conf_futex);
switch (len) {
case 1:
pio_write_8(psycho_conf_addr(d, reg), buf[0]);
147,6 → 144,7
pio_write_32(psycho_conf_addr(d, reg), invert_endianness_32(*((uint32_t *)buf)));
break;
}
futex_up(&pci_conf_futex);
}
 
/* pci bus structure initialization */