64 bit machines

Nigel Horne njh at smsltd.demon.co.uk
Wed Mar 13 07:02:22 PST 2002


I am confused by these lines from ahc_init. The type of physaddr is uint32_t. What happens
on a 64 bit architecture. I hear that it works on a 64 bit machine, which is fine, I am not sure
how it does though!

-Nigel

        physaddr = ahc->scb_data->hscb_busaddr;
        ahc_outb(ahc, HSCB_ADDR, physaddr & 0xFF);
        ahc_outb(ahc, HSCB_ADDR + 1, (physaddr >> 8) & 0xFF);
        ahc_outb(ahc, HSCB_ADDR + 2, (physaddr >> 16) & 0xFF);
        ahc_outb(ahc, HSCB_ADDR + 3, (physaddr >> 24) & 0xFF);

        physaddr = ahc->shared_data_busaddr;
        ahc_outb(ahc, SHARED_DATA_ADDR, physaddr & 0xFF);
        ahc_outb(ahc, SHARED_DATA_ADDR + 1, (physaddr >> 8) & 0xFF);
        ahc_outb(ahc, SHARED_DATA_ADDR + 2, (physaddr >> 16) & 0xFF);
        ahc_outb(ahc, SHARED_DATA_ADDR + 3, (physaddr >> 24) & 0xFF);

-- 
Nigel Horne. Arranger, Composer, Conductor, Typesetter.
http://www.bandsman.co.uk/music.htm ICQ#20252325

To Unsubscribe: send mail to majordomo at FreeBSD.org
with "unsubscribe aic7xxx" in the body of the message




More information about the aic7xxx mailing list