[ARM11] Question for the ARM 11 GPIO MAPPING

Jason.han han_zf at neusoft.com
Tue Feb 26 13:10:15 CET 2013


Dear Adam,

                 How are you doing now ?
                 I am fresh member for L4re  .
                 Now I  have  GPIO Mapping  problems happened when run 
the L4re in Arm 11 (6410 ).

                .devs ==> Res.mmio(0x7f008100, 0x7f00813f);
                .lcd.c ==>l4io_request_iomem(0x7f008100, 0x03f, 
L4IO_MEM_NONCACHED, &lcd_gpio_virt_base);

                 when 
"l4_mem_write(lcd_gpio_virt_base+0x00,L4_MEM_WIDTH_4BYTE,0xaaaaaaaa);
                 download in real-hw board : the core will died as it :

Ned: loading file: 'rom/arm-rv-lcd.cfg'

        hello   | Hello World!
        IO      | Dev_factory: register factory for N2Hw6DeviceE
        IO      | GTF: register factory for 7Pci_dev
        IO      | GTF: register factory for N2Hw12Msi_resourceE
        IO      | Dev_factory: register factory for N2Hw11Gpio_deviceE
        IO      | Io service
        IO      | Ready. Waiting for request.
        fbdrv   | Using LCD driver: S3C6410
        fbdrv   | lcd_control_virt_base is 0x3000
        fbdrv   | lcd_gpio_virt_base is 0x4000
        fbdrv   | Video memory is at virtual 0x5000 (size: 0x3fc00 Bytes)
        fbdrv   | Physical video memory is at 0x50394000   ==>core died

                 after delete it and only use l4_mem_read , value always is

                  IO       | Ready. Waiting for request.

        fbdrv   | Using LCD driver: S3C6410
        fbdrv   | lcd_control_virt_base is 0x3000
        fbdrv   | lcd_gpio_virt_base is 0x4000
        fbdrv   | Video memory is at virtual 0x5000 (size: 0x3fc00 Bytes)
        fbdrv   | Physical video memory is at 0x50395000
        fbdrv   | 0 value is 0x220022   ==> core run is ok.

        In the range of the GPIO  ,whatever I defined , the
        lcd_gpio_virt_base + offset (value 0) is always 0x220022 ,can't
        be written  .
        the lcd_gpio_virt_base + offset (value 0x04) is always 0x23 ,can
        be written ,but value never be changed .
         From Offset (value 0x08) is normal . why only GPIO like this ,I
        write some time and control -register always OK.

        Do you know Why , Can you give me some advices ? Thank you .

          I also try to .devs ==> Res.mmio(0x7f008000, 0x7f00813f);
                             .lcd.c ==>l4io_request_iomem(0x7f008000,
        0x03f, L4IO_MEM_NONCACHED, &lcd_gpio_virt_base);
                              when
        "l4_mem_write(lcd_gpio_virt_base+0x100,L4_MEM_WIDTH_4BYTE,0xaaaaaaaa);
        The offset 0x00 ,and 0x04 same problem ,but  now I can write
        0xaaaaaaaa for this IO port,  even though working not well .


          please help to check the problem .
          Do you have some good example for this .

ps:
 > .devs file :

        local Res = Io.Res
        local Hw = Io.Hw

        Io.hw_add_devices
        {
           LCD = Hw.Device
           {
               hid = "LCD s3c6410";
               Res.mmio(0x77100000, 0x77100fff);
           },
           GPIO = Hw.Device
           {
               hid = "LCDGPIO";
               Res.mmio(0x7f008100, 0x7f00813f);
           }
        }

  > .cfg file : is not changed ,same as arm-rv-lcd.cfg
  > .io file :

          gui => new System_bus()
        {

        }
        fbdrv => new System_bus()
        {
            LCD => wrap(hw-root.LCD);
            GPIO => wrap(hw-root.GPIO);
        }

  >module.list
        entry arm-lcd-example

    bootstrap bootstrap -serial
    kernel fiasco -serial_esc
    roottask moe rom/arm-rv-lcd.cfg
    module arm-rv-lcd.cfg
    module arm-rv-lcd.io
    module arm-rv-eb.devs
    module l4re
    module io
    module ned
    module fb-drv
    module mag
    module ex_fb_spectrum_cc
    module hello


    

---------------------------------------------------------------------------------------------------
Confidentiality Notice: The information contained in this e-mail and any accompanying attachment(s) 
is intended only for the use of the intended recipient and may be confidential and/or privileged of 
Neusoft Corporation, its subsidiaries and/or its affiliates. If any reader of this communication is 
not the intended recipient, unauthorized use, forwarding, printing,  storing, disclosure or copying 
is strictly prohibited, and may be unlawful.If you have received this communication in error,please 
immediately notify the sender by return e-mail, and delete the original message and all copies from 
your system. Thank you. 
---------------------------------------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20130226/827adede/attachment.html>


More information about the l4-hackers mailing list