[openfirmware] [commit] r3183 - in cpu/arm: mmp2 mmp3/thunderstone olpc olpc/1.75

repository service svn at openfirmware.info
Thu Aug 16 22:15:41 CEST 2012


Author: wmb
Date: Thu Aug 16 22:15:40 2012
New Revision: 3183
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/3183

Log:
OLPC ARM - Change all uses of I2C addresses for TWSI-connected devices to use the unshifted address form.

Modified:
   cpu/arm/mmp2/boardtwsi.fth
   cpu/arm/mmp2/dsi.fth
   cpu/arm/mmp2/twsi.fth
   cpu/arm/mmp3/thunderstone/boardtwsi.fth
   cpu/arm/olpc/1.75/compass.fth
   cpu/arm/olpc/accelerometer.fth
   cpu/arm/olpc/nn-touchscreen.fth
   cpu/arm/olpc/rtc.fth
   cpu/arm/olpc/sound.fth

Modified: cpu/arm/mmp2/boardtwsi.fth
==============================================================================
--- cpu/arm/mmp2/boardtwsi.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/mmp2/boardtwsi.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -8,7 +8,7 @@
 \ 5 TC358762 MIPI bridge 16, TM-1210 or TM1414 touchscreen 40
 \ 6 HDMI DDC EDID a0
 
-: select-touch-panel  ( -- )  h# 40 5 set-twsi-target  ;
+: select-touch-panel  ( -- )  h# 20 5 set-twsi-target  ;
 : touch-panel-type  ( -- n )  select-touch-panel  h# bd twsi-b@  ;
 : get-tm1414-data  ( -- x y finger-mask )
    select-touch-panel                                   ( )
@@ -29,7 +29,7 @@
 ;
 
 : compass@  ( -- x y z temp id )
-   h# 3c 4 set-twsi-target
+   h# 1e 4 set-twsi-target
    0 0 twsi-b!      \ Config register A
    h# 50 1 twsi-b!  \ Config register B
    0 2 twsi-b!      \ Mode register
@@ -40,7 +40,7 @@
    h# a twsi-b@  9 twsi-b@  bwjoin  ( x y z temp id )
 ;
 
-: select-pmic  ( -- )  h# 78 1 set-twsi-target  ;
+: select-pmic  ( -- )  h# 3c 1 set-twsi-target  ;
 
 : accel-power-on  ( -- )  \ LDO8 - vout is 36, ctl is 34
    select-pmic
@@ -52,7 +52,7 @@
    h# 1e h# 34 twsi-b!
 ;
 : accel@  ( -- x y z temp id )
-   h# 70 4 set-twsi-target
+   h# 38 4 set-twsi-target
 
    2 twsi-b@ 6 rshift     ( x-low )
    3 twsi-b@ 2 lshift or  ( x )
@@ -67,24 +67,24 @@
 ;
 
 : init-pals  ( -- )
-   h# b0 4 set-twsi-target  \ Set PS parameters address
+   h# 58 4 set-twsi-target  \ Set PS parameters address
    0 1 twsi-out             \ clear interrupt settings
 
-   h# 22 4 set-twsi-target  \ Device init address
+   h# 11 4 set-twsi-target  \ Device init address
    h# 10 1 twsi-out         \ Init device
 
-   h# 20 4 set-twsi-target  \ Ambient Light Sensor address
+   h# 10 4 set-twsi-target  \ Ambient Light Sensor address
    2 1 twsi-out             \ Enable ALS in most sensitive mode, 16-bit data
 ;
 : als@  ( -- n )
-   h# 22 4 set-twsi-target  \ Ambient Light Sensor LSB address
+   h# 11 4 set-twsi-target  \ Ambient Light Sensor LSB address
    0 1 twsi-get            ( low )
-   h# 20 4 set-twsi-target  \ Ambient Light Sensor MSB address
+   h# 10 4 set-twsi-target  \ Ambient Light Sensor MSB address
    0 1 twsi-get  bwjoin   ( n )
 ;
 
 : proximity@  ( -- byte )
-   h# b0 4 set-twsi-target  \ Proximity Sensor address
+   h# 58 4 set-twsi-target  \ Proximity Sensor address
    0 1 twsi-get            ( byte )
 ;
 
@@ -128,7 +128,7 @@
 ;
 : twsi-bcd@   ( reg# -- binary )  twsi-b@ bcd>  ;
 : get-rtc  ( -- )
-   h# d0 1 set-twsi-target
+   h# 68 1 set-twsi-target
 
 \   3 twsi-b@   ( dow )
 \   
@@ -142,7 +142,7 @@
 ;
 
 : core-voltage!  ( mv -- )
-   h# c0 1 set-twsi-target  \ MAX8649 power management IC
+   h# 60 1 set-twsi-target  \ MAX8649 power management IC
 
    d# 750 umax  d# 1350 umin   \ Clipped voltage
    d# 750 -  d# 10 /      ( offset-in-mv/10 )
@@ -150,7 +150,7 @@
    2 twsi-b!
 ;
 : core-voltage@  ( -- mv )
-   h# c0 1 set-twsi-target  \ MAX8649 power management IC
+   h# 60 1 set-twsi-target  \ MAX8649 power management IC
    2 twsi-b@     ( code )
    h# 7f and     ( offset-mv/10 )
    d# 10 *       ( offset-mv )

Modified: cpu/arm/mmp2/dsi.fth
==============================================================================
--- cpu/arm/mmp2/dsi.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/mmp2/dsi.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -45,7 +45,7 @@
    2 ms
    d# 83 gpio-clr  1 ms  d# 83 gpio-set  1 ms  \ LCD_RST_N line resets DSI bridge
    
-   h# 16 5 set-twsi-target    \ TWSI address of TC358762 MIPI DSI bridge
+   h# 0b 5 set-twsi-target    \ TWSI address of TC358762 MIPI DSI bridge
    \ Data   Reg#.......
    0  h# 047c dsi-twsi!  \ Turn off sleep mode
    2 ms
@@ -142,7 +142,7 @@
 : .dsi  ( index -- )  dup 3 u.r space dsi-twsi@ 8 u.r cr  ;
 : .dsiw  ( index -- )  dup 3 u.r space dsi-twsi-w@ 8 u.r cr  ;
 : dump-dsi  ( -- )
-   16 5 set-twsi-target
+   0b 5 set-twsi-target
    47c .dsi
    210 .dsi
    470 .dsi

Modified: cpu/arm/mmp2/twsi.fth
==============================================================================
--- cpu/arm/mmp2/twsi.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/mmp2/twsi.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -42,7 +42,7 @@
 ;
 : set-twsi-target  ( slave channel -- )  \ Channel numbers range from 1 to 6
    set-twsi-channel
-   to slave-address
+   2* to slave-address
 ;
 
 \       Bit defines
@@ -195,7 +195,7 @@
   h# d4034000 d# 31   4 true  true     1 make-twsi-node  \ TWSI6
 
 
-0 0  " 34" " /i2c at d4011000" begin-package  \ TWSI1
+0 0  " 1a" " /i2c at d4011000" begin-package  \ TWSI1
    " audio-codec" name
    " realtek,alc5631" +compatible
    " realtek,rt5631" +compatible

Modified: cpu/arm/mmp3/thunderstone/boardtwsi.fth
==============================================================================
--- cpu/arm/mmp3/thunderstone/boardtwsi.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/mmp3/thunderstone/boardtwsi.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -8,7 +8,7 @@
 \ 5 TC358762 MIPI bridge 16, TM-1210 or TM1414 touchscreen 40
 \ 6 HDMI DDC EDID a0
 
-: select-touch-panel  ( -- )  h# 40 5 set-twsi-target  ;
+: select-touch-panel  ( -- )  h# 20 5 set-twsi-target  ;
 : touch-panel-type  ( -- n )  select-touch-panel  h# bd twsi-b@  ;
 : get-tm1414-data  ( -- x y finger-mask )
    select-touch-panel                                   ( )
@@ -29,7 +29,7 @@
 ;
 
 : compass@  ( -- x y z temp id )
-   h# 3c 4 set-twsi-target
+   h# 1e 4 set-twsi-target
    0 0 twsi-b!      \ Config register A
    h# 50 1 twsi-b!  \ Config register B
    0 2 twsi-b!      \ Mode register
@@ -40,7 +40,7 @@
    h# a twsi-b@  9 twsi-b@  bwjoin  ( x y z temp id )
 ;
 
-: select-pmic  ( -- )  h# 78 1 set-twsi-target  ;
+: select-pmic  ( -- )  h# 3c 1 set-twsi-target  ;
 
 : accel-power-on  ( -- )  \ LDO8 - vout is 36, ctl is 34
    select-pmic
@@ -52,7 +52,7 @@
    h# 1e h# 34 twsi-b!
 ;
 : accel@  ( -- x y z temp id )
-   h# 70 4 set-twsi-target
+   h# 38 4 set-twsi-target
 
    2 twsi-b@ 6 rshift     ( x-low )
    3 twsi-b@ 2 lshift or  ( x )
@@ -67,24 +67,24 @@
 ;
 
 : init-pals  ( -- )
-   h# b0 4 set-twsi-target  \ Set PS parameters address
+   h# 58 4 set-twsi-target  \ Set PS parameters address
    0 1 twsi-out             \ clear interrupt settings
 
-   h# 22 4 set-twsi-target  \ Device init address
+   h# 11 4 set-twsi-target  \ Device init address
    h# 10 1 twsi-out         \ Init device
 
-   h# 20 4 set-twsi-target  \ Ambient Light Sensor address
+   h# 10 4 set-twsi-target  \ Ambient Light Sensor address
    2 1 twsi-out             \ Enable ALS in most sensitive mode, 16-bit data
 ;
 : als@  ( -- n )
-   h# 22 4 set-twsi-target  \ Ambient Light Sensor LSB address
+   h# 11 4 set-twsi-target  \ Ambient Light Sensor LSB address
    0 1 twsi-get            ( low )
-   h# 20 4 set-twsi-target  \ Ambient Light Sensor MSB address
+   h# 10 4 set-twsi-target  \ Ambient Light Sensor MSB address
    0 1 twsi-get  bwjoin   ( n )
 ;
 
 : proximity@  ( -- byte )
-   h# b0 4 set-twsi-target  \ Proximity Sensor address
+   h# 58 4 set-twsi-target  \ Proximity Sensor address
    0 1 twsi-get            ( byte )
 ;
 
@@ -128,7 +128,7 @@
 ;
 : twsi-bcd@   ( reg# -- binary )  twsi-b@ bcd>  ;
 : get-rtc  ( -- )
-   h# d0 1 set-twsi-target
+   h# 68 1 set-twsi-target
 
 \   3 twsi-b@   ( dow )
 \   
@@ -142,7 +142,7 @@
 ;
 
 : core-voltage!  ( mv -- )
-   h# c0 1 set-twsi-target  \ MAX8649 power management IC
+   h# 60 1 set-twsi-target  \ MAX8649 power management IC
 
    d# 750 umax  d# 1350 umin   \ Clipped voltage
    d# 750 -  d# 10 /      ( offset-in-mv/10 )
@@ -150,7 +150,7 @@
    2 twsi-b!
 ;
 : core-voltage@  ( -- mv )
-   h# c0 1 set-twsi-target  \ MAX8649 power management IC
+   h# 60 1 set-twsi-target  \ MAX8649 power management IC
    2 twsi-b@     ( code )
    h# 7f and     ( offset-mv/10 )
    d# 10 *       ( offset-mv )

Modified: cpu/arm/olpc/1.75/compass.fth
==============================================================================
--- cpu/arm/olpc/1.75/compass.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/olpc/1.75/compass.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -4,7 +4,7 @@
 : set-compass-slave  ( -- )
    compass-scl-gpio# to smb-clock-gpio#
    compass-sda-gpio# to smb-data-gpio#
-   h# 3c to smb-slave
+   h# 1e to smb-slave
    smb-data-gpio# gpio-dir-out
 ;
 : smb-init    ( -- )  set-compass-slave  smb-on  smb-pulses  ;
@@ -35,11 +35,11 @@
 0 0  " "  " /" begin-package
 " combo-accelerometer" name
 
-\ : set-sensor-slave  ( -- )  h# 30 6 set-twsi-target  ;
+\ : set-sensor-slave  ( -- )  h# 18 6 set-twsi-target  ;
 : set-sensor-slave  ( -- )
    4 to smb-clock-gpio#
    5 to smb-data-gpio#
-   h# 30 to smb-slave
+   h# 18 to smb-slave
    smb-data-gpio# gpio-dir-out
 ;
 

Modified: cpu/arm/olpc/accelerometer.fth
==============================================================================
--- cpu/arm/olpc/accelerometer.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/olpc/accelerometer.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -2,6 +2,7 @@
 0 0  " "  " /twsi" begin-package
 " accelerometer" name
 
+\ reg is set dynamically by probing to find which chip is present
 \ my-address my-space encode-phys  " reg" property
 
 \ This is for the stand-alone accelerometers LIS3DHTR and LIS33DETR
@@ -149,7 +150,7 @@
       d# 400,000 to bus-speed
       d#  50 to min-x  d#  50 to min-y  d#  50 to min-z
       d# 150 to max-x  d# 150 to max-y  d# 450 to max-z
-      h# 32 6 encode-phys " reg" property
+      h# 19 6 encode-phys " reg" property
       ['] lis3dhtr-selftest to lis-selftest
    else
       accelerometer-off
@@ -158,7 +159,7 @@
       d#  25,000 to bus-speed
       d#  20 to min-x  d#  20 to min-y  d#  20 to min-z
       d# 400 to max-x  d# 400 to max-y  d# 400 to max-z
-      h# 3a 6 encode-phys " reg" property
+      h# 1d 6 encode-phys " reg" property
       ['] lis33de-selftest to lis-selftest
    then
 ;

Modified: cpu/arm/olpc/nn-touchscreen.fth
==============================================================================
--- cpu/arm/olpc/nn-touchscreen.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/olpc/nn-touchscreen.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -1,7 +1,7 @@
 \ See license at end of file
 purpose: Driver and diagnostic for Neonode zForce MultiSensing I2C Touchscreen
 
-0 0  " 4,a0"  " /twsi" begin-package
+0 0  " 4,50"  " /twsi" begin-package
 my-space encode-int  my-address encode-int encode+  " reg" property
 
 \ XXX these are really platform-related, not touchscreen-related

Modified: cpu/arm/olpc/rtc.fth
==============================================================================
--- cpu/arm/olpc/rtc.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/olpc/rtc.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -22,7 +22,7 @@
 : rtc@  ( reg# -- byte )  set-address  smb-byte@  ;
 : rtc!  ( byte reg# -- )  set-address  smb-byte!  ;
 [else]
-: set-address  ( -- )   h# d0 2 set-twsi-target  ;
+: set-address  ( -- )   h# 68 2 set-twsi-target  ;
 : rtc@  ( reg# -- byte )  set-address  twsi-b@  ;
 : rtc!  ( byte reg# -- )  set-address  twsi-b!  ;
 [then]

Modified: cpu/arm/olpc/sound.fth
==============================================================================
--- cpu/arm/olpc/sound.fth	Thu Aug 16 04:19:35 2012	(r3182)
+++ cpu/arm/olpc/sound.fth	Thu Aug 16 22:15:40 2012	(r3183)
@@ -264,9 +264,9 @@
 ;
 
 [ifdef] cl2-a1
-: choose-smbus  ( -- )  h# 30 1 set-twsi-target  ;
+: choose-smbus  ( -- )  h# 18 1 set-twsi-target  ;
 [else]
-: choose-smbus  ( -- )  h# 34 1 set-twsi-target  ;
+: choose-smbus  ( -- )  h# 1a 1 set-twsi-target  ;
 [then]
 
 \ Reset is unconnected on current boards



More information about the openfirmware mailing list