Beagleboard Xm
Pages: 1 2 3 4 5 6 7 8 9 10 11
Jeffrey Lee (213) 6048 posts |
OK, try this new ROM image Somehow I managed to get both GPIO settings wrong in the previous image, so everything got turned off instead of on, including the serial port (since the DVI & serial port power controls seem to share a GPIO on the -xM). And if you’re wondering how the serial port can work on boot but DVI can’t, then I’m hoping it’s because the initial state of the pin would have been floating since that particular bank of GPIOs default to input instead of output.
I don’t think there are any USB-RS232 drivers for RISC OS, so a straight m/f serial cable is your best bet.
It’s by no means the “best” (Escape quits the program instead of sending the escape character to the beagleboard, and closing the task window without quitting the program via escape will leave the serial port stuck in a “claimed” state), but I’ve uploaded a copy of the BASIC app I’ve been using to here. It needs the serial block drivers (which I’m fairly certain come pre-installed on the Iyonix), and is configured to use serial port 2 of the Iyonix (although in theory it should work on port 1 if you change the value of
The page is relevant, but that section isn’t :) That section talks about pin mux settings, which are handled almost exclusively by x-loader and u-boot.
Just the SGX. |
Dave Higton (281) 668 posts |
I came close to doing one a long time ago. I even used it on a direct call basis. As you hinted, a block driver would be the best thing to use. However, as far as I can see, that requires the USB device to exchange data under interrupts. (This is all a long time ago, I’m forgetting…!) How does one handle a USB device under interrupts? |
Chris Hall (132) 3554 posts |
If you load the ‘demo’ image fot the Beagleboard XM and write it to a 4Gbyte SD card (as described below): The demo image is some 984Mbytes (compressed) almost filling a 4Gbyte SD card. It does include a Linux GUI (WIMP environment). Unzip it with 7-zip and write it to your SD card with Win32Imager then you will see the FAT partition contains: md5sum/txt MLO ramdisk/gz ramfs/img u-boot/bin uImage user/scr You should copy ‘riscos’ (the ROM image for RISC OS) into this directory (ROM image available here) as well as a file you create called ‘combi’, a text file containing: echo Press USER button to enter RISC OS sleep 10 mmc init if userbutton; then fatload mmc 0 0x80100000 riscos; go 0x80100000; fi echo Entering Angstrom GUI setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rw roofstype=ext3 rootwait omapfb.mode=dvi:1280x1024MR-16@60' setenv bootcmd 'fatload mmc 0 0x80300000 uImage; bootm 0x80300000' boot then place the SD card into the beagleboard on let it start up in the Angstrom command line and then do the following: login: root root(at)beagleboard.org ~# mkimage -A arm -O u-boot -T script -C none -n "RISC OS Beagleboard boot script" -d /media/mmcblk0p1/combi /media/mmcblk0p1/boot.scr This adds a file ‘boot.scr’ (not originally provided) to the FAT partition which will be executed on start-up in preference to ‘user.scr’ unless the USER button is initially pressed. You will now find that the Beaglebaord will boot up into: (1) the validation image if the user button is pressed initially (2) RISC OS if the USER button is pressed when prompted (about 6 sec after start) (3) the Angstrom demo GUI if the USER button is not pressed |
Chris Hall (132) 3554 posts |
Clearly it is getting better – many thanks to all. However it still gives a blank screen. RISC OS is running because an ‘f12’ causes the ‘star’ prompt on the serial port terminal, see below: What is not obvious is that the ‘Help on keyword help’ bit all appears top-bit-set on the beagleboard and so is unreadable! Texas Instru X-Loader 1.4.4ss (Aug 19 2010 - 02:49:27) Beagle xM Rev A Reading boot sector Loading u-boot.bom mmc U-Boot 2010.03-dirty (Aug 20 2010 - 20:50:46) OMAP3630/3730-GP ES1.0, CPU-OPP2, L3-165MHz, OMAP3 Beagle board + LPDDR/NAND I2C: ready DRAM: 512 MB NAND: 256 MiB *** Warning - ba or NAND, using default environment In: serial O serial Err: serial Probing for expansion boards, if none are connected you'll see a harmless I2C er ror. No EEPROM on expansion board Die ID #5c6200001bf00000015739ea0703401e Hit any key to stop autoboot: 0 mmc1 is availablhe user button is currently NOT pressed. reading boot.scr 436 bytes read Running bootscript from mmc ... ## Executing script at 80200000 Press USER button to enter RISC OS mmc1 is availablThe user button is currently PRESSED. reading riscos 4194304 bytes ## Starting application at 0x80100000 ... OMAP3 HAL init Board config=BeagleBoard HAL_Init I2C_Init GPIO_Init GPIO for XM Video_init USB_Init Timer_Init Interrupt_Init GPMC_Init BHAL initialised InitCMOSCache entry InitCMOSCache done IMB_Full done Keyboard scan complete FIQ enabled IRQ enabled VduInit Executet Machine ID duff,zero substituted KeyInit MouseInit OscliInit Enabling IRQs IRQs on Debug terminal on HAL_InitDevices HAL RTC detected! Leaving LookForHALRTC InitVariables AMBControl_Init ModuleInit init mod UtilityModule init mod PCI init mod FileSwitch init mod ResourceFS init mod TerritoryManager init mod Messages init mod MessageTrans init mod UK init mod WindowManager init mod Desktop init mod SharedCLibrary init mod OMAPVideo OMAPVideo: OMAPVideo: ***** Debug Session Started ****************************** ******** OMAPVideo: DebugLib is (c) Pace Micro Technology plc. 1997-2001 OMAPVideo : System: DebugLib 0.65 OMAPVideo: remotedb 0.10 OMAPVideo: PDebug 0.07 OMAPVideo: Task: OMAPVideo OMAPVideo: Time: Fri Jan 2 00:00:00 1970 OMAP Video: Levels: Not specified. OMAPVideo: **************************************** ************************** OMAPVideo: Using DMA channel at f9e56c20 OMAPVideo: dss _reset OMAPVideo: Finished module initialisation, DSS regs=f9e50000 init mod TaskM anager init mod ARM init mod BASIC init mod BASIC64 init mod BASICTrans init mod BufferManager init mod ColourTrans init mod Debugger init mod DeviceFS init mod Portable init mod RTSupport init mod USBDriver init mod EHCIDriver init mod MUSBDriver init mod DisplayManager init mod DMAManager init mod DragASprite init mod DragAnObject init mod Draw init mod BBCEconet error: No 'Econet' installed init mod FileCore init mod RamFS error: RAM disc size too small init mod Filer init mod FilerSWIs init mod FSLock init mod FontManager init mod FPEmulator init mod Free init mod Hourglass init mod IIC init mod International init mod InternationalKeyboard init mod InverseTable init mod NetFS error: No 'Econet' installed init mod NetFiler init mod NetPrint error: No 'Econet' installed init mod NetStatus init mod NetUtils init mod Obey init mod Pinboard init mod PipeFS init mod RAMFSFiler init mod ResourceFiler init mod ROMFonts init mod ScreenBlanker init mod ScrSaver init mod ShellCLI init mod SoundDMA init mod SoundControl init mod SoundChannels init mod SoundScheduler init mod SpriteExtend init mod SpriteUtils init mod Squash init mod SuperSample init mod SystemDevices init mod TaskWindow init mod WindowUtils init mod FilterManager init mod WaveSynth init mod StringLib init mod Percussion init mod Filer_Action init mod DOSFS init mod SCSIdriver init mod SCSISoftUSB init mod SCSIFS init mod SCSIFiler init mod ColourPicker init mod ScreenModes init mod DrawFile init mod BootCommands init mod AUNMsgs init mod MbufManager init mod Internet init mod Resolver init mod Net error: AUN not configured init mod BootNet init mod Freeway init mod ShareFS init mod MimeMap init mod LanManFS init mod DHCP init mod !Edit init mod !Draw init mod !Paint init mod !Alarm init mod !Chars init mod !Help init mod TinyStubs init mod Toolbox init mod Window init mod ToolAction init mod Menu init mod Iconbar init mod ColourDbox init mod ColourMenu init mod DCS init mod FileInfo init mod FontDbox init mod FontMenu init mod PrintDbox init mod ProgInfo init mod SaveAs init mod Scale init mod TextGadgets init mod CDFSdriver init mod CDFS init mod CDFSFiler mod init done Service_PostInit callbacks OMAPVideo: dispc_set_lcdmode: rate=25175000 syncpol=3 OMAPVideo: hsw=96 hfp=18 hb p=46 width=640 OMAPVideo: vsw=2 vfp=11 vbp=32 height=480 OMAPVideo: dsi_pll_progra m_for_dispc: Changing pixel rate from 0 to 25175000 OMAPVideo: REGM=122 REGN=6 RE GM3=8 REGM4=8 OMAPVideo: Fint=1857142 OMAPVideo: dsi_pll_program_for_dispc: Done OM APVideo: dispc_set_lcdmode: Done (0)Here’s the good bit! RISC OS 512MB Cortex-A8 Processor Acorn SCSIFS !"lll#66666$ ?h> ~%`f 0f&8ll8mf;'( 000 )0 0*~<~+~,0-~./ 0`0<fn~vf<18~2<f 0~3<ff<4 <l~ 5~` |f<60`|ff<7~ 0008<ff<ff<9<ff> 8:;0< 0`0 =~~>0 0?<f @<fnjn`<A<ff~fffB|ff|ff|C<f```f<Dxl ffflxE~``|``~F~``|```G<f`nff<Hfff~fffI~~J> l8KflxpxlfL``````~McwkkccNffv~nffO<fff ff<P|ff|```Q<fffjl6R|ff|lffS<f`<f<T~Uffffff<Vfffff<WcckkwcXff<<ffYfff<Z~ 0`~[|``` ``|\`0 ]>>^<f_ÿ`0a<>f>b``|fff|c<f`f<d>fff>e<f~`<f00|000g>ff><h``|ffffi8<j8pk``flx lfl8<m6kkcn|ffffo<fff<p|ff|``q>ff>rlv```s>`<|t00|000uffff>vfff<wckk6xf<<fyfff><z ~ 0~{ p |}00~1kFÿÿÿÿÿÿÿÿ€<f`ø`f<6ckc‚6kk6…<ff<†<fff><ŒÛÛñ[UQŽÀÌ0`Û~~< ‘ ’ 00 “0 0”6• 66l–66l—<˜ÿ™~šwÌÌÏÌÌw›nÛßØnœ~~~ž<f`öfffŸ>fföfff ¡>khk£60|00~¤f<ff<f¥f<~¦§<`<f<< ¨f©<B™¡¡™B<ª6>«3fÌÌf3¬~~®<B¹¥¹¥B<¯~°<f<±~~²8 <³88´ µ3333>`¶>vv66>·¸0¹08º666>»Ìf3 3f̼@À@HH ½@À@O¾à à(è ¿0f<À0<f~ffÁ <f~ffÂf<f~ffÃ6l<f~ffÄf<f~ffÅ<f<f~ffÆ?ffffgÇ<f``` f<`È0~`|`~É ~`|`~Ê<f~`|`~Ëf~`|`~Ì0~~Í ~~Î<f~~Ïf~~ÐxlföflxÑ6lfv~nfÒ0<fff<Ó <fff<Ôf<f ff<Õ6l<fff<Öf<fff<×c66cØ=fn~vf¼Ù0ffff<Ú ffff<Û<ffff<Üfffff<Ý ff<Þð`|f|`ðß<fflfflÀà 0<>f>á ?l?ç<f`f<`è0<f~`<él<>f>äf<>f>å<f<>f>æ? <f~`<ê<f<f~`<ëf<f~`<ì08<í 8<î<f8<ïf8<ð> >f>ñ6l|fffò0<ff<ó <ff<ô<f <ff<õ6l<ff<öf<ff<÷ÿø<nvf¼ù0ffff>ú ffff>û<ffff>üfffff>ý fff><þ``|f|``ÿffff><No keyb oard present - autobooting Boot:Utils.Unplu Boot:Choices.Boot.PreDesk.!+Resource Boot:Choices.Boot.PreDesk.ARPlayer Boot:Choices.Boot.PreDesk.DALimit Boot:Choices.Boot.PreDesk.NewLook Boot:Choices.Boot.PreDesk.SetupNet Boot:Choices.Boot.PreDesk.~SetupMimeMap Boot:Choices.Boot.PreDesk.Configure Boot:Choices.Boot.PreDesk.SoftSCSI OMAPVideo: dispc_set_lcdmode: rate=49500000 syncpol=4 OMAPVideo: hsw=80 hfp=46 hb p=46 width=800 OMAPVideo: vsw=3 vfp=1 vbp=21 height=600 OMAPVideo: Disabling LCD p rior to update OMAPVideo: dsi_pll_program_for_dispc: Changing pixel rate from 251 75000 to 49500000 OMAPVideo: REGM=396 REGN=7 REGM3=12 REGM4=15 OMAPVideo: Fint=162 5000 OMAPVideo: dsi_pll_program_for_dispc: Done OMAPVideo: dispc_set_lcdmode: Done (0) ÿÿ™ÿ@¿ƒþ’’ò‚‚þ„f™B™fˆ(OO(‰òòŠ<$$çB$‹$Bç$$<ÿÿ™ÿø·eRð¿eJòÁeH®~-®~Œ~Œ,®,®~ °€‹+°€‹+M°€‹+°€%‹€%‹+%°+%°€²‚%‰‚%‰)%²)%²‚´ ‡'›°€‹+´ %‡ %‡'%´'%´ ¶"%…"%…%%¶%%¶"´„ ‡É°€‹+´„%‡„%‡%´%´„¶†%…†%…%¶%¶†¬¼ç²Ï°€‹+,˜¢°€‹+¶v•}¶v”v”$¶$¶vŽ~•%¶v”v”$¶$¶v¸x“}Ž~ 5Vþ†?u.?¯Ž&?-vµ}~-–v?%†?u.?¯Ž&?-vµ}~-–v?%?…>>„„=ƒo)of=UoAUo&=ƒ=ƒ>>„„=ƒoo 5Vþ€JUo&=ƒPress f12 here (the HDMI/DVI-D is still blank) and the ’’ prompt appears on the serial terminal [a temporary arrnagement until it all works] ****help > Help on keyword Help *Help <subjects> attempts to give useful information on the selected topics. Spe cial keywords include: Commands List all the available utility commands FileCommands List all the filing system-specific commands Modules List the module titles Syntax Explain the syntax message format **basic ARM BBC BASIC V version 1.44 (C) Acorn 1989 Starting with 651516 bytes free >CLS >*fx0 RISC OS 5.17Jan 2010) >*romm. No. Position Module Name Version Status 1 System ROM UtilityModule 5.17 Active 2 System ROM PCI 0.09 Active 3 System ROM FileSwitch 2.67 Active 4 System ROM ResourceFS 0.25 Active 5 System ROM TerritoryManager 0.43 Active 6 System ROM Messages 1.07 Active 7 System ROM MessageTrans 0.47 Active 8 System ROM UK 0.51 Active 9 System ROM WindowManager 5.08 Active 10 System ROM Desktop 2.70 Active 11 System ROM SharedCLibrary 5.56 Active 12 System ROM OMAPVideo 0.04 Active 13 System ROM TaskManager 1.29 Active 14 System ROM ARM 0.21 Active 15 System ROM BASIC 1.44 Running 16 System ROM BASIC64 1.44 Active 17 System ROM BASICTrans 2.10 Active 18 System ROM BufferManager 0.38 Active 19 System ROM ColourTrans 1.77 Active 20 System ROM Debugger 1.81 Active 21 System ROM DeviceFS 0.68 Active 22 System ROM Portable 0.69 Active 23 System ROM RTSupport 0.05 Active 24 System ROM USBDriver 0.49 Active 25 System ROM EHCIDriver 0.16 Active 26 System ROM MUSBDriver 0.05 Active 27 System ROM DisplayManager 0.40 Active 28 System ROM DMAManager 0.18 Active 29 System ROM DragASprite 0.15 Active 30 System ROM DragAnObject 0.09 Active 31 System ROM Draw 1.19 Active 32 System ROM BBCEconet 0.18 Dormant 33 System ROM FileCore 3.36 Active 34 System ROM RamFS 2.21 Dormant 35 System ROM Filer 2.25 Active 36 System ROM FilerSWIs 0.05 Active 37 System ROM FSLock 1.22 Active 38 System ROM FontManager 3.66 Active 39 System ROM FPEmulator 4.28 Active 40 System ROM Free 0.39 Active 41 System ROM Hourglass 2.16 Active 42 System ROM IIC 0.18 Active 43 System ROM International 1.67 Active 44 System ROM InternationalKeyboard 0.91 Active 45 System ROM InverseTable 0.15 Active 46 System ROM NetFS 5.94 Dormant 47 System ROM NetFiler 0.79 Active 48 System ROM NetPrint 5.58 Dormant 49 System ROM NetStatus 2.09 Active 50 System ROM NetUtils 2.02 Active 51 System ROM Obey 0.39 Active 52 System ROM Pinboard 0.88 Active 53 System ROM PipeFS 0.22 Active 54 System ROM RAMFSFiler 0.38 Active 55 System ROM ResourceFiler 0.18 Active 56 System ROM ROMFonts 0.75 Active 57 System ROM ScreenBlanker 2.32 Active 58 System ROM ScrSaver 0.14 Active 59 System ROM ShellCLI 0.33 Active 60 System ROM SoundDMA 1.67 Active 61 System ROM SoundControl 1.00 Active 62 System ROM SoundChannels 1.35 Active 63 System ROM SoundScheduler 1.28 Active 64 System ROM SpriteExtend 1.21 Active 65 System ROM SpriteUtils 1.13 Active 66 System ROM Squash 0.29 Active 67 System ROM SuperSample 0.14 Active 68 System ROM SystemDevices 1.31 Active 69 System ROM TaskWindow 0.72 Active 70 System ROM WindowUtils 2.53 Active 71 System ROM FilterManager 0.24 Active 72 System ROM WaveSynth 1.19 Active 73 System ROM StringLib 1.16 Active 74 System ROM Percussion 1.15 Active 75 System ROM Filer_Action 0.48 Active 76 System ROM DOSFS 0.87 Active 77 System ROM SCSIdriver 2.06 Active 78 System ROM SCSISoftUSB 0.12 Active 79 System ROM SCSIFS 1.17 Active 80 System ROM SCSIFiler 1.19 Active 81 System ROM ColourPicker 0.50 Active 82 System ROM ScreenModes 0.30 Active 83 System ROM DrawFile 1.55 Active 84 System ROM BootCommands 1.39 Active 85 System ROM AUNMsgs 0.18 Active 86 System ROM MbufManager 0.26 Active 87 System ROM Internet 5.52 Active 88 System ROM Resolver 0.69 Active 89 System ROM Net 6.20 Dormant 90 System ROM BootNet 0.95 Active 91 System ROM Freeway 0.34 Active 92 System ROM ShareFS 3.52 Active 93 System ROM MimeMap 0.15 Active 94 System ROM LanManFS 2.34 Active 95 System ROM DHCP 0.21 Active 96 System ROM !Edit 1.65 Active 97 System ROM !Draw 1.15 Active 98 System ROM !Paint 2.01 Active 99 System ROM !Alarm 2.79 Active 100 System ROM !Chars 1.22 Active 101 System ROM !Help 3.16 Active 102 System ROM TinyStubs 0.14 Active 103 System ROM Toolbox 1.52 Active 104 System ROM Window 1.71 Active 105 System ROM ToolAction 0.30 Active 106 System ROM Menu 0.36 Active 107 System ROM Iconbar 1.20 Active 108 System ROM ColourDbox 0.19 Active 109 System ROM ColourMenu 0.21 Active 110 System ROM DCS 1.12 Active 111 System ROM FileInfo 0.19 Active 112 System ROM FontDbox 0.18 Active 113 System ROM FontMenu 0.24 Active 114 System ROM PrintDbox 0.16 Active 115 System ROM ProgInfo 0.18 Active 116 System ROM SaveAs 0.19 Active 117 System ROM Scale 0.15 Active 118 System ROM TextGadgets 0.31 Active 119 System ROM CDFSdriver 2.39 Active 120 System ROM CDFS 2.49 Active 121 System ROM CDFSFiler 2.47 Active >*help modules > Help on keyword ModulesModules lists the modules currently loaded, giving the name and address of the module, and also the address of its workspace. See also ROMModules. Modules loaded are: MOS Utilities 5.17 (19 Jan 2010) PCI Manager 0.09 (16 Jun 2009) FileSwitch 2.67 (15 Jun 2009) ResourceFS 0.25 (19 Jan 2010) Territory Mgr 0.43 (24 Apr 2009) UK Messages 1.07 (19 Jan 2010) MessageTrans 0.47 (03 Apr 2010) UK Territory 0.51 (16 Apr 2002) Window Manager 5.08 (14 Mar 2010) Desktop 2.70 (18 Jan 2010) C Library 5.56 (28 Nov 2009) OMAPVideo 0.04 (20 May 2010) Task Manager 1.29 (19 Jan 2010) ARM 0.21 (19 Jan 2010) BBC BASIC V 1.44 (16 Jun 2009) BBC BASIC VI 1.44 (16 Jun 2009) BASICTrans 2.10 (24 Apr 2009) International Buffer Manager 0.38 (19 Jan 2010) Colour Selector 1.77 (16 Jun 2009) Debugger 1.81 (22 Mar 2010) DeviceFS 0.68 (06 Nov 2009) Portable 0.69 (21 Mar 2010) RTSupport 0.05 (22 Oct 2009) USBDriver 0.49 (18 Jul 2010) EHCIDriver 0.16 (18 Jul 2010) MUSBDriver 0.05 (20 Oct 2009) DisplayManager 0.40 (13 May 2009) DMAManager 0.18 (28 Nov 2009) Drag A Sprite 0.15 (16 Mar 2001) Drag An Object 0.09 (26 Apr 2005) Drawing Module 1.19 (28 Oct 2009) FileCore 3.36 (14 Nov 2009) Filer 2.25 (09 Mar 2010) FilerSWIs 0.05 (16 Mar 2001) FSLock 1.22 (11 Jun 2009) Font Manager 3.66 (02 Jan 2010) FPEmulator 4.28 (04 Dec 2009) (1.13CELM) Free 0.39 (26 Nov 2002) Hourglass 2.16 (29 Nov 2002) IIC 0.18 (13 Jul 2004) 4.5.2.5 International 1.67 (06 Nov 2009) Int’l Keyboard 0.91 (19 Jan 2010) Inverse Table 0.15 (23 Mar 2001) NetFiler 0.79 (17 Jan 2003) NetStatus 2.09 (17 Jan 2003) NetUtils 2.02 (26 Jun 2003) Obey 0.39 (26 Jun 2003) Pinboard 0.88 (04 Oct 2008) PipeFS 0.22 (14 May 2001) RAMFSFiler 0.38 (13 Jan 2003) ResourceFiler 0.18 (14 May 2001) ROM Fonts 0.75 (19 Jan 2010) ScreenBlanker 2.32 (02 Jul 2001) ScrSaver 0.14 (15 Apr 1998) ShellCLI 0.33 (23 Oct 2002) SoundDMA 1.67 (28 Feb 2010) HAL version Sound Control 1.00 (17 Feb 2003) SoundChannels 1.35 (19 Jan 2010) SoundScheduler 1.28 (19 Jan 2010) SpriteExtension 1.21 (19 Jan 2010) SpriteUtils 1.13 (19 Jan 2010) Squash 0.29 (29 Nov 2009) SuperSample 0.14 (19 Jan 2010) System Devices 1.31 (19 Jan 2010) TaskWindow 0.72 (19 Jan 2010) Window Utils 2.53 (05 Apr 2001) Filter Manager 0.24 (16 Mar 2001) WaveSynth 1.19 (21 Jun 2004) StringLib 1.16 (21 Jun 2004) Percussion 1.15 (21 Jun 2004) Filer_Action 0.48 (11 Jun 2009) DOSFS 0.87 (19 Jan 2010) SCSIdriver 2.06 (25 Oct 2009) SCSISoftUSB 0.12 (22 Apr 2010) SCSIFS 1.17 (14 Jul 2009) SCSIFiler 1.19 (02 Mar 2010) Colour Picker 0.50 (07 Jun 2009) Screen Modes 0.30 (03 Feb 2003) DrawFile 1.55 (19 Jan 2010) Boot Commands 1.39 (19 Apr 2010) AUN Messages 0.18 (07 Sep 2010) Mbuf Manager 0.26 (15 Dec 2000) © ANT Ltd 1994-1996 & Acorn 1997-2000 Internet 5.52 (22 Dec 2008) Resolver 0.69 (11 Jul 2004) (Acorn) © ANT Ltd, 1997 BootNet 0.95 (02 Jul 2004) Freeway 0.34 (11 Mar 2003) ShareFS 3.52 (01 Jul 2004) Access+ Mime Mapping 0.15 (19 Jun 2002) © ANT Ltd, 1997-2000 LanManFS 2.34 (01 Aug 2009) DHCP client 0.21 (05 Aug 2004) !Edit 1.65 (18 Jan 2010) !Draw 1.15 (01 Oct 2009) !Paint 2.01 (01 Oct 2009) !Alarm 2.79 (11 Jun 2009) !Chars 1.22 (29 May 2010) !Help 3.16 (07 Sep 2010) Tiny Stubs 0.14 (19 Jan 2010) Toolbox 1.52 (17 Jan 2003) Window Object 1.71 (30 Mar 2005) ToolAction 0.30 (14 Jun 2008) Menu 0.36 (04 May 2000) Iconbar 1.20 (04 May 2000) ColourDbox 0.19 (04 May 2000) ColourMenu 0.21 (04 May 2000) DCS Object 1.12 (15 Apr 2005) FileInfo 0.19 (19 Jan 2010) FontDbox 0.18 (04 May 2000) FontMenu 0.24 (06 Nov 2001) PrintDbox 0.16 (04 May 2000) ProgInfo 0.18 (13 Aug 2003) SaveAs 0.19 (29 Nov 2004) Scale 0.15 (04 May 2000) TextGadgets 0.31 (28 Feb 2010) CDFSdriver 2.39 (22 Nov 2002) CDFS 2.49 (17 May 2009) CDFSFiler 2.47 (12 Aug 2004) VProtect 4.04 (07 Dec 2002) DrawPool 2.00 (04 Feb 2010) PaintPool 2.00 (04 Feb 2010) WimpPool 2.00 (04 Feb 2010) WindowTools 2.00 (04 Feb 2010) > status Configuration status:Baud 4 Boot No Caps Data 4 Delay 32 No Directory DumpFormat 4 FontSize 256K Ignore 10 Language 11 Mode Auto MonitorType Auto MouseStep 2 MouseType 7 Print 1 PrinterBufferSize 1K Quiet RamFSSize 0K Repeat 8 RMASize 0K ScreenSize 160K Scroll SpriteSize 0K Sync 0 SystemSize 32K TV 0,1 WimpMode Auto FileSystem SCSI Truncate on Territory 1 GMT TimeZone +0:0 WimpFlags 111 WimpFont 8 WimpDragDelay 5 1/10 second WimpDragMove 32 OS Units WimpDoubleClickDelay 10 1/10 second WimpDoubleClickMove 32 OS Units WimpAutoMenuDelay 10 1/10 second WimpMenuDragDelay 10 1/10 second WimpIconBarSpeed 200 OS Units / second WimpIconBarAcceleration 100 OS Units / second² WimpSpritePrecedence RAM WimpButtonType Click WimpIconiseButton Off WimpAutoFrontIconBar On WimpAutoFrontDelay 5 1/10 second WimpAutoScrollDelay 5 1/10 second WimpClickSubmenu Off Cache On FontMax1 16 points FontMax2 36 points FontMax3 36 points FontMax4 16 points FontMax5 0 points FontMax 4096k Country UK SoundSystem 16bit Oversampled SoundDefault 1 7 1 SCSIFSDirCache 255K SCSIFSDrive 0 BootNet Off FreewayAutoAddress On FS <unset> LMTransport NetBEUI LMNameServer <unset> CDROMBuffers 256K CDROMDrives 0 Use *Configure to set the options. >PRINT “abc” abc > Unfortunately all lower case characters (except “abc”) above appear garbled (top bit set?) on the serial terminal… |
Trevor Johnson (329) 1645 posts |
Nice work :-) Déjà vu via serial! |
Trevor Johnson (329) 1645 posts |
...refers to in response to your post was this threadI had read that thread. Looks like JK’s latest posts to your thread might help: Steve Kipisz pointed out to me “On xM the parent clock is 96MHz so 96/6=16MHz, which I think you said you were seeing 15MHz. As a quick hack I changed the PCD to 2 and now have the nice orange display on xM.” Given that, I tried a few things:OMAP3 beagleboard.org # md 0x48050440 0x10 48050440: 0001830b 00000004 000003ff 00ff8000 ................ 48050450: 00000000 00000000 00000000 0000023d ............=... 48050460: 00000000 0ff03f31 01400504 00007028 ....1?....@.(p.. 48050470: 00010006 00000000 00ef027f 02ff03ff ................ OMAP3 beagleboard.org # mw.l 0x48050440 0x00018308 OMAP3 beagleboard.org # mw.l 0x48050470 0x00010002 OMAP3 beagleboard.org # mw.l 0x48050440 0x0001830bI did the above, but the result for me was a 34.4kHz / 43Hz signal that my monitor still didn’t recognize. For some register information in u-boot, check out: Assuming: (working with http://www.epanorama.net/faq/vga2rgb/calc.html)Clock: 96MHz HFP (horizontal frontporch): 36 HSW (horizontal sync): 201 HBP (backporch): 676 VFP (vertical): 5 VSW: 9 VBP: 44 H freq: 49.56kHz (1024x768 VESA = 48.36kHz) V freq: 60Hz (matches VESA) timing_h: 676 << 20 | 36 << 8 | 201 = 0x1A4024C9 timing_v: 44 << 20 | 5 << 8 | 9 = 0x02C00509 OMAP3 beagleboard.org # mw.l 0x48050440 0x00018308 OMAP3 beagleboard.org # mw.l 0x48050464 0x1A4024C9 OMAP3 beagleboard.org # mw.l 0x48050468 0x02C00509 OMAP3 beagleboard.org # mw.l 0x48050470 0x00010002 OMAP3 beagleboard.org # mw.l 0x48050440 0x0001830bOrange screen lives! |
Jeffrey Lee (213) 6048 posts |
Those random garbage characters aren’t (or shouldn’t be) the help text. The first bunch of garbage is (I think) the system font being redefined, and the second bunch is all the VDU commands being used to render the desktop. But if it ran the boot sequence then at least we know USB is working :)
Nope. RISC OS uses (or should be using!) the DSI PLL, not DPLL4 (which is what u-boot uses). Assuming everything is working right the DSI PLL should be configured to take its input from the system clock. And according to some of the earlier debug output Chris posted the system clock rate is being correctly detected as 13MHz. Chris: Can you post the output of |
Chris Hall (132) 3554 posts |
This hack unfortunately gives an ‘out of scan’ on my monitor :( But, as you say, it is wholly irrelevant to RISC OS! |
Chris Hall (132) 3554 posts |
The output of ’*videoregs’ is thus:
>**videoregs f9e50010: 00000001 dss.sysconfig f9e50014: 00000001 dss.sysstatus f9e50018: 00000000 dss.irqstatus f9e50040: 00000001 dss.control f9e50044: 00000000 dss.sdi_control f9e50048: 00000000 dss.pll_control f9e5005c: 00000082 dss.sdi_status f9e50410: 00000001 dispc.sysconfig f9e50414: 00000001 dispc.sysstatus f9e50418: 000021ac dispc.irqstatus f9e5041c: 00005642 dispc.irqenable f9e50440: 00018309 dispc.control f9e50444: 0000be00 dispc.config f9e5044c: 00000000 dispc.default_color[0] f9e50450: 00000000 dispc.default_color[1] f9e50454: 00000001 dispc.trans_color[0] f9e50458: 00000001 dispc.trans_color[1] f9e5045c: 00000098 dispc.line_status f9e50460: 00000000 dispc.line_number f9e50464: 02d02d4f dispc.timing_h f9e50468: 01500102 dispc.timing_v f9e5046c: 00000028 dispc.pol_freq f9e50470: 00010002 dispc.divisor f9e50474: 00000000 dispc.global_alpha f9e50478: 00000000 dispc.size_dig f9e5047c: 0257031f dispc.size_lcd f9e50480: 80000000 dispc.gfx.ba[0] f9e50484: 80000000 dispc.gfx.ba[1] f9e50488: 00000000 dispc.gfx.position f9e5048c: 0257031f dispc.gfx.size f9e504a0: 00004087 dispc.gfx.attributes f9e504a4: 03ff03c0 dispc.gfx.fifo_threshold f9e504a8: 00000400 dispc.gfx.fifo_size_status f9e504ac: 00000001 dispc.gfx.row_inc f9e504b0: 00000001 dispc.gfx.pixel_inc f9e504b4: 00000000 dispc.gfx.window_skip f9e504b8: 82400020 dispc.gfx.table_ba f9e504bc: 00000000 dispc.vid1.ba[0] f9e504c0: 00000000 dispc.vid1.ba[1] f9e504c4: 00000000 dispc.vid1.position f9e504c8: 00000000 dispc.vid1.size f9e504cc: 00000000 dispc.vid1.attributes f9e504d0: 03ff03c0 dispc.vid1.fifo_threshold f9e504d4: 00000400 dispc.vid1.fifo_size_status f9e504d8: 00000001 dispc.vid1.row_inc f9e504dc: 00000001 dispc.vid1.pixel_inc f9e504e0: 00000000 dispc.vid1.fir f9e504e4: 00000000 dispc.vid1.picture_size f9e5054c: 82400420 dispc.vid2.ba[0] f9e50550: 82400420 dispc.vid2.ba[1] f9e50554: 0166012c dispc.vid2.position f9e50558: 001f001f dispc.vid2.size f9e5055c: 00000000 dispc.vid2.attributes f9e50560: 03ff03c0 dispc.vid2.fifo_threshold f9e50564: 00000400 dispc.vid2.fifo_size_status f9e50568: 00000001 dispc.vid2.row_inc f9e5056c: 00000001 dispc.vid2.pixel_inc f9e50570: 00000000 dispc.vid2.fir f9e50574: 001f001f dispc.vid2.picture_size f9e505d4: 00000000 dispc.data_cycle[0] f9e505d8: 00000000 dispc.data_cycle[1] f9e505dc: 00000000 dispc.data_cycle[2] f9e50620: 00000100 dispc.cpr_coef_r f9e50624: 00080000 dispc.cpr_coef_g f9e50628: 40000000 dispc.cpr_coef_b f9e5062c: 00000060 dispc.gfx_preload f9e50630: 00000060 dispc.vid_preload[0] f9e50634: 00000100 dispc.vid_preload[1] f9e4ff00: 00000000 dsi_pll.control f9e4ff04: 00000082 dsi_pll.status f9e4ff08: 00000000 dsi_pll.go f9e4ff0c: 07e18c0f dsi_pll.configuration1 f9e4ff10: 0001210c dsi_pll.configuration2 Ban state: 00000000 > |
Jeffrey Lee (213) 6048 posts |
That looks OK, apart from the fact that we’re writing to a field that’s now been removed. I doubt that will affect things, but just in case I’ve uploaded a new ROM image Also, what monitor are you using? It looks like you’re using a 75Hz 800×600 mode from one of the AKF MDFs. But those modes all specify border values, which the video driver currently ignores – so instead of getting 75Hz (with a 46.8kHz line rate) you’re getting 81.5Hz (with a 50.9kHz line rate). But that won’t explain why you’re not getting any video from before the boot sequence has run :( (Unless it’s just a simple case of your monitor not liking the startup mode, which isn’t quite standard VGA timings according to that calculator thing) Also, can you give the output of these commands: *memory p 48004a40 + 4 *memory p 48004d00 + 4 *memory p 48004d20 + 4 *memory p 48004d40 + 14 *memory p 48004e00 + 4 *memory p 48004e10 + 4 *memory p 48004e20 + 4 *memory p 48004e30 + 4 *memory p 48004e40 + 10 I think that’s all the registers that are relevant to the video clocks… |
Chris Hall (132) 3554 posts |
New ROM image (as above). My monitor is a 1920×1080 Dell P2310H - it says no signal (it says something different if there is a signal but with timing out of spec). It starts up (screen still blank): No keyboard present - autobooting Boot:Utils.UnplugTbox Boot:Choices.Boot.PreDesk.!+Resource Boot:Choices.BooDesk.ARPlayer Boot:Choices.Boot.PreDesk.DALimit Boot:Choices.Boot.PreDesk.NewLook Bo:Choices.Boot.PreDesk.SetupNet Boot:Choices.Boot.PreDesk.~SetupMimeMap Boot:Choices.Boot.PreDesk.Configure Boot:Choices.Boot.PreDesk.SoftSCSI OMAPVideo: dispc_set_lcdmode: rate=49500000 syncpol=4 OMAPVideo: hsw=80 hfp=46 hb p=46 width=800 OMAPVideo: vsw=3 vfp=1 vbp=21 height=600 OMAPVideo: Disabling LCD p rior to update OMAPVideo: dsi_pll_program_for_dispc: Changing pixel rate from 251 75000 to 49500000 OMAPVideo: REGM=396 REGN=7 REGM3=12 REGM4=15 OMAPVideo: Fint=162 5000 OMAPVideo: dsi_pll_program_for_dispc: Done OMAPVideo: dispc_set_lcdmode: Done (0) ÿÿ™ÿ@¿ƒþ’’ò‚‚þ„f™B™fˆ(OO(‰òòŠ<$$çB$‹$Bç$$<ÿÿ™ÿø·eRð¿eJòÁeH®~-®~Œ~Œ,®,®~ °€‹+°€‹+M°€‹+°€%‹€%‹+%°+%°€²‚%‰‚%‰)%²)%²‚´ ‡'›°€‹+´ %‡ %‡'%´'%´ ¶"%…"%…%%¶%%¶"´„ ‡É°€‹+´„%‡„%‡%´%´„¶†%…†%…%¶%¶†¬¼ç²Ï°€‹+,˜¢°€‹+¶v•}¶v”v”$¶$¶vŽ~•%¶v”v”$¶$¶v¸x“}Ž~ 5Vþ†?u.?¯Ž&?-vµ}~-–v?%†?u.?¯Ž&?-vµ}~-–v?%?…>>„„=ƒo)of=UoAUo&=ƒ=ƒ>>„„=ƒoo 5V€J-®~µ%¶v•%®&-®~µ%¶v•%.?¯Ž&?-vµ}~-–v?% * Output from the serial terminal at the supervisor prompt (after pressing f12 after RISC OS has booted): *help > Help on keyword Help *Help <subjects> attempts to give useful information on the selected topics. Spe cial keywords include: Commands List all the available utility commands FileCommands List all the filing system-specific commands Modules List the module titles Syntax Explain the syntax message format *fx0 RISC OS 5.17 (19 Jan 2010) *help memory > Help on keyword Memory Memory displays the values in the memory in ARM words. Syntax: Memory P <addr1> [[|-] <addr2> [ <addr3>]] memory p 48004a40 + 4 |
Trevor Johnson (329) 1645 posts |
I’m following the above. Rather than create a new demo image (as I don’t have a 4Gb card to hand) I copied the necessary supplied files to a fresh FAT32 card. (In the order listed here .) I’ve createdboot.scr , after using ‘vi’ to remove the CRs in combi , which I’ve now learnt I should’ve used ‘tr’ for. The script executes but it claims to read 0 bytes of riscos :
Texas Instruments X-Loader 1.4.4ss (Aug 19 2010 - 02:49:27) Beagle xM Rev A Reading boot sector Loading u-boot.bin from mmc U-Boot 2010.03-dirty (Aug 20 2010 - 20:50:46) OMAP3630/3730-GP ES1.0, CPU-OPP2, L3-165MHz, OMAP3 Beagle board + LPDDR/NAND I2C: ready DRAM: 512 MB NAND: 256 MiB *** Warning - bad CRC or NAND, using default environment In: serial Out: serial Err: serial Probing for expansion boards, if none are connected you'll see a harmless I2C error. No EEPROM on expansion board Beagle xM Rev A Die ID #008e0000061000000156166b0a022005 Hit any key to stop autoboot: 3 2 1 0 mmc1 is available The user button is currently NOT pressed. reading boot.scr 435 bytes read Running bootscript from mmc ... ## Executing script at 80200000 Press USER button to enter RISC OS mmc1 is available The user button is currently PRESSED. reading riscos 0 bytes read ## Starting application at 0x80100000 ...Trying to interrogate the card from the validation image gives this: The Angstrom Distribution beagleboard ttyS2 Angstrom 2010.7-test-20100820 beagleboard ttyS2 beagleboard login: root root@beagleboard:~# df -h Filesystem Size Used Available Use% Mounted on /dev/root 63.0M 46.0M 13.8M 77% / devtmpfs 218.7M 172.0K 218.5M 0% /dev none 218.7M 172.0K 218.5M 0% /dev /dev/mmcblk0p1 239.2M 26.3M 212.9M 11% /media/mmcblk0p1 tmpfs 218.7M 28.0K 218.7M 0% /var/volatile tmpfs 218.7M 0 218.7M 0% /dev/shm tmpfs 218.7M 0 218.7M 0% /media/ram root@beagleboard:~# cd /media/mmcblk0p1 root@beagleboard:/media/mmcblk0p1# ls MLO combi riscos uImage boot.scr ramdisk.gz u-boot.bin user.scr root@beagleboard:/media/mmcblk0p1# du -csh * 24.0K MLO 2.0K boot.scr 2.0K combi 19.0M ramdisk.gz 4.0M riscos 206.0K u-boot.bin 3.0M uImage 2.0K user.scr 26.3M total root@beagleboard:/media/mmcblk0p1#If anyone can spot an obvious user incompetence error, please let me know. Otherwise I’ll get a larger card and follow Chris’s instructions to the letter! Thanks. |
Chris Hall (132) 3554 posts |
I know this may be silly but is the HDMI signal simply in power down mode? Could this be a side effect of diverting the supervisor prompt (temporarily) to the serial terminal? Be aware that there is an issue on the XM (revision A) that the ‘DVI power down signal is not operational’. Clearly there is a work around as the demo image for the beagleboard (the Linux GUI) has overcome this as pressing any key on the keyboard wakes up the monitor if it times out and the HDMI signal switches off. After all if the !Boot image is seen and executed correctly, RISC OS must think it is displaying a screen with no errors, and it then responds correctly to ‘f12’ giving a ’*’ prompt on the serial terminal. |
Chris Hall (132) 3554 posts |
Back to the Sony monitor MDM-M61 and a little more useful information: Out of scan range: 6.68kHz / 11 Hz So… there is a video signal but the clocks are even further out! Do you need another dump of memory and video settings (or will they just be the same?). |
Chris Hall (132) 3554 posts |
And doing a *Wimpmode 20command gives ‘out of scan 8.59kHz / 16 Hz’ on the monitor *Wimpmode 0command gives ‘out of scan 8.59kHz / 19 Hz’ on the monitor – that’s the highest I can get it :) Any bright ideas? |
Trevor Johnson (329) 1645 posts |
And Jeffrey’s too. |
Trevor Johnson (329) 1645 posts |
|
Dave Higton (281) 668 posts |
Only to list the possible problems, and a little observation. Either the video clock is being generated from too low a frequency (possibly the wrong clock, possible a clock that’s been set to too low a frequency), or the source is being divided down too much before being applied to the PLL, or the clock is subsequently being divided before use. My observation is that the line and field scan rates seem to be out by different ratios, which I can’t understand. That’s assuming we can believe the accuracy of the scan frequencies as shown by the monitor. I also can’t understand why the frequencies don’t seem to be a nice submultiple of the correct values. |
Chris Hall (132) 3554 posts |
With acknowledgment to Jason Kridner, and assuming: (working with http://www.epanorama.net/faq/vga2rgb/calc.html) Clock: 96MHzHFP (horizontal frontporch): 36HSW (horizontal sync): 201HBP (backporch): 676VFP (vertical): 5VSW: 9VBP: 44H freq: 49.56kHz (1024×768 VESA = 48.36kHz)V freq: 60Hz (matches VESA)timing_h: 676 << 20 | 36 << 8 | 201 = 0×1A4024C9timing_v: 44 << 20 | 5 << 8 | 9 = 0×02C00509thenOMAP3 beagleboard.org # mw.l 0x48050440 0x00018308 OMAP3 beagleboard.org # mw.l 0x48050464 0x1A4024C9 OMAP3 beagleboard.org # mw.l 0x48050468 0x02C00509 OMAP3 beagleboard.org # mw.l 0x48050470 0x00010002 OMAP3 beagleboard.org # mw.l 0x48050440 0x0001830b should produce 49.56 kHz / 60 Hz but it actually produces ‘out of scan 28.5kHz / 34 Hz’ on my monitor, a Sony SDM-M61, so the calculations must be flawed…. I don’t understand this, just hoping it will give some ideas. In the Beaglebaord documentation I can only see reference to 26MHz and 60MHz clocks, not 96MHz. Where does the 96MHz come from? |
Trevor Johnson (329) 1645 posts |
AM37/DM37x TRM ‘3.5.3 PRCM Clock Manager Functional Description’ (pgs 289-350)? Edit: Note, this doc is in Revision B (dated August 2010) |
Chris Hall (132) 3554 posts |
Page 305 says
DPLL4 generates clocks for the peripherals, supplying five clock sources: • 96-MHz always-on source clock for the PRM • 54-MHz to TV DAC • Display functional clock • Camera sensor clock • Emulation trace clock28.5/49.56 = 54/96 so could the actual clock be 54MHz?? Edit: red herring – this just accounts for uboot behaviour |
Jeffrey Lee (213) 6048 posts |
Trevor: Remember that there’s also my SD creator program to try. Although admittedly that won’t work if you want to create a card with multiple partitions (i.e. for the Angstrom/RISC OS dual boot).
They’ll be the same. (Well, they won’t be the same, but they will indicate the same thing – that nothing has gone wrong in the registers that the video driver alters)
Yes, it’ll be a problem like that. But the trouble is working out exactly where the problem is, since the OMAP clock tree is a complex beast. I’m currently looking through the |
Trevor Johnson (329) 1645 posts |
Thanks for the reminder. I don’t have USB on the RiscPC but now I’m overcoming the rev.C4 problems, I ought to be able to use it on that.
That’s OK. I’m not too fussed about that in the short term. |
Trevor Johnson (329) 1645 posts |
Extract from Table 7-19 (in ‘Display Subsystem Integration’, pg 1601): Clock Signal Attribute Module Frequency Comment DSS2_ALWON_FCLK Functional clock DSI PLL 12/13/16.8/19.2/26/38.4 MHz From PRCM: SYS_CLK Edit(s): Possibly not relevant either (but I don’t know what I’m looking for the way you guys do): “The DSI PLL is also used to generate the 74.25-MHz frequency used for HDTV applications.” – 7.4.4.1 DSI PLL Controller Overview, pg 1665. Also note ‘Figure 7-139. DSI PLL Programming Sequence’ (pg 1736) which refers to the setting of REG factors… and ‘7.6.3 How to Configure the DSI PLL in Video Mode’ (pg 1774) |
Jeffrey Lee (213) 6048 posts |
Those However, when checking the So now we just have to work out why the HSDIVIDER isn’t using the right clock… |
Pages: 1 2 3 4 5 6 7 8 9 10 11