Commit Graph
100 Commits
Author SHA1 Message Date
François Revol 55cf6de91b Fix passing flags from BoardSetup
* since we include BoardSetup earlier now, the TARGET_* flags were discarded. Use HAIKU_* instead.
* Add variables to hold the default entry point and the desired uimage OS emulation.
2012-05-18 01:22:50 +02:00
François Revol 61d7e75709 U-Boot ppc: Add missing sections to ldscript
* it seems we missed some sections that exist on ppc, add them.
* resulting binary runs a little further in QEMU but still screws up.
2012-05-17 23:52:35 +02:00
François Revol b011337e20 U-Boot: save passed FDT and call common code
* should work better this way :D
2012-05-17 20:46:46 +02:00
François Revol de1c936185 U-Boot: include board name in uimage header
* for clarity, include the board in the uimage name field, it's long enough.
2012-05-17 19:55:27 +02:00
François Revol 7663f51c66 U-Boot: Fix ppc build
* we have an uimage for the Sam460 \o/
2012-05-17 19:41:19 +02:00
François Revol e02218f140 Cleanup 2012-05-17 19:40:26 +02:00
François Revol 7e53f7bdc3 U-Boot: fix the guards
* mmu_init*() are used by cpu.cpp
2012-05-17 19:24:11 +02:00
François Revol 4ab5d2f998 U-Boot: Add a ppc ldscript
* mostly copied from the ARM one
2012-05-17 19:15:58 +02:00
François Revol 386671b4d0 U-Boot: Guard ARM-specific stuff
* those must be cleaned up and moved away
* allows building U-Boot loader for ppc
2012-05-17 19:10:10 +02:00
François Revol f5759f2e99 U-Boot: Add a Linux-type loader target
* those should be cleaned up. BoardSetup should tell which OS type to emulate.
2012-05-17 18:44:11 +02:00
François Revol f4bd3cda32 U-Boot: Fix comments and ppc build
* those are not ARM-specific.
* this asm code doesn't build for ppc, and is not really useful for ARM either.
2012-05-17 18:27:49 +02:00
François Revol 693b3532c7 Sam460ex: Add a Linux-type kernel entry point
* the onboard U-Booot and 2nd-stage loader only know a few OS types,
we'll try faking Linux there.
2012-05-17 17:36:19 +02:00
François Revol d86473dfb9 Cleanup U-Boot global data struct
* there are only a few members we can really rely on, the rest is compile-time dependant.
* don't use ARM-specific stuff.
2012-05-17 17:25:49 +02:00
François Revol e9ec7a55dd Attempt to factor out serial stuff
* introduce a DebugUART baseclass,
* rework 8250 and PL011 implementations from kallisti5 to inherit DebutUART,
* each arch should override the IO methods to access registers.
* on ARM registers are 32bit-aligned.
* U-Boot still works for the verdex target.
* rPi still compiles, needs testing.
* Still some more consolidation needed to allow runtime choice of the UART type (as read from FDT blobs for ex.).
* serial.cpp should probably mostly be made generic as well.
* didn't touch x86 or ppc yet.
2012-05-17 04:09:05 +02:00
François Revol 3af608ada5 Fix fossil SCM update command
* fossil update should do a pull on its own anyway.
2012-05-15 20:25:34 +02:00
François Revol 6f19b90aca Fix linking in static ctors
* It seems we also need to call them in the .init_array section.
2012-05-15 19:16:52 +02:00
François Revol 565039c149 Fix serial output for U-Boot code
* use a static buffer for allocation, as the heap isn't yet working.
2012-05-15 19:04:31 +02:00
François Revol 229e112eb4 Drop ARM-specific register pointer
* the global data is already stored in a variable from shell.S anyway when available
2012-05-12 19:50:03 +02:00
François Revol 5409323add Add empty C linux-style entry points
* On PPC, there are two different kernel entry signatures for Linux
2012-05-12 19:38:46 +02:00
François Revol 93a13fb071 No need to force TARGET_BOOT_PLATFORM now. 2012-05-11 18:23:15 +02:00
François Revol 3884764492 Include BoardSetup from BuildSetup
* while it seemed to work before, BuildSetup was actually adding includes from the default boot platform, before BoardSetup had a chance of changing it.
2012-05-11 17:53:30 +02:00
François Revol d1645229d1 Rename u-boot start2.cpp to start.cpp
* rename the file for consistency with other platforms.
* there used to be a start.S, long since renamed to shell.S anyway.
2012-05-11 03:14:49 +02:00
François Revol 6fe5c2f194 Fix u-boot ppc jamfile
* fix leftover openfirmware stuff from copy-paste.
* shell.S is still missing.
2012-05-11 02:49:47 +02:00
François Revol 0fa5c3d115 Add board config header for ACube Sam460ex
* the UART is hardcoded for now, ideally it should be set up from the address found in the FDT blob.
2012-05-11 02:31:57 +02:00
François Revol 935a9b24cf Add board definition for ACube Sam460ex
* It's a PowerPC embedded board that uses U-Boot.
* We don't want an SD image (yet?)
* tune for the ppc440 with soft-float for now.
2012-05-11 02:29:46 +02:00
François Revol 730a376b32 Hardcode the boot platform for the Raspberry Pi
* for now at least the board uses a custom boot platform.
This way one only has to define HAIKU_BOOT_BOARD now.
2012-05-11 02:17:38 +02:00
François Revol b8c19d314d Fix fossil checkout filename. 2012-04-21 15:28:48 +02:00
François Revol fce97ba360 Add support for the fossil scm
Rework scm tests.
Add a test for fossil checkouts.
2012-04-21 10:31:33 +02:00
François Revol 3b52696411 Fix gcc2 build. 2012-04-17 19:34:45 +02:00
François Revol 3f551e5c43 Expose the connected status
* Since we won't always have a client, expose the connected status from the HWInterface to other classes.
Currently only used to simulate DPMS state.
* Cleanup.
2012-04-13 01:26:46 +02:00
François Revol 599f30f93d Fix building the m68k kernel
* Restructured the vm support code to align with the changes done to other archs.
* Not completely finished, but the kernel loads and panics. I had this sitting on the disk anyway.
* Only support 040 for now, 030 will need to be added back.
* This commit is dedicated to Jack Tramiel who passed away away last sunday:
http://www.forbes.com/sites/davidthier/2012/04/09/computer-legend-and-gaming-pioneer-jack-tramiel-dies-at-age-83/
2012-04-13 00:53:09 +02:00
François Revol c7b10ca658 Fix shadows for the boxes
Not sure how to do the L shadow.
2012-04-11 13:22:01 +02:00
François Revol 9fd2efd72d Add the L glyph to the Links2 icon
Added a 3D-ish L glyph. This almost looks like the Links 2 icon but in 3D. I'm afraid I'll have to rely on stippi to fix the shadows.
2012-04-11 12:43:39 +02:00
François Revol 830c6e8d3c Add an unfinished icon for Links2 2012-04-11 04:10:12 +02:00
François Revol cffda6bf03 Add PPC to U-Boot bootloader support.
This should be useful for SAM440 and SAM460 boards for example.
The generic U-Boot code still has some ARM-specific parts that must be moved out though.
2012-04-10 18:41:41 +02:00
François Revol 75cc1dbd2e Typo. 2012-04-10 18:28:31 +02:00
François Revol e1b41a1a8c Add base64 decoding helpers to read ints
Some helper functions to read uint8, uint16 and uint32 (actually int32 it seems...).
Note the value is effectively read as big-endian.
2012-04-02 00:47:16 +02:00
François Revol c001665a7c Add a packed argument to encode_base64.
Reintroduced the '=' padding modulo 3 characters from the original code from the mail kit,
and a packed option to avoid it.
Broadway uses this packed scheme to save bytes when sending many separate values.
TODO: merge this with the mail kit one somewhere?
2012-04-02 00:47:16 +02:00
François Revol 8d33dc2971 An html5 <canvas> based drawing engine
This implements an html5 rendering engine.
Inspired by the Broadway GDK backend for Gnome.
Work in progress. For now it just connects and dumps debug output.
2012-04-01 11:04:41 +02:00
François Revol 2c3d4bf64a Change accessor name for consistency. 2012-04-01 09:05:07 +02:00
François Revol 28b813df23 Move callbackFunction type declaration into the class to avoid a name clash with future code. 2012-03-31 16:12:17 +02:00
François Revol 6371cd4dea Fix uninitialized warning. 2012-03-31 16:12:17 +02:00
François Revol 6552b1085c Fix a typo
This code will go away anyway, but fix it for reference.
2012-03-26 23:38:14 +02:00
François Revol be06c5a53c Build fix
Reuse haiku-utils_rsrc jam var from upper Jamfile.
2012-03-26 23:29:58 +02:00
François Revol a59d56fa36 gcc4 build fixes. 2012-03-26 23:22:49 +02:00
François Revol 8f5e824baa Return something from CFE entry point
Return something in case of mismatched signature.
Added some test code, the entry point didn't seem to be called at all during last tests.
2012-03-26 22:07:35 +02:00
François Revol aa29a30426 Fix cutting names of views containing spaces. 2012-03-23 00:37:29 +01:00
François Revol 34cfa02327 Dump actual mode count in vesa_accelerant_mode_count() debug output. 2012-03-22 23:59:56 +01:00
François Revol d4ad358195 Added 'devup' function to autoupdate projects
* scans projects for the AUTOUP tag in the .profile script.
* runs the $DEVUPCMD sequentially with the needed environment.
2012-02-23 02:39:09 +01:00
François Revol 9130cabf87 Cleanup
* separate unrelated code.
* remove "function" bashism.
* add a possible update command override variable $DEVUPCMD that is pushed to the history.
2012-02-23 02:38:22 +01:00
François Revol 430fc0e90c Fix build for !x86 && !ppc
At least this should fix other platform builds to the point they worked before.
The ICU_DEVEL zip name assign was moved inside the if block, making it empty for other archs, and ExtractArchive was of course having issues with this.
So I moved the rest inside the if block as well. Should fix at least kernel builds.
2012-01-05 03:30:10 +01:00
François Revol 577d81a9b6 Add proper error on ExtractArchive with missing filename
The * case was not generating any message due to empty string expansion I suppose...
2012-01-05 03:30:10 +01:00
François Revol 8e977a874f M68K: Only enumerate ST modes as fallback. 2012-01-05 01:44:38 +01:00
François Revol 595938e710 M68K: Don't trace mmu boot code anymore 2012-01-05 01:44:37 +01:00
François Revol 68aea33966 Try another load address for PPC CFE loader.
This is the address the OpenFirmware is loaded to by CFE on the Amiga X-1000.
Doesn't seem to help much though.
2012-01-05 01:03:28 +01:00
François Revol 781fd13550 Style fixes. 2011-12-23 17:08:03 +01:00
François Revol a90b9b0221 Guard against buggy PCI bridges
* panic on pci controller init failure. No reason to continue just to crash later on.
* guard against buggy or misconfigured bridges (like the VIA Apollo MVP3 in my K6-2)
by limiting the recursion depth in FixupDevices and DiscoverBus.
2011-12-23 16:58:58 +01:00
François Revol 78ce5eb732 Add a pci:mechanism driver setting
* This should be use to force a config mechanism in case another one crashes.
* Actually doesn't seem to catch the setting passed by the boot_loader,
maybe it should be pci_config_mechanism in safemode instead ?
* Added a TODO about respecting the "don't call the BIOS" setting.
2011-12-23 13:55:23 +01:00
François Revol 8408920712 Fix rect calculation.
Not sure what the intended height is though. 16 or 17?
2011-12-07 03:05:58 +01:00
François Revol 09a0999c68 Style fix
Yes, I do need to change my glasses.
2011-12-07 02:49:43 +01:00
François Revol cee4855acb Better calculation of the Deskbar replicant size
Patch by RQ from ticket #8156 that accounts for the workspaces layout.
2011-12-07 01:24:09 +01:00
François Revol 30fc876c38 Only use PCI strings for x86 for now. On m68k at least those make the boot tgz exceed the floppy image size.
Maybe this should be moved to BuildSetup, or just discarded, they are only used for printing vendor names at boot...
2011-12-05 00:41:34 +01:00
François Revol c5382e2ca4 Style fix 2011-11-30 13:41:00 +01:00
François Revol fc111138a9 Add an option to live in the Deskbar
* Apply reworked version of the patch from "RQ" in #8156 that adds a "live in the deskbar" menu item.
* Also added a "Remove replicant" menu item for the replicant case.
2011-11-30 01:52:23 +01:00
François Revol 99fc86822b Add WebWatch to the image, as it just works 2011-11-30 01:50:27 +01:00
François Revol a8eaac6934 U-Boot: board-specific setup is already in build/jam/board/ 2011-11-22 02:27:11 +01:00
François Revol 75e4ff02d0 Style cleanup 2011-11-21 03:19:31 +01:00
François Revol 1cdb5905fc U-Boot: Print the panic message also to the serial port
It seems puts() currently hangs when used in panic(), will need some more work.
2011-11-21 03:00:07 +01:00
François Revol 70ac17baab U-Boot: Cleanup; s/arm/$(TARGET_ARCH)/g
U-Boot is not only about arm...
2011-11-21 01:36:43 +01:00
François Revol d1460ff57b ARM: Rename flash and mmc base generic targets
They are not so much arm-specific, really.
We now have haiku-flash-*image variations,
and haiku-mmc-image.
2011-11-21 01:30:02 +01:00
François Revol 1d6f7e86ee ARM: Use proper Jamfiles for u-boot/arch/ subdirs 2011-11-21 01:22:32 +01:00
François Revol e3591817b3 ARM: move kernel calling code to arch specific file
* needs some more cleanup.
* had to change gUBootOS to 32bit to avoid a linker bug.
2011-11-21 01:22:32 +01:00
François Revol 345c3b6c39 Some pointers about porting to iPaq devices since I have one now 2011-11-17 15:07:36 +01:00
François Revol 478dc9887e PPC: Preliminary untested boot support for Common Firmware Environment
CFE is used in the upcoming Amiga X-1000 dualcore PPC board.
* Largely inspired by the OF and U-Boot code.
* Still largely stubbed out.
* The loader builds but I don't have a machine to test it. Anyone interested?
2011-11-14 01:31:50 +01:00
François Revol 9638d7f4aa ARM: Use the serial port as console for now, as VT100.
* Subclass ConsoleNode as VTConsole
* use it to implement SerialConsole
* Use it as the default console for now to simplify debugging.
VTConsole could probably be factored out into boot/platform/generic/ someday.
2011-11-12 23:58:56 +01:00
François Revol b33a1b1c5f PowerPC platform might not always be OpenFirmware 2011-11-12 23:46:40 +01:00
François Revol 9e5b2c347a Fix typo. 2011-11-12 17:35:02 +01:00
François Revol fdb0863fbe Fix some warnings: use accessor functions instead of deprecated struct fields.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-06 00:39:38 +00:00
François Revol 9b74cc6637 Further reduced the region allocated for the uncompressed data to 8 MB.
Wastes a bit less time allocating pages for nothing, and makes debugging
mmu support less verbose as well.
The (gunzipped) tar file is still less than 4MB and will never be 8MB
realistically anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-04 17:54:31 +00:00
François Revol e5081da48c Large cleanup of the bootloader shell code. Replaced the x86 comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-04 17:22:01 +00:00
François Revol da3e694679 Fix building without USE_PCI_HEADER defined.
Btw, do we *really* need this ? removing it saved 1MB in the pci bus_manager binary,
and makes it possible again to use 1.44MB floppy images...
Besides the only people who woul'd ever see the output (in syslog) are those who know
how to look the IDs up anyway. listdev and Devices have their own copy of those strings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 22:28:19 +00:00
François Revol a4b79a647b Allow up to 2MB for the kernel, since it's already over 1MB.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 02:48:33 +00:00
François Revol e88ace8082 Leave a bit more room for the boot drivers tgz archive, but sadly it's not enough.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 02:42:27 +00:00
François Revol 983b0dfa95 Fix building libroot on m68k.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 02:41:14 +00:00
François Revol 450297cbd1 Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 01:13:09 +00:00
François Revol b29bbc9a80 Fix the bootloader build for m68k.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 01:09:49 +00:00
François Revol f239fdf6b8 Some more 68k mmu definitions I forgot to commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 01:05:54 +00:00
François Revol afa453ee2a Make the page table types scalar, to make them simpler to use with atomic ops, and define the corresponding bitmasks.
While structs looked cleaner at first sight, it didn't really was any simpler.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 22:56:20 +00:00
François Revol 561696cbfc TODO list for the m68k port, for when I fix the kernel build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 14:51:15 +00:00
François Revol 1bf8552a7b Added an optional package for dmidecode <http://www.nongnu.org/dmidecode/>, which provides useful information from the BIOS, including motherboard vendor and name.
Source package is at http://revolf.free.fr/beos/dmidecode-2.11_haiku-2011-11-02.tar.xz


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 13:19:39 +00:00
François Revol 378601a77e Make sure /dev/mem is published before using dmidecode as the current version doesn't use /dev/misc/mem (pending patch to fix it). This allows to fill in machine vendor and name automatically and more precisely.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 13:13:08 +00:00
François Revol 9ea67ec09d Update comment; SCM URI schemes are handled by checkitout.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 10:44:15 +00:00
François Revol f9ce367963 Add some URI schemes to the list of suggested new ones to support.
Added support for the useless about: URI scheme, which asks an app with the provided signature its about window, or launched AboutSystem.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 10:25:32 +00:00
François Revol 046dcae9c8 Make the TV app support the IANA-registered tv: URI scheme, so at least it launches when you "open tv:" in Terminal.
cf. http://tools.ietf.org/html/rfc2838
Yeah I know it's useless but so l33t.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 09:42:05 +00:00
François Revol f558ec135a Fix header and class name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 08:56:25 +00:00
François Revol 7014f7f3e4 Fix method name in trace.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 21:29:19 +00:00
François Revol 8fe82997ba Some more tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 18:59:47 +00:00
François Revol f6fbf32a02 Dump the 68040 mmu registers before touching them.
Added a comment about the Milan clone which uses the mmu in the BIOS to emulate Atari hardware, and the Transparent Translation registers to map the PCI bus, which screws up with our current code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 18:58:18 +00:00
François Revol 71f92c6439 Check for and use dmidecode if present, to get the exact vendor and machine identification, which should be much more reliable than the user.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 15:02:06 +00:00
François Revol e5712f7bf8 Fix constness to avoid warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 10:55:34 +00:00