AgeCommit message (Collapse)Author
2014-02-06video: tegra: check if framebuffer is registredColibri_T30_LinuxImageV2.1Beta2_20140206Colibri_T20_LinuxImageV2.1Beta2_20140207Apalis_T30_LinuxImageV2.1Beta2_20140206Stefan Agner
Before updating modes on HDMI hotplug, check if framebuffer is registered at all. This allows to disable framebuffers completely.
2014-02-04input: touchscreen: fusion: platform independent GPIO descriptionStefan Agner
Use platform independent description for requested GPIOs.
2014-02-04apalis_t30: add Fusion touchscreen driverStefan Agner
Activate Fusion touchscreen driver. Use GPIO 5/6 as pen down/reset GPIO and provide a helper function to free the GPIO before the driver requests them.
2014-01-29Merge branch 'fusion-touchscreen' into colibriStefan Agner
2014-01-29colibri_t20/colibri_t30: use new platform data for fusion touchscreenStefan Agner
Fusion touchscreen driver now uses platform data to do GPIO initialization by itself. Make use of this by providing GPIO numbers instead of doing initialization in the board initialization.
2014-01-29input: touchscreen: fusion: fix error handlingStefan Agner
Fix chip reset by sleeping long enought after reset. Do proper error handling (free GPIO on failure). Use dev_* for message logging to get similar messages for all fusion driver related errors and warnings.
2014-01-29input: touchscreen: fusion: use new I2C PM functionsStefan Agner
To avoid warnings use the new I2C power management function for suspend and resume.
2014-01-29input: touchscreen: added platform data for Fusion touchscreenStefan Agner
Added platform data struct to define interrupt and reset GPIO. This allows to initialize the touchscreen controller inside the driver rather then in each platform and use the driver as a module.
2014-01-29input: touchscreen: fix race condition in Fusion driverStefan Agner
When the next interrupt request apeares between the confirmation of the previous (a write via I2C, fusion_F0710A_write_complete) and the reenable of the GPIO interrupt, the driver hangs and no more touch inputs are reported. This patch moves the confirmation after the reenabling of the GPIO interrupt.
2014-01-29input: touchscreen: add ABS_X/ABS_Y axis for Fusion touchscreenStefan Agner
Recent evdev X-Server input driver implementation complain when only multitouch axes have been reported ("found only multitouch-axes. That shouldn't happen."). Therefor also report the primary touch detection with default axis.
2014-01-29video: tegra: kernel parameters to change RGB clock polarityStefan Agner
Allow to change clock polarity for RGB display output using the keywords outputen/pixclockpol/vsync and hsync. Add them right after the driver specification, use 0/1 to specifiy high/low polarity, e.g. video=tegrafb0:pixclockpol:1,800x480
2014-01-29video: tegra: remove special clocks for Tegra 2Stefan Agner
Remove special clocks for Tegra 2, but use backup clock source instead. This allows to run all common used resolution within the drivers -1/+9% allowed band for pixelclock exactness.
2014-01-24video: tegra: add more modes and tweaked pixelclocks for Tegra 2Stefan Agner
Add some more modes e.g. for full HD panel. Also add tweaked pixel clock for Tegra 2 because the clock is always a child of the peripherial clock and only some divisors are available.
2014-01-24video: tegra: fb: apalis/colibri_t30: hack avoid 24 Hz modeMarcel Ziswiler
Hack to avoid 24 Hz mode in X resulting in no display at all. This has been encountered using e.g. a Samsung SyncMaster F2380 if connected by HDMI. root@apalis-t30:~# xrandr Screen 0: minimum 256 x 128, current 1920 x 1080, maximum 2048 x 2048 LVDS-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1920x1080 58.6*+ HDMI-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 160mm x 90mm 1920x1080 60.0*+ 1680x1050 59.9 1280x1024 75.0 60.0 1440x900 75.0 59.9 1280x960 60.0 1280x800 59.9 1152x864 75.0 1280x720 60.0 50.0 1024x768 75.0 70.1 60.0 832x624 74.6 800x600 72.2 75.0 60.3 56.2 720x576 50.0 720x480 59.9 640x480 75.0 72.8 66.7 59.9 720x400 70.1 This is basically a revamp of the following commit which got scrapped by the modedb changes: 8174d21e5fe0d086cb5824161c58eb065f412281
2014-01-22Check null pointers for sysfs callsStefan Agner
When grepping through sysfs, grep tries to read all sysfs files which are available. Some of them lead to error due to null pointers. Therefor check for null pointers before using them.
2014-01-22Merge branch 'tegra-dc-changes-modedb' into colibriStefan Agner
2014-01-22colibri_t20/colibri_t30/apalis_t30: remove TEGRA_FB_VGA definesStefan Agner
Remove TEGRA_FB_VGA defines and use VGA as default. Since initial mode is now configureable through kernel cmd line parameter, we don't need those compile time helpers.
2014-01-22video: tegra: updated comments, move front_porch work aroundStefan Agner
Updated several comments to make code easier to read and understand. Also use the front_porch workaround in any case, for HDMI output too.
2014-01-13colibri_t20: video: use new modedb based settingsStefan Agner
Use modedb to set mode on framebuffer/display controller for Tegra 20 based module Colibri T20 too.
2014-01-09tegra: video: parse multiple modedbsStefan Agner
In order to find a viable resolution we not only parse VESA mode, we also parse CEA (multimedia) modes and our own small modedb (for specific touch screens).
2014-01-09tegra: video: remove unreferenced resolution from tegra_fb_infoStefan Agner
2014-01-09tegra: video: use correct return value for callbackStefan Agner
2014-01-09tegra: video: use new modedb based settingsStefan Agner
Use new modedb based framebuffer settings by defining default_mode in the display controllers platform data. Also impelmented the fallback logic to this default_mode in case no kernel cmd line parameter was set.
2014-01-07tegra: video: use modedb to specify framebuffer resolutionStefan Agner
Allow to specify framebufffer videomode using kernel command line parameters. NVIDIAs binary X driver later on picks up those settings and start X with current mode settings, if no EDID data are available.
2013-12-13colibri_t20: android: disable hw stat monMarcel Ziswiler
Disable hardware statistics monitor for AVP due to it completely hanging upon boot on certain Colibri T20 V1.2a modules.
2013-12-09colibri_t30/apalis_t30: enable STMPE ADC driverStefan Agner
Make use of the new STMPE ADC driver to expose the four free ADC channels on the STMPE811 to userspace.
2013-12-09iio: adc: add STMPE ADC driver using IIO frameworkStefan Agner
This adds an ADC driver for the STMPE device using the industrial input/output interface. The driver supports raw reading of values. The driver depends on the MFD stmpe driver. If the touchscreen block is enabled too, only for of the 8 ADC channels are available.
2013-12-09mfd: stmpe: add ADC block resourcesStefan Agner
In order to use the auxiliar ADC inputs of STMPE811 devices we need to add resources for the ADC block. Also move the ADC macros from the touchscreen driver to the general header file. We will need them for the ADC driver in future.
2013-12-09tegra: pcie: use integer for root_bus_nrStefan Agner
The drivers internal root_bus_nr used to be u8 which lead to a wrong error detection in bus_to_port. Bus number can be -1 in case bus is not scanned yet. Thanks to James pointing that out.
2013-12-02regulator: tps6586x: fixed voltage table for TPS658643Stefan Agner
The voltage table for the SM2 regulator on TPS658643 was wrong. However, since the requested voltage of 1.8V was at the right place, the system worked fine nonetheless.
2013-12-02colibri_t20/colibri_t30: don't register KEY_BACK for wakeupStefan Agner
The port used for KEY_BACK does not support wakeup (no wake PIN). Remove the wake flag, this prevents unbalanced irq warning messages.
2013-11-26apalis_t30: add gpio keyboard configurationStefan Agner
Add GPIO keyboard platform device configuration. Currently only the power key is defined which is registred as wake key as well in order to wake the SoC when in sleep mode (MXM3 37/WAKE1_MICO).
2013-11-26hdmi: avoid division by zero oopsStefan Agner
After suspend, mode filter might be called with empty yres. This leads to division by zero when checking aspect ratio. Return as invalid mode when yres is zero.
2013-11-25ahci-tegra: add avdd_plle regulatorStefan Agner
When enabling SATA clocks, the PCIE clocks are enabled as well since those are the parent clocks. In order to enable this parent clocks, the PCIE regulator avdd_plle needs to be enabled. The resume path used to freeze because the PCIE PLL did not lock.
2013-11-20colibri_t30/apalis_t30: remove vdd_hdmi_con regulatorStefan Agner
Remove vdd_hdmi_con regulator from dc1 since we don't have a dedicated regulator for this connector on our baseboards.
2013-11-19apalis_t30: use TPS6591X specific IRQ base for RTCStefan Agner
Use TPS6591X IRQ base define to calculate correct IRQ number.
2013-11-19colibri_t30: use TPS6591X specific IRQ baseStefan Agner
Use TPS6591X base defines to make sure the chip gets its own irq range rather than interfer with the STMPE chip.
2013-11-12ASoC: colibri_t20: Fix device registrationStefan Agner
Fix errors when registration fails, correctly unregister the platform device.
2013-10-22apalis_t30: clean-up gpio definitions and namesColibri_T30_LinuxImageV2.1Beta1_20131022Colibri_T20_LinuxImageV2.1Beta1_20131022Apalis_T30_LinuxImageV2.1Beta1_20131022Marcel Ziswiler
Clean-up GPIO definitions and names (e.g. use LVDS_ defines, BKL1_ON rather than BL_ON and HDMI1_HPD rather than hdmi_hpd).
2013-10-21hdmi: retry edid reads up to 4 times until failingMax Krummenacher
When hotpluging hdmi the read of edid often fails. Add up to 4 retries with a 500ms delay before giving up.
2013-10-21colibri_t30: add DDR speed definition for 400MHz/800MHzMax Krummenacher
This gives the DDR3L memory settings for 400MHz/800MHz. The boot memory speed must be 400MHz for this to work, i.e. the 400MHz BCT must be used.
2013-10-21toradex defconfigs: don't set CONFIG_MAGIC_SYSRQMax Krummenacher
If the boot console is RS232 and RX is left floating this leads to arbitrary sys requests including reboots... (RX is left floating on the evaluation boards if USB to serial is jumpered but USB is not connected)
2013-10-15tegra_wdt: support default watchdog apiStefan Agner
Reworked driver in order to properly support default watchdog api such as triggering by writing a character and disable by sending a magic character. Renamed ENABLE_ON_PROBE to ENABLE_HEARTBEAT which triggers the watchdog using the interrupt service routine.
2013-09-09apalis/colibri_t30: fix HDMI hang issueMax Krummenacher
Initialisation of the framebuffer console on DVI-D aka HDMI always failed on monitors which report the vertical front porch to be 1 in their EDID. The fix now changes also the modedb and not only the list of videomodes with a compatible timing. This was particularly bad on Apalis T30 where this is activated by default. On Colibri T30 this was observed when enabling it using the fbcon=map:1 boot argument.
2013-08-30apalis_t30: export Apalis GPIOs to userspace via sysfsMarcel Ziswiler
Up to now only the LVDS transceiver controlling GPIOs were exported. This patch adds the generic Apalis GPIOs to the list of via sysfs to userspace exported ones as well.
2013-08-30apalis/colibri_t30: fix HDMI hang issueMarcel Ziswiler
Initialisation of the framebuffer console on DVI-D aka HDMI sometimes failed. This was particularly bad on Apalis T30 where this is activated by default. On Colibri T30 this was observed when enabling it using the fbcon=map:1 boot argument. This fix curtsey of Bibek Basu from NVIDIA explicitly enables PLLA during early clock initialisation which avoids a later race with the display driver on DC1.
2013-08-13tegra_v4l2: added external/internal sync selectionT30_LinuxImageV2.0Beta3_20130820Apalis_T30_LinuxImageV2.0Beta2_20130816Peter Gielda
2013-08-12apalis/colibri_t30: hack to force speedo id of 2 for nowMarcel Ziswiler
In preparation for the new Apalis resp. Colibri T30 production lots with either T30IQS-P-A3 or T30MQS-P-A3 chips that due to some bug were locked at 312 MHz force a speedo ID of 2 for now which allows regular operation of up to 1.4 GHz (single core only).
2013-08-07apalis_t30: igb: add un-programmed i211 supportMarcel Ziswiler
I211 with a blank iNVM uses a different PCI ID. Hack the driver to load despite i211 data sheet claiming tools only, not for driver. Please note that the existing driver hacks concerning NVM validation skipping and Ethernet MAC address assignment equally apply. Tested on initial samples of Apalis T30 1GB V1.0A.
2013-07-31apalis_t30: allow for jumper-less ACM operationMarcel Ziswiler
Allow for jumper-less ACM operation by defaulting to 0x20 I2C address.