History log of /haiku/src/system/kernel/platform/openfirmware/openfirmware.cpp
Revision Date Author Comments
# cbb88108 05-Oct-2023 Yn0ga <ynoga@protonmail.com>

Various PowerPC fixes

* Removed atomic operations placeholders for modern ones
* Fix chrpscript & hfsmaps location for CDBootImage (haiku-boot-cd target)
* add of_blocks & of_blocksize openfirmware call

Change-Id: Iaaddc2c566d108976ac5e5e08caea1fc59523e06
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6987
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 5f86d837 14-Mar-2020 PulkoMandy <pulkomandy@pulkomandy.tk>

openfirmware: fix of_seek for 64bit systems

The position is on 2 cells even on 64bit systems.

Change-Id: I97f4e3fc02734c548ed23445a917a894ff548379
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2351
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 95958839 27-Oct-2019 PulkoMandy <pulkomandy@pulkomandy.tk>

openfirmware: more fixes for 64bit systems.

Gets call-method working for sparc, and fix more places where we
accidentally truncate 64bit values or sign-extend 32 bit ones.

Change-Id: Ic79c55ffa8d2b475858def1639004412f17dd0c1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1986
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# d5cd4a9d 03-Apr-2019 PulkoMandy <pulkomandy@pulkomandy.tk>

openfirmware: adjust for 64bit

Sparcv9 runs Openboot in 64 bit mode, which means the cell size is
64bit. Use intptr_t where appropriate to make the open firmware calls
work.

Beware, some values are still 32bit, this matters for example for
of_getprop, if you get 32bits into a 64bit variables it will be in the
MSB of it (big endian only weakness...) and confuse things. See for
example in console.cpp, where the input and output handles are retrieved
as 32bit values. It seems wise to check the expected size when using
of_getprop in these cases, instead of just checking for errors.

Change-Id: Ie72ebc4afe7c6d7602a47478f0bfb6b8247004b8
Reviewed-on: https://review.haiku-os.org/c/1369
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# d0ff1a1f 03-Apr-2019 PulkoMandy <pulkomandy@pulkomandy.tk>

openfirmware: fix mismatched prototype

Change-Id: I294608aa739bedef47c6c1f34fba0241444a8901
Reviewed-on: https://review.haiku-os.org/c/1363
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# b62981b9 27-Jun-2010 Andreas Färber <andreas.faerber@web.de>

OpenFirmware: Make of_milliseconds() return error

The only user of of_milliseconds(), the boot loader's system_time(),
checks for an error that would never be signalled since the zero-initialized
number of milliseconds would always be returned.

Return OF_FAILED instead to allow explicit error handling in that case.

While this is a behavioral change, it is not yet a functional change,
for system_time()'s implementation translates OF_FAILED back to zero currently.

Resolves part of ticket #6061.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37279 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd185b41 01-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

*.c -> *.cpp


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34417 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b62981b983166e048ce049de8405875f148af6f2 27-Jun-2010 Andreas Färber <andreas.faerber@web.de>

OpenFirmware: Make of_milliseconds() return error

The only user of of_milliseconds(), the boot loader's system_time(),
checks for an error that would never be signalled since the zero-initialized
number of milliseconds would always be returned.

Return OF_FAILED instead to allow explicit error handling in that case.

While this is a behavioral change, it is not yet a functional change,
for system_time()'s implementation translates OF_FAILED back to zero currently.

Resolves part of ticket #6061.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37279 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd185b4117e06c1674c4d214abc3917acedc560d 01-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

*.c -> *.cpp


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34417 a95241bf-73f2-0310-859d-f6bbb57e9c96