Nije mi jasno nesto u vezi funkcije open

Nije mi jasno nesto u vezi funkcije open

offline
  • Pridružio: 15 Jul 2009
  • Poruke: 150

Pozdrav, pokusavan da razumem na koji nacin da pristipim mmc chipu direktno preko io, dali je to moguce? Standardna funkcija za pristup je nesto kao:

fd = open(device, O_RDWR);
ret = ioctl(fd, MMC_IOC_CMD, &idata);

Posto nisam root, ne mogu da pristupim /dev/block/mmcblk0 jer je ovner:group root root, dali je moguce iskoristiti mmap i kako? Kako da zamenim funkciju "open" sa "mmap" u smislu da pristupim memoriji direkno umesto sto cu da otvaram mmcblk0, dali je to moguce?


Od prilike nesto ovako:

original funkcija:
Citat:int send_status(int fd, __u32 *response)
{
int ret = 0;
struct mmc_ioc_cmd idata;

memset(&idata, 0, sizeof(idata));
idata.opcode = MMC_SEND_STATUS;
idata.arg = (1 << 16);
idata.flags = MMC_RSP_R1 | MMC_CMD_AC;

ret = ioctl(fd, MMC_IOC_CMD, &idata);
if (ret)
perror("ioctl");

*response = idata.response[0];

return ret;
}


Ako vec ne moze nista da se uradi u zamenu za open, dali je moguce zameniti funkciju ioctl tako da funkcija send_status ne otvara FD file descriptor nego da pise direktno na adresu mmc controlera, ima li ko ideju?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1072 korisnika na forumu :: 38 registrovanih, 5 sakrivenih i 1029 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, 9k38, A.R.Chafee.Jr., antonije64, Apok, Asparagus, Brana01, Bubili, darkangel, dijica, dragoljub11987, havoc995, ILGromovnik, jaeger, Karla, Krvava Devetka, kybonacci, Leonov, ljuba, marsovac 2, mercedesamg, mikrimaus, milimoj, milos.cbr, Mlav, Nemanja.M, opt1, ruma, sap, Sir Budimir, Srle993, Trpe Grozni, vathra, Vlada78, VP6919, W123, zixmix, zxstole