[okl4-developer] Some question about "machine.py" setup files
Geoffrey Lee
glee at ok-labs.com
Mon May 26 23:35:30 EST 2008
On Mon, May 26, 2008 at 09:26:25PM +0800, Qmo (Yi-Sheng) wrote:
> Hi Geoffrey,
>
> Thanks for your reply, can I ask another question.
> How did the memory_timer = [(0x51000000, 0x51001000)] ( memory_serial etc...
> )set up for the platform?
This information gets put into a configuration data structure and gets setup
at system bootstrap time.
> How to generate the address mapping between the platform and OKL4?
> Thank you very much.
What gets passed down to the driver is a virtual address range that
is backed by the physical address range where the memory mapped
device registers are located. A virtual region is allocated
from the available virtual address range and the virt to phys
mapping is inserted into the page table.
>
> Best Regards,
> Yi-Sheng
-gl
>
>
> On Mon, May 26, 2008 at 9:00 PM, Geoffrey Lee <glee at ok-labs.com> wrote:
>
> > On Mon, May 26, 2008 at 08:02:14PM +0800, Qmo (Yi-Sheng) wrote:
> > > Dear all,
> > >
> > > I want to figure out the building system about OKL4,
> > > now I have a question about the file "machine.py".
> > >
> > > For example, int the "platform\s3c2410\tools\machine.py"
> > > I got some information about class s3c2410 as follow,
> > > but I have no idea about the address of [memory_timer, memory_serial,
> > > memory_lcd, memory_rtc ].
> > > How to map them into OKL4?
> > > And what does "v2_drivers" do in machine.py?
> >
> > Hi Yi-Sheng
> >
> > The v2_drivers provide the list of OKL4 native drivers to build
> > for the platform.
> >
> > This is in the form of ( a, b, c, d ), where a is the actual
> > driver for the hardware, b is the glue and infrastructure code
> > common across a class of drivers (e.g. serial, timer, etc), c
> > is the address in physical space where the registers for the
> > hardware device are located, and d specifies the interrupt
> > numbers for the device.
> >
> > -gl
> >
> >
> > >
> > > [platform\s3c2410\tools\machine.py]
> > > class s3c2410(arm920t):
> > > platform = "s3c2410"
> > > platform_dir = "s3c2410"
> > > memory = arm920t.memory.copy()
> > > timer_driver = "s3c2410_timer"
> > > rtc_driver = "s3c2410_rtc"
> > > serial_driver = "s3c2410_uart"
> > > lcd_driver = "s3c2410_lcd"
> > > touch_driver = "s3c2410_touch"
> > > spi_driver = "s3c2410_spi"
> > > drivers = [timer_driver, serial_driver, lcd_driver]
> > > memory_timer = [(0x51000000, 0x51001000)]
> > > interrupt_timer = [11, 12]
> > > memory_serial = [(0x50000000, 0x50001000)]
> > > interrupt_serial = [32, 33]
> > > memory_lcd = [(0x4d000000, 0x4d001000)]
> > > interrupt_lcd = [16]
> > > memory_rtc = [(0x57000000, 0x57001000)]
> > > interrupt_rtc = [30]
> > > v2_drivers = [("s3c2410_timer", "vtimer", memory_timer,
> > > interrupt_timer),
> > > ("s3c2410_uart", "vserial", memory_serial,
> > > interrupt_serial),
> > > ("s3c2410_lcd", "vlcd", memory_lcd, interrupt_lcd),
> > > ("s3c2410_rtc", "vrtc", memory_rtc, interrupt_rtc)
> > > # ("s3c2410_spi", "vbus"),
> > > # ("s3c2410_touch", "vtouch"),
> > > ]
> > >
> > > Can anyone give me some ideas? Thank you very much.
> > >
> > > Best Regards,
> > > Qmo
> >
> > > _______________________________________________
> > > Developer mailing list
> > > Developer at okl4.org
> > > https://lists.okl4.org/mailman/listinfo/developer
> >
> >
> > --
> >
> >
--
More information about the Developer
mailing list