Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // setup mtrr
- int fd_mtrr;
- struct mtrr_sentry sentry;
- sentry.base = 0x06b100000;
- sentry.size = 0x40000;
- sentry.type = 6; // "write-back"
- if ( ( fd_mtrr = open ("/proc/mtrr", O_WRONLY, 0) ) == -1 ){
- if (errno == ENOENT){
- fputs ("/proc/mtrr not found: not supported or you don't have a PPro?\n", stderr);
- exit (3);
- }
- fprintf (stderr, "Error opening /proc/mtrr\t%s\n", ERRSTRING);
- exit (4);
- }
- if (ioctl (fd_mtrr, MTRRIOC_ADD_ENTRY, &sentry) == -1){
- fprintf (stderr, "Error doing ioctl(2) on /dev/mtrr\t%s\n", ERRSTRING);
- exit (5);
- }
- fprintf (stderr, "MTRR created \n");
- // mmap structure addres with mtrr
- int mm, *map;
- mm = open("/dev/mem", O_RDWR);
- map = mmap(&env, sizeof(env), PROT_READ | PROT_WRITE, MAP_PRIVATE, mm, sentry.base);
- if(map == MAP_FAILED){
- printf("Mapping Failed\n");
- return 1;
- }
- fprintf (stderr, "mapping MTRR with env is done \n");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement