Commit Graph

9442 Commits

Author SHA1 Message Date
Stefano Ceccherini
8efc947242 Ordered SubIncludes (thank you Jerome)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-13 16:05:48 +00:00
Michael Lotz
9f6dd24974 Don't try to do another request sense if the failing operation already was a
request sense. Otherwise we can easily run into an infinite recursion. Should
fix #8022.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-13 15:54:40 +00:00
Michael Lotz
e436a27e5f * Add preliminary support for one SandyBridge mobile integrated graphics device
(the one in my new ThinkPad X1). The PLL is still off a bit so it has a few
  blurry stripes, but EDID and mode setting basically works.
* Starting with IronLake the north/south bridge or (G)MCH/ICH setup was moved
  into a platform control hub (PCH) which means that many registers previously
  located in the GMCH are now in the PCH and have a new address.
* I'm committing this mostly because this way the additions are more easy to
  follow. It is a bit messy and I'll clean it up more and possibly make it a
  bit more generic. Also most of these changes actually apply to IronLake and up
  and aren't SandyBridge specific, so a few of those additions will still get a
  broader scope and new chips will be added.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-13 09:07:33 +00:00
Michael Lotz
c6e876fc85 Tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-13 08:43:56 +00:00
Stefano Ceccherini
79e3f9012d HPET driver for testing HPET code more easily.
Seems to work correctly on real hardware, not on qemu where it
can only use the irq 2, and this causes wreakage (could be a programming error).
Changed from the kernel code:
- Adapted to use as a driver
- Configure for level interrupts instead of edge, which seems not to work correctly
- Add traceing dprintfs
- Various other changes
Does not use yet the new interrupt api introduced by Michael Lotz.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-13 08:20:10 +00:00
Alexander von Gluck IV
e774cb4b0a * style fixes
move quite a bit of code away from var_var format
* #if 0 some not-yet-ready r500 code
* no real functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 22:04:41 +00:00
Alexander von Gluck IV
6b49ba8931 * style fixes, no functional change...
frev / crev to tableMajor / tableMinor
  size to tableSize
  offset to tableOffset


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 21:21:45 +00:00
Alexander von Gluck IV
6b0b621be9 * style fixes, no functional change...
automatic crtc_id -> crtcID
  automatic pll_id -> pllID
  automatic encoder_id -> encoderID
  automatic connector_index -> connectorIndex
  automatic encoder_flags -> encoderFlags


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 20:45:49 +00:00
Alexander von Gluck IV
dc223cc5a0 * style fix
ensure bitwise ands are compared to 0 or non 0 as per Axel


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 20:28:37 +00:00
Alexander von Gluck IV
7934da0f09 * add *very* preliminary dpms support
we will need to query the card dpms state
  for each monitor at a later date


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 19:36:47 +00:00
Alexander von Gluck IV
042bdcc0d2 * complete pll_set for all AtomBIOS revisions
* add update of crtc encoder scratch registers
* rename id for more descriptive crtc_id
* encoder dpms, BL on/off on lcd


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-12 17:24:15 +00:00
Alexander von Gluck IV
14493b1ecb * quick style fix before I forget, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 22:32:45 +00:00
Alexander von Gluck IV
e7d0abae23 * move pll info into pll_info struct.
* reduce the number of unique storage uint32's


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 22:23:31 +00:00
Joseph Prostko
4431610388 * Commenting out tracing, as before. Sorry about re-enabling it accidentally.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42825 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 18:13:36 +00:00
Joseph Prostko
7c7c2f12c1 * Fix build due to missing comma in r42823
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 18:10:20 +00:00
Alexander von Gluck IV
44db4996ae * better tracing of modeline sanitization for #8001
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 17:39:43 +00:00
Siarzhuk Zharski
522a82beb6 SiS190/191 NIC driver moved from the development branch to the trunk
to be available for using during build. It was requested by Frederik Modeen.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 14:59:28 +00:00
Siarzhuk Zharski
2191dfe4bd * Check the KBC command byte for kbd disable bit during keyboard probe and clean
it in case it was set "on".
* Tracing added for the case of ignoring interrupt with not active OBF status bit.

Fixes #7973 #6313



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-11 14:00:32 +00:00
Alexander von Gluck IV
82720f1cd0 * move pll info onto encoder
* add atombios PLL adjustment code
* add initial PLL clock flags


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-10 18:07:53 +00:00
Alexander von Gluck IV
1fca5eaf11 * detect hdmi and tv and set as such
* set encoder flags the same as connector flags
* add curly comments to make troubleshooting clearer
* program encoder dpms scratch registers


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-10 16:46:22 +00:00
Alexander von Gluck IV
936aec7461 * remove some legacy code
* don't init asic unless needed
* do dpms by hand on mode set
* detect tv and skip during detection for now


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 22:04:07 +00:00
Alexander von Gluck IV
d0509b7eb9 * move encoder info into own struct
* rename some connector / encoder struct members
* improve debugging in connector / encoder
  AtomBIOS walking


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 19:51:59 +00:00
Alexander von Gluck IV
17b66d8250 * add digital encoder setup code
* make encoder setup functions return status_t
* really need a struct to hold encoder info


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 19:10:56 +00:00
Philippe Houdoin
d41559757e Expand usb_raw ioctl to support retrieving full usb configuration descriptor from userland, not only the header part.
I try to keep UBSConfiguration binary compatibility, but proofreading is welcome.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42812 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 15:15:15 +00:00
Alexander von Gluck IV
ffb494caeb * add encoder DPMS code
* flip encoders on during modeset.
* crt0 status keeps getting higher and higher which is a good sign.
  the more bits that are set, the closer to a successful lock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-05 04:45:54 +00:00
Alexander von Gluck IV
b54c811990 * add encoder code to handle setting up and adjusting encoders
* reorganize mode set code to match layout of linux DRM driver
* add initial DPMS code
* add lots of TODOs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-05 04:25:50 +00:00
Alexander von Gluck IV
7c91a33c84 * RIP Radeon register banging
Remove old non-atombios code
* add encoder.c and encoder.h to handle
  encoder management
* fix pll code to use encoder object id
  vs crtcid


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42797 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-03 00:59:44 +00:00
Alexander von Gluck IV
f35af704c8 * use bit-banged edid for monitor ranges
* add function to set encoder to crtc
* clean up some comments


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-03 00:15:04 +00:00
Alexander von Gluck IV
39bc159e6e * small bit of common i2c / ddc white space cleanup
* small bit of tracing cleanup
* no functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-01 03:11:21 +00:00
Alexander von Gluck IV
ae347a6ce0 * squash a *silly* bug
don't set up a pointer and not malloc it.
* small cleanups to radeon_hd i2c bit-banging code
* i2c bit banging is now functioning


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-01 03:07:33 +00:00
Alexander von Gluck IV
70b41cd671 * improve Nothern Islands PCI ID information using FreeBSD
list of Radeon HD Cards
* break tradition of sorting by chipset id because they really
  are not in any kind of order.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 20:25:05 +00:00
Matt Madia
ac592b5638 Fixed the build under Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 01:11:24 +00:00
Axel Dörfler
f9a7bd8e55 * install-test-apps is now running through again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 23:19:49 +00:00
Axel Dörfler
e373834fe9 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 22:48:46 +00:00
Axel Dörfler
fbe9bdf095 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 22:47:46 +00:00
Alexander von Gluck IV
f61b3e2026 * there's one 'l' in Philips
* no functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 15:08:44 +00:00
Alexander von Gluck IV
495a05fa9f * reading through i2c specs, little comment cleanup
* add a few notes for future i2c bit-bangers
* cleanup of tracing
* no real functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 15:03:49 +00:00
Alexander von Gluck IV
dd29505893 * remap GPIO pin storage to global struct as they really aren't tied to
a connector. (thus allowing for future non-ddc gpio devices like fan speed)
* map all i2c gpio pins on accelerant init
* use a smaller sub function to attach gpio info to connector i2c info


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42773 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-27 21:34:28 +00:00
Alexander von Gluck IV
4a0f028c4d * perform some i2c cleanup from xorg ati driver
* read gpio pins back after setting them to improve reliability


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-27 20:08:46 +00:00
Alexander von Gluck IV
2ce1337c71 * fix several i2c communication bugs
dealing with i2c register addresses.
* cleanup i2c hacks
* now receive the following message in SimNow:
  "No device present at I2C slave address 0x66"


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-26 16:50:29 +00:00
Clemens Zeidler
6c5757eedb Check if the socket has been created successfully.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-23 02:11:32 +00:00
Clemens Zeidler
a8e3ae78c9 Switch to BWeakReference class. Hope this does not break anything. Calling virtual destructur on a struct
should work fine, right?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-22 22:46:14 +00:00
Alexander von Gluck IV
e40c00685c * correct some naming after deeper investigation of
linux drm driver.  Seems radeon_hd isn't limited to the
  standard 0xa0 i2c slave address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-21 21:36:00 +00:00
Alexander von Gluck IV
6655050606 * style fix
* clean up int types
* curly brace cleanup
* move vars away from top of functions
  when possible
* split DDR timings to seperate header to
  avoid warnings on unused items
* quite a few automated changes, please excuse
  things within diff still not fixed / incorrect


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-20 13:39:40 +00:00
Alexander von Gluck IV
6fca1a84fc * fix header function define
* while doing our last-resort fallback, skip
  TV DAC encoders as it is likely that is not
  what the user wants. This may need to change
  as the driver matures. (ex: only a tv is
  connected, no edid)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-20 12:47:47 +00:00
Siarzhuk Zharski
1724ebde55 usb_asix driver refactoring:
* work with multicast filter table implemented;
* new device lookup and creation procedure: avoid duplication 
  of supported devices information;
* coding style fixes;
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-18 16:47:47 +00:00
Alexander von Gluck IV
117e135799 * ddc still giving 128 bytes of 0's
* add code to check if 0 valid displays were found
* if 0 edid's were found, we inject the first connector
  as a last resort... SimNow seems to be ok with this and
  I get a valid screen mode set :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-18 15:29:24 +00:00
Siarzhuk Zharski
b1312c5c64 Updating vt612x and jmicron2x0 drivers to FreeBSD Release 8.2 sources.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-14 18:11:04 +00:00
Alexander von Gluck IV
54c0390b90 * remove un-needed i2c_bus on each connector... we simply set this up each time
it's needed using the gpio information
* rename gpio information struct to be cleaner and shorter
* add function to debug found connectors
* set gpio mask to 1 vs the defined mask... this seems to get us closer
  to working ddc / edid per connector
* change gpio_info u16's to u32's to ensure we aren't overflowing anything
* fix bug always setting hw_capable true
* change TRACE to ERROR to always show debug data when called


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-14 15:40:30 +00:00
Siarzhuk Zharski
288723f429 Bringing usb_davicom to life: part 3 of 3:
* Lot of code refactoring and code style fixes;
* Promiscuous mode implemented;
* Multicasting support implemented;
* Binary-search devices table lookup procedure used
  instead of switch one.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-12 19:42:52 +00:00
Siarzhuk Zharski
b337f35c45 Bringing usb_davicom to life: part 2 of 3:
* This part is just fixes to let the driver work. I have decided
  to separate this changes just for Adrien's information because 
  final version will be refactored significantly.
* The fixes:
  - Endpoint 3 acknowledgements must be enabled in USB Control Register
    to let async notifications work;
  - Functions to handle MII registers and MII initialization routines
    are implemented and used;
  - Sending WRITE1_REGISTER request typo was fixed;
  - Small typo in queueing RX iovec fixed: we are receiving 2 blocks not 1;
  - one byte size padding is required in case TX packet length is multiple 
    of pipe max packet size;
  - StopDevice procedure implemented;
  - StartDevice procedure fixed;

* Code style fixes are coming soon. Please be patient.  



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-12 19:35:28 +00:00
Siarzhuk Zharski
ed2e27f066 Bringing usb_davicom to life: part 1 of 3:
* Unfortunately I have to rollback r42712 completely because it was 
"the attempt in the wrong direction" and the working version was already
implemented on top of previous revision. Just fixed version and code style
refactored one are coming soon. Please be patient.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-12 19:19:11 +00:00
Alexander von Gluck IV
3cd033a15c * i2c locking should happen just before reading the edid
locking and unlocked on every bit read sounds excessive
* set vdif and vdif size to NULL... they really aren't needed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 23:26:12 +00:00
Alexander von Gluck IV
f6be39e0ae * correct naming error. (a shift is a shift until you use it.. then its a mask)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 21:34:06 +00:00
Axel Dörfler
57f2ed7eb3 * This should fix the GCC4 build (we should really try to eliminate those tiny
include differences between our compiler setups).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 20:16:09 +00:00
Axel Dörfler
654613b661 * Implemented intel_propose_display_mode() using the new helper functions.
* In intel_set_display_mode(), we now use the sanitize_display_mode() method
  directly in order to see if the mode is valid (it's valid when it doesn't
  need to be altered anymore).
* This should be the final nail on ticket #7419.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 18:32:56 +00:00
Axel Dörfler
83187b29d3 * Added helper functions for the "propose mode" accelerant hook.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 18:29:50 +00:00
Alexander von Gluck IV
b053beab99 * refactor GPU i2c bit-banging code to be correct using drm as reference
* add i2c locking code that represents common things we need to do before
  and after access


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 18:20:41 +00:00
Alexander von Gluck IV
d06251a95a * make ERROR define to always show AtomBIOS parsing errors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 17:15:14 +00:00
Axel Dörfler
8a0a741db6 * Added missing but very common 1920x1080 resolution at 60Hz refresh. This
should help with #7419.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-11 12:21:33 +00:00
Alexander von Gluck IV
f6766f291e * rework i2c read / write to make sense using values provided
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-09 19:43:09 +00:00
Alexander von Gluck IV
f3ccbf7121 * document GPIO values better based on AMD docs
* no functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-09 18:45:38 +00:00
Alexander von Gluck IV
c3ec7fedec * bug fix in AtomBIOS data table parser, incorrect int size causing issues
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-09 17:09:04 +00:00
Alexander von Gluck IV
a9d08e5e27 * adjust error to make more sense
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-09 15:44:27 +00:00
Alexander von Gluck IV
a8b357c747 * run edid check on all connectors regardless of encoder
* correction to output check (B_OK != true)
* check for invalid gpio (prevents seg violation)
* tab cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-08 22:11:20 +00:00
Alexander von Gluck IV
6b8f21461e * change c to cpp to resolve C89/C99 issue. (thanks Deadyak!)
* changing to cpp uncovered a few bugs in ide_adaptor
* correct losing signed integer
* correct a variable name that conflicted with a type
* gcc2 build now fixed after r42724


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-08 15:47:25 +00:00
Alexander von Gluck IV
51928f9997 * make ata/ide channel pretty names more descriptive
* verified nothing in the source tree references "IDE PCI"
* line length fixes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-08 03:15:37 +00:00
Alexander von Gluck IV
b5fc0237e1 * add i2c/ddc info storage to connector
* add edid info storage to display
* pass i2c/ddc information to common i2c code
* add code to read/write i2c/ddc
* i2c/ddc read/write code works 'in theory', needs tested
* detect monitors based on presence of edid on connector


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-06 23:00:07 +00:00
Alexander von Gluck IV
440381c60f * rename video_electronics to video_configuration as per Axel
* rename decode_* to get_*
* clean up get_* text when unknown connector/encoder


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-06 16:01:33 +00:00
Adrien Destugues
9bf2d48690 Some more work on usb_davicom driver :
* Setup the interrupt endpoint on device setup, not start
 * Fixup some flags I was setting wrong
 * Add even more debug traces


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-03 20:11:27 +00:00
Alexander von Gluck IV
cfda569d7f * add function to set up i2c bus for connector
* few tab fixes
* add Axel as author as the base i2c stuff is from intel_extreme


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-02 21:11:01 +00:00
Alexander von Gluck IV
a88394e56e * find GPIO pin connector i2c is on for DDC / EDID
* add i2c_bus to connector information


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-02 17:47:14 +00:00
Alexander von Gluck IV
f78f38a51c * rename wimax driver directory to wwan to be more generic
* given the rise of other 4G wwan technology such as lte, this
  seems cleaner and better matches wlan directory for wifi.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-02 16:27:35 +00:00
Alexander von Gluck IV
e53d637520 * reformulate display and connector storage to match AtomBIOS requirements
* each active gDisplay references a gConnector index
* add atombios DAC sense.. this really won't be the main call used...
  AtomBIOS expects you to attempt an EDID read to detect connected displays
* remove old manual DACSense
* next we attempt to add ddc / edid


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-01 15:27:57 +00:00
Jérôme Duval
67eb6cdee8 * extracted some private methods to have a more readable code
* fixed negative parameter values handling
* clean up and method shuffle


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-30 22:10:46 +00:00
Jérôme Duval
f7ca82dc00 Read the previous descriptor pointer before freeing transfer and transfer descriptors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-30 20:46:07 +00:00
Philippe Houdoin
a46e462db9 * Fix the "USB USB Webcam" name: now generic UVC USB webcam will be named, well, that:
Generic UVC USB Webcam.
* Added my own Logitech HD Pro C910, which publish a compound device class, not an UVC class.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-27 05:54:55 +00:00
Jérôme Duval
51a01ea03b Patch from Gabriel Hartmann for his GSoC UVC project. Coding style updates by myself. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-25 16:36:48 +00:00
Alexander von Gluck IV
b81f42ecbc * complete encoder detection
* need to break out connector and encoder addition into seperate functions as
  the linux kernel did... that function is getting pretty large and deep.
* my card seems to map everything as TV DAC or TMDS... weird.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-24 14:49:31 +00:00
Alexander von Gluck IV
2c062f84e5 * as we are doing a lot of math on bios in gAtomContext, lets make it a
uint8 vs a void pointer.
* guys at AMD confirmed that the method looking directly at the object table
  should be the only method used on modern cards (r600 or later)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-24 04:28:46 +00:00
Siarzhuk Zharski
d1e1709087 * ipro1000 driver updated to FreeBSD 8.2 level:
it incorporate now "em" and "lem" freebsd drivers.
  Note: if_igb is not used - too much "undeclared"
  stuff required from the compatibility layer. :-(



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-23 18:54:25 +00:00
Jérôme Duval
77660b03e8 * threshold higher bit means a full frame. Also use the threshold for micro frames instead of frames.
* introduces fNextStartingFrame to keep track of the next frame to use on next submit.
* set the IOC bit for the last ITD
* computes multiply field of the ITD based on the packed size (1, 2 or 3).
* use locking around linking of ITD
* free descriptors on errors
* on finishing, whenever a non success status is found, set actual length to zero
* on finishing, when copying data to the Transfer object, copy starting on packet boundaries (skipping unused bytes).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-23 18:36:57 +00:00
Alexander von Gluck IV
77b301cb8b * tab fix, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 22:04:34 +00:00
Alexander von Gluck IV
ec89b98617 * remove excess NULL check
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 22:03:36 +00:00
Alexander von Gluck IV
aee8efc244 * add gConnector for card connector storage
* add detect_connectors to detect card connectors
* add infinitely compex detect_connectors_manual
  (used when detect_connectors fails)
* add missing AtomBIOS header


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 21:21:36 +00:00
Alexander von Gluck IV
583110831e * remove tracing on AtomBIOS parser
* fix a few compile issues when tracing is disabled


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 21:10:24 +00:00
Alexander von Gluck IV
3671476941 * add video_electronics.c
(.c to keep compatibility with older C accelerants)
* use functions for decoding video_electronics
* thanks for the guidance Axel!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42668 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 17:30:55 +00:00
Siarzhuk Zharski
fab63078c9 No functional changes. Code style violations fixes. Thanks to Axel for pointing out.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 16:56:16 +00:00
Philippe Houdoin
c3688b17e9 Fix gcc 4.5.2 build (unused static function is now an error).
No functional change, sorry.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 14:02:58 +00:00
Siarzhuk Zharski
283db26d5c * FreeBSD compatibility layer for network drivers is modified to handle
NULL-terminated list of driver_t* entries instead of single entry.
  That allows to combine multiple FreeBSD drivers into single Haiku
  driver add-ons;
* Support for DEC 21140 (Tulip) chipsets (provided by the 'de' driver) 
  incorporated into dec21xxx driver. That brings network connectivity to 
  Haiku systems running in MS Virtual PC VMs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42658 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 12:45:12 +00:00
Alexander von Gluck IV
20fbef1e74 * a few additions to the PCI ID list
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-21 02:57:07 +00:00
Alexander von Gluck IV
11390ce010 * correction to AtomBIOS register loopback calls
* cail calls have their registers multiplied by 4
* solves infinite loops


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-20 14:29:06 +00:00
Alexander von Gluck IV
d3e8b64208 * introduce mc control calls
* malloc storage for mc state info
* redo pll range struct
* change to ATOM_ENCODER_MODE for connector info
* redo pll calculations to match AtomBIOS requirements
* some structure changes
* no longer init already posted AtomBIOS as it
  causes an infinite loop of AtomBIOS calls


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-19 23:07:45 +00:00
François Revol
03e3327d33 Add some tracing of PCI device reservations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-19 12:18:32 +00:00
Fredrik Holmqvist
fcb8a5cb4e * Updated ACPICA to 20110623.
See http://www.acpica.org/download/changes.txt done after 2010-10-13 for info on ACPI changes.
 * Adapted the embedded controller to match current FreeBSD one.

There will probably be some issues with these changes initially.




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-17 19:16:21 +00:00
Alexander von Gluck IV
7a2bb2b04c * backport a missed endian change
* clean up some tabs and spaces


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-12 02:04:32 +00:00
Alexander von Gluck IV
5cdfd17b4b * backport some additional linux atom parser fixes
* backport fixes to ATOM_IIO_MOVE_ register offsets
* small bit of style correction


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-12 01:00:34 +00:00
Jérôme Duval
425eff67d6 Locking around descriptors list handling isn't enough, locking is also needed when traversing the list: we instead lock the whole traversing/handling loop.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-11 17:32:14 +00:00
Alexander von Gluck IV
a823207363 * add card instance to accelerant shared info
* when TRACE_ATOM is enabled in bios.c, we dump
  each accelerant instance of the AtomBIOS rom
  to disk in /boot/common/cache/tmp/ (next to usb
  hid descriptors in the same file name format)
* these images can be parsed with the AtomDis application


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-11 05:17:34 +00:00
Alexander von Gluck IV
93d4d55295 * a few small style fixes to last commit
* no functional change


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 15:51:00 +00:00
Alexander von Gluck IV
d356bf5033 * consolidate and remove unneeded Xorg headers
* move mc code to more generic gpu source/header
* add gpu reset functions (with r600 documented)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 15:48:20 +00:00
Matt Madia
591d9620b5 Updated (TM) to (R). No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 00:10:58 +00:00
Matt Madia
10bc147290 Automatic whitespace cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 00:08:43 +00:00
Alexander von Gluck IV
336835776b * clean up tracing and exit gracefully to vesa if
we can't locate an AtomBIOS for the card.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-08 18:36:45 +00:00
Bruno G. Albuquerque
18fe0231df Add initial vesa modes even if EDID information is present. EDID does not
include all supported video modes. Fixes #4166.

Note that this change will probably show several weird resolution is some
configurations. They are all valid resolutions but are not commom so we need
a way to filter those out.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-08 16:13:56 +00:00
Alexander von Gluck IV
5348fbe689 * fix trace typedef size to fix iso9660 tracing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 20:24:34 +00:00
Alexander von Gluck IV
c9c7be9a54 * add initial set of Northern Island cards
* add igp property to pciid map
* add disabled bios pull for r700 and ni cards
* refactor model numbering as >R700 AMD switched
  to named card families


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 20:16:32 +00:00
Axel Dörfler
dc036ee5e1 * Minor simplification.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 15:42:21 +00:00
Jérôme Duval
105eeb9c84 When checkfs stop checking, the block allocator tries to write more blocks than present in fCheckBitmap, so we constrain it
to fNumBlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 14:53:10 +00:00
Jérôme Duval
bdce14985b added std::nothrow for some new calls, and initialize fCheckCookie
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 12:05:22 +00:00
Alexander von Gluck IV
0cd93754a4 * init scratch before card post
* B_OK != 1!, so don't if (status_t)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 05:24:23 +00:00
Alexander von Gluck IV
77e8ac07c6 * add allocation of atombios fb scratch
* add free of allocated fb scratch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 05:19:42 +00:00
Alexander von Gluck IV
7a2d0c5e92 * lets not make AtomBIOS calls until our
semaphore is created :)
* delete semaphore on AtomBIOS destroy


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 03:48:58 +00:00
Alexander von Gluck IV
ee5d8bd0a8 * tab fix
* add atom_parse_cmd|table_header functions to evaluate
  data structure versions
* convert asic function to status_t and reflect
  execute_table result
* cleanup logic in destroy atombios parser function


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-07 03:40:23 +00:00
Alexander von Gluck IV
81e071b76e * more style cleanup
* backport additional bugfixes from drm version
* add logic to detect infinite execution loops
* add a semephore to prevent multiple executions on
  non-thread safe code ( this needs testing )


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-06 07:00:49 +00:00
Alexander von Gluck IV
7eb6bbc78c * style cleanup
* add some missing functions from drm version


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-06 04:39:47 +00:00
Alexander von Gluck IV
6da3f7d4c1 * lots of changes
* add missing header for some radeon registers
* begin removing now un-needed direct register calls
* move and refactor crtc functions
* fix function naming to be clearer
* create more AtomBIOS style calls
* this will eat your cat at the moment, don't bother testing


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-05 22:24:57 +00:00
Alexander von Gluck IV
88932cfb41 * repair time by slowing it down
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-05 05:47:31 +00:00
Alexander von Gluck IV
e7f4040697 * improve debugging in AtomBIOS atom.c parser
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-05 05:34:28 +00:00
Alexander von Gluck IV
d77ff85e1f * add required atombios.h from drm driver from linux 3.0 with a few tweaks
(we aren't taking ownership of this one.. yikes)
* add first AtomBIOS call to test the waters


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42578 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-05 02:37:05 +00:00
Jérôme Duval
0839540d1e use locking when messing ITD and SITD queues. itd->prev was becoming NULL, thus leading to KDL.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 21:52:03 +00:00
Alexander von Gluck IV
7949c8cbe4 * move create_area for kernel AtomBIOS into radeon_hd_getbios
* only create_area if we found a valid AtomBIOS
* lock down write access to kernel AtomBIOS area after populating
* remove locking on kernel AtomBIOS area as it's not needed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 15:28:50 +00:00
Alexander von Gluck IV
94e15508ec * clean up style
* remove some un-needed log messages
* memset area from create_area just incase
* add enabled bios read in addition to disabled one


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 04:57:42 +00:00
Alexander von Gluck IV
f0b0d6cb37 * use create_area correctly
* AtomBIOS is now loaded and passed into the radeon_hd accelerant
* correct pointer passing in bios_init
* AtomBIOS is now read and initialized by AtomBIOS parser
* feel free to start testing the driver again :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 03:55:01 +00:00
Alexander von Gluck IV
2168cdbddd * bug fix, wrong offset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 23:26:26 +00:00
Alexander von Gluck IV
3f98c1831c * create area for AtomBIOS
* clone mapped AtomBIOS area into accelerant


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 23:23:16 +00:00
Alexander von Gluck IV
c3cfda776d * don't trample PCI rom config
* better error checking
* the driver can now locate the AtomBIOS on real hw!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 21:42:28 +00:00
Alexander von Gluck IV
77a64ff2c8 * use new PCI.h rom flags
* clean up tracing
* remove infinite loop :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 20:46:26 +00:00
Alexander von Gluck IV
5cf44dda39 * move obtaining / copying the vga bios into the driver.
* add missing r500 header
* replace r600 headers with newer one from kernel


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 18:16:10 +00:00
Alexander von Gluck IV
1d5cfc649a * move bios functions into bios.cpp
* implement various methods to pull AtomBIOS from card
* add some missing registers to headers from linux drm driver


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 03:02:57 +00:00
Alexander von Gluck IV
8992f603ed * var typo fix in driver rom shared area creation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 23:13:45 +00:00
Alexander von Gluck IV
81cd663666 * refactor accelerant debugging
* clone VGA rom shared area in accelerant
* enable access, and make a copy of the VGA bios
* give malloc'ed VGA bios pointer to AtomBIOS parser
* Still invalid BIOS magic
* TODO : Move atomBIOS pointer and reorganize some stuff


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 23:11:15 +00:00
Alexander von Gluck IV
39b96f9e92 * Rename PCI rom shared area.. isn't AtomBios until we verify it is
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 22:16:23 +00:00
Alexander von Gluck IV
32e7d18a75 * Quick style cleanup
* Check for failed malloc in atom_parse


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 18:14:54 +00:00
Alexander von Gluck IV
22582a297c * Map AtomBIOS specified by PCI rom into virtual memory
* Point AtomBIOS to PCI rom mapped in memory
* Things no longer crash, but we get an Invalid BIOS Magic error
  in the logs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 18:05:52 +00:00
Alexander von Gluck IV
4034e8950e * Fix Jamfile to properly reference external source file.
(thanks DeadYak!)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 16:15:32 +00:00
Alexander von Gluck IV
ef2909a10f * Move bios_info into shared info
* Pull pci_rom base address from pci subsystem
* Point AtomBIOS parser to pci rom address
  to set up and malloc atom_context
* This is untested! Don't run on an
  expensive card until I test it on a cheaper
  one!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 14:58:56 +00:00
Alexander von Gluck IV
5136067474 * Initial work on bios_init for setting up AtomBIOS parser
* Refactor AtomBIOS parser to use non-linux-kernel calls
  (normally I would keep it as-is and do wrappers, but the
  AtomBIOS parser has been rewritten from scratch twice
  by its creator  in the last 5 years.. so eh.
* Refactor AtomBIOS parser to be more haiku-like stylewise


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 06:07:49 +00:00
Alexander von Gluck IV
b375e9cd65 * Program DATA_FORMAT to non-interlaced
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 01:07:10 +00:00
Alexander von Gluck IV
cc9e8e94d4 * Add card_info struct used by AtomBIOS parser
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 22:56:18 +00:00
Alexander von Gluck IV
2df3def596 * Remove old legacy internal AtomBIOS parser
* Import "new" AMD AtomBios Parser (aka AMD KGrids)
* Add a new global storage struct for BIOS info
  (ex. location, size, etc)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 22:41:04 +00:00
Adrien Destugues
ab7cbe31c2 Always set the palette registers even if the head is not connected. This will not do anything bad (if the display is disabled, it has no
effect), and since the test was a bit too constraining (I have an LVDS panel on head A), it would prevent setting colors for the CMAP modes.

This finally gets the \n demo working from the original binary from BeOS, without any change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 18:11:26 +00:00
Alexander von Gluck IV
ef3a7658fa bug fix, POWER_SHUTDOWN vs POWER_ON
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 16:48:59 +00:00
Alexander von Gluck IV
0e3075fb4d * Provide device chipset in accelerant_device_info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 18:25:08 +00:00
Alexander von Gluck IV
6ab8261b98 * Pass device name into shared info
* Refactor MCFBsetup to be a little simpler for now
* Implement radeon accelerant_device_info for screen preflet
* Re-add CRT Power calls to display code.
* Disable blanking setting for now... just can't figure out
  what AMD wants for this.
* Remove some un-needed locking in the scaling code
* Be sure to disable VGA when set_display_mode is called
* Refactor mode setting code to loop over all possible displays
  and set the provided mode on the attached ones.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 17:45:14 +00:00
Jérôme Duval
d6e4f54f2d Patch by Jian Chiang as part of his GSoc Project (coding style fixes by myself):
* xhci controller start operation
* command ring and event ring initialization
* No-Op Command test and real xhci irq handle
* xhci root hub support
* add Super Speed enumeration and xhci_rh.cpp into jamfile


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 10:06:34 +00:00
Alexander von Gluck IV
3b1fd3270e * Remove return from testing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 06:12:01 +00:00
Alexander von Gluck IV
eb02753779 * Little cleanup
* Add missing Idle call for connectors
* Reformulate blanking.. this should match what the
  register is after the GTF vesa call
* Set FrameBuffer to card internal address


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 06:10:52 +00:00
Alexander von Gluck IV
e1b9d6e674 * Add LVDS handling for TMDSB
* Fix crash situation if no monitors detected
* Assume TMDSB if no monitors sensed (temporary)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 03:32:01 +00:00
Alexander von Gluck IV
a956672a33 * Fix a few spots where we were checking for NULL unneededly
* Fix a few spots where we *should* of been checking for NULL
  to prevent referencing a null pointer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 02:26:49 +00:00