| static void outl(unsigned int value, unsigned short port) |
| { |
| __builtin_outl(value, port); |
| } |
| |
| static unsigned char inl(unsigned short port) |
| { |
| return __builtin_inl(port); |
| } |
| |
| |
| static void setup_coherent_ht_domain(void) |
| { |
| static const unsigned int register_values[] = { |
| ( (((0) & 0xFF) << 16) | (((0x18) & 0x1f) << 11) | (((0) & 0x07) << 8) | ((0x40) & 0xFF)), 0xfff0f0f0, 0x00010101, |
| |
| }; |
| unsigned long reg; |
| reg = inl(0xFC); |
| reg &= register_values[1]; |
| reg |= register_values[2] & ~register_values[1]; |
| outl(register_values[0], 0xF8); |
| outl(reg, 0xFC); |
| } |