Subject: More help : [Question] About SA1100 Memory map

From: "백병기" <[email-masked]>
Date: Wed, 16 Aug 2000 23:27:31 KST

Yes I modified mm-sa1100.c like this :

        { 0xf8000000, 0x80000000, 0x02000000, DOMAIN_IO, 0, 1 }, \
        { 0xfa000000, 0x90000000, 0x02000000, DOMAIN_IO, 0, 1 }, \
        { 0xfc000000, 0xa0000000, 0x02000000, DOMAIN_IO, 0, 1 }, \
        { 0xfe000000, 0xb0000000, 0x02000000, DOMAIN_IO, 0, 1 }, \
    /* under line is attached by me for ISA area(0x18000000) */
	{ 0xd1800000, 0x18000000, 0x00800000, DOMAIN_IO, 0, 1 },

        { 0xe0000000, 0x20000000, 0x04000000, DOMAIN_IO, 0, 1 },  /* PCMCIA0 IO */ \
	.............

and then I modified the base address of inb/outb related macro to
0xd1800000 in hardware.h and io.h.

The kernel didn't give me Oops or panic.
But I couldn't access the right ISA device(for me RTL8019 lan card).

Is it need any more modification of kernel ?

Thank you 

ByungGi Baek.

---------> 받은 메일 내용 <----------
>From : Russell King - ARM Linux Admin <[email-masked]>
>>백병기 writes:
>>> After linux kernel loaded and during run, I can't find any  memory map
>>> about static memory area(0x0 - 0x20000000) at hardware.h and mm-init.h
>>> and related files.
>>
>>That is correct - this region is "user space".
>>
>>> When I accessed 0x18000000 using inb(), the kernel gives me an Oops.
>>> And when I accessed 0x18000000 using memory access, the kernel panic too.
>>
>>Also correct.
>>
>>> I think that because the kernel doesn't have any memory map and any
>>> virt_to_phys/phys_to_virt features about static memory area.
>>
>>virt_to_phys and friends are only for use with the kernel direct mapped
>>memory region (0xc0000000 to 0xd0000000).
>>
>>> How can I access my ISA region?  Simple insertion of new map of ISA
>>> region is enough ?
>>
>>You need to add a mapping into the map_desc for your system in
>>arch/arm/mm/mm-sa1100.c.  Note that the virtual address must NOT be
>>in the 0x00000000 to 0xd0000000 region, and must be inserted in virtual
>>address order, and must not overlap an existing region.
>>
>>Oh, and please post to the correct forum - it helps to get answers.
>>(this is a question about kernel stuff, therefore
>>[email-masked] is the correct mailing list
>>to post to).
>>   _____
>>  |_____| ------------------------------------------------- ---+---+-
>>  |   |        Russell King       [email-masked]      --- ---
>>  | | | |            http://www.arm.linux.org.uk/            /  /  |
>>  | +-+-+                                                     --- -+-
>>  /   |               THE developer of ARM Linux              |+| /|\
>> /  | | |                                                     ---  |
>>    +-+-+ -------------------------------------------------  /\\\  |
>>

==================================================
ByungGi Baek.
[email-masked] 

==================================================
우리 인터넷, Daum
평생 쓰는 무료 E-mail 주소 한메일넷
지구촌 한글 검색서비스 Daum FIREBALL
http://www.daum.net

unsubscribe: body of `unsubscribe linux-arm-kernel' to [email-masked]

---

From: Nicolas Pitre <[email-masked]>
Date: Wed, 16 Aug 2000 11:14:48 -0400 (EDT)

>         { 0xe0000000, 0x20000000, 0x04000000, DOMAIN_IO, 0, 1 },  /* PCMCIA0 IO */ \

Are you using 2.4.x?  If so please don't do that.  Instead use 0xd1800000
as your IO base adress with inb/outb.

If you're using 2.2.x, may I strongly suggest you use 2.4.x instead since
the SA1100 support is way better and things like specific architecture
mapping like above are much cleanly done.

Nicolas