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.
---------------------------------------------------------------------------------------------------