History log of /freebsd-current/sys/arm/ti/am335x/am335x_lcd.c
Revision Date Author Comments
# be82b3a0 26-Dec-2023 Emmanuel Vadot <manu@FreeBSD.org>

clk: Move clock code in dev/clk

We've removed kernel option EXT_RESOURCES almost two years ago.
While it was ok to have some code under a common 'extres' subdirectory
at first, we now have a lot of consumer of it and we made it mandatory
so no need to have it under a cryptic name.

Reviewed by: mhorne
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D43191


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix


# 00e84f52 16-Mar-2023 Emmanuel Vadot <manu@FreeBSD.org>

arm: Rename hdmi_if.m to crtc_if.m

There is nothing hdmi related in this interface, it's just a generic interface
for crt controller so rename it.
This also remove the 'hdmi' device used in arm kernel config. 'vt' now controls
if we build this interface (sc(4) isn't supported on arm).

Sponsored by: Beckhoff Automation GmbH & Co. KG
Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D39120


# 8537e671 09-May-2022 John Baldwin <jhb@FreeBSD.org>

arm ti: Remove unused devclass arguments to DRIVER_MODULE.


# 0050ea24 30-Jul-2020 Michal Meloun <mmel@FreeBSD.org>

Move Ti AM335x to dev/extres/clk framework.

Re-implement clocks for these SoC by using now standard extres/clk framework.
This is necessary for future expansion of these. The new implementation
is (due to the size of the patch) only the initial (minimum) version.
It will be updated/expanded with a subsequent set of particular patches.

This patch is also not tested on OMAP4 based boards (BeagleBone),
so all possible issues should be (and will be) fixed by ASAP once
identified.

Submited by: Oskar Holmlund (oskar.holmlund@ohdata.se)
Differential Revision: https://reviews.freebsd.org/D25118


# 7029da5c 26-Feb-2020 Pawel Biernacki <kaktus@FreeBSD.org>

Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)

r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are
still not MPSAFE (or already are but aren’t properly marked).
Use it in preparation for a general review of all nodes.

This is non-functional change that adds annotations to SYSCTL_NODE and
SYSCTL_PROC nodes using one of the soon-to-be-required flags.

Mark all obvious cases as MPSAFE. All entries that haven't been marked
as MPSAFE before are by default marked as NEEDGIANT

Approved by: kib (mentor, blanket)
Commented by: kib, gallatin, melifaro
Differential Revision: https://reviews.freebsd.org/D23718


# e12be321 20-May-2019 Conrad Meyer <cem@FreeBSD.org>

Include eventhandler.h in more compilation units

This was enumerated with exhaustive search for sys/eventhandler.h includes,
cross-referenced against EVENTHANDLER_* usage with the comm(1) utility. Manual
checking was performed to avoid redundant includes in some drivers where a
common os_bsd.h (for example) included sys/eventhandler.h indirectly, but it is
possible some of these are redundant with driver-specific headers in ways I
didn't notice.

(These CUs did not show up as missing eventhandler.h in tinderbox.)

X-MFC-With: r347984


# 108117cc 19-Mar-2018 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

[ofw] fix errneous checks for OF_finddevice(9) return value

OF_finddevices returns ((phandle_t)-1) in case of failure. Some code
in existing drivers checked return value to be equal to 0 or
less/equal to 0 which is also wrong because phandle_t is unsigned
type. Most of these checks were for negative cases that were never
triggered so trhere was no impact on functionality.

Reviewed by: nwhitehorn
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D14645


# af3dc4a7 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

sys/arm: further adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.


# dda19570 30-Mar-2017 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

[am335x] Fix HDMI suport for Beaglebone Black

Fallback to Linux video interface bindings introduced in r313068 worked
with then current DTS but that DTS turned out to be not conformant to
the the bindings spec. DTS import in r314854 fixed the conformancy but
broke the functionality. This commit syncs up functionality to the actual
spec.

Reported by: manu@


# 878097c1 01-Feb-2017 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

[am335x] Fallback to standard video interface bindings when using Linux dts

Historically AM335x LCDC driver used non-standard "hdmi" property to
refer to HDMI framer. There is no such thing in upstream DTS, so to
handle both cases fallback to bindings described in
bindings/media/video-interfaces.txt in Linux documentation.

We still make some assumptions that are not universally true: we
assume that if remote endpoint is available it's going to be HDMI
framer. Which is true for AM335x-based devices currently supported
but may be not true for some custom hardware.

MFC after: 1 week


# 9783ea5c 13-Nov-2016 Andrew Turner <andrew@FreeBSD.org>

Use the correct OF_getencprop over OF_getprop + fdt32_to_cpu to read
integer data from the device tree.

Sponsored by: ABT Systems Ltd


# 6f79d9e9 14-Nov-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Somewhat improve HDMI event API

- Pass device_t for HDMI framer as an argument for event hook
- Use #define for event values, instead of opaque (and unused) 0


# 9c429819 13-Nov-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Move all HDMI-related stuff to hdmi_if.m, hdmi.h is not required


# 5625a3e5 24-Jul-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

If there is panel info in DTB do not wait for HDMI event and setup
framebuffer immediately


# 224fba2b 17-Jun-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Add HDMI support to Beaglebone Black:

- Add driver for TDA19988 HDMI framer
- Add simple interface to communicate with HDMI sink: read EDID and set videomode
- Add event-based API to notify LCD controller when HDMI sink is available
- Add HDMI framer node and add refernce to it to lcdc node. This part of
DTS tree is custom and does not match Linux DTS because Linux uses
combination of pseudo-node in DTS and hardcoded driver information
that does not map to our model.


# 37c1967c 24-May-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Rename fdt_find_child to ofw_bus_find_child. There is nothing FDT-specific
in this function.

Suggested by: andrew@


# 5b03aba6 21-May-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Switch TI platform support code from using FreeBSD's custom-baked DTS
files to vendor-provided ones. It should make easier to adopt platform
code to new revisions of hardware and to use DTS overlays for various
Beaglebone extensions (shields/capes).

Original dts filenames were not changed, they're now wrappers over dts
files provided by TI. So make sure you update .dtb files on your
devices as part of kernel update

GPIO addressing was changed: instead of one global /dev/gpioc0 there
are per-bank instances of /dev/gpiocX. Each bank has 32 pins so for
instance pin 121 on /dev/gpioc0 in old addressing scheme is now pin 25
on /dev/gpioc3

On Pandaboard serial console devices was changed from /dev/ttyu0 to
/dev/ttyu2 so you'll have to update /etc/ttys to get login prompt
on serial port in multiuser mode. Single user mode serial console
should work as-is

Differential Revision: https://reviews.freebsd.org/D2146
Reviewed by: rpaulo, ian, Michal Meloun, Svatopluk Kraus


# 72584f4c 25-Jan-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Add vt(4) support to AM335x LCDC driver


# 5967db8d 23-Jan-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

After interrupt read value from register to make sure it reached hardware. This
should fix "Spurious inteerupt" message

Suggested by ian@


# fbae9a50 21-Jan-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Write ACK for all kinds of LCDC interrupts


# eaf6610d 19-Jan-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Properly clear IRQ status in order to fix "Spurious IRQ" message from AINT.

This register is not documented in TRM but that's what linux driver does


# 81d8de5f 17-Jan-2015 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix programming timing parameters to LCDC. Actual value used for HBP, HFP, HSW, VSW
is register's programmed value + 1.


# 6ed13549 06-Jun-2014 Kevin Lo <kevlo@FreeBSD.org>

Remove extra semicolons.


# add35ed5 02-Feb-2014 Ian Lepore <ian@FreeBSD.org>

Follow r261352 by updating all drivers which are children of simplebus
to check the status property in their probe routines.

Simplebus used to only instantiate its children whose status="okay"
but that was improper behavior, fixed in r261352. Now that it doesn't
check anymore and probes all its children; the children all have to
do the check because really only the children know how to properly
interpret their status property strings.

Right now all existing drivers only understand "okay" versus something-
that's-not-okay, so they all use the new ofw_bus_status_okay() helper.


# 02ff64b8 26-Jun-2013 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

- Request non-cached memory for framebuffer
- Properly probe/initialize syscons


# 24ca3d19 26-May-2013 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

AM335x LCD controller driver with syscons support

Limitations:
- Raster mode only
- 24 and 32 bpp only