summaryrefslogtreecommitdiff
path: root/sys/dev/fdt
AgeCommit message (Collapse)Author
2019-05-11Implement interrupt controller functionality in the RockchipPatrick Wildt
GPIO driver. This allows us to use the fusbtc(4) interrupt on the RockPro64. ok kettenis@
2019-05-11Add fusbtc(4) to support the Fairchild FUSB302 USB Type-C controller.Patrick Wildt
A Type-C controller has multiple tasks. Even though the orientation of the plug doesn't matter for the user, it matters for the hardware. To be able to know how to route the SuperSpeed pins you need to know which way the plug is connected. Also you need to know if you're a sink/source or device/host. To get the first connection, you toggle between the modes until you find a connection. In case you see that a sink is connected, you can turn on USB Vbus to power the sink. This driver explicitly does not implement USB's Type-C state machine, but if we get more and more of these controllers it might be worth doing. Also there's no support for Power Delivery messages yet. ok kettenis@
2019-05-10Add a fallback to ehci(4)'s phy init code so that when therePatrick Wildt
is no compatible phy it tries to enable the VBus using the phy-supply property. Makes the USB ports on the RockPro64 work. ok kettenis@
2019-04-30Attach mvneta(4) on the Armada 3720 SoC.Patrick Wildt
2019-04-30Add support for the Armada 3720 pinctrl controller to mvpinctrl(4).Patrick Wildt
This controller does not only support pinmuxing, but also includes GPIO controller functionality. This is needed to e.g. turn on USB VBus on the Turris Mox. ok kettenis@
2019-04-30Add mvuart(4) to support the Armada 3720's serial console.Patrick Wildt
ok kettenis@
2019-04-30Add support for the Armada 3720 clocks to mvclock(4).Patrick Wildt
ok kettenis@
2019-04-23Add support for "pinconf-single" devices and add support for bias andMark Kettenis
drive-strength properties. Needed for various HiSilicon SoCs. ok patrick@, jsg@
2019-04-22Add support for official Linux device tree bindings and implement supportMark Kettenis
for the "stub" clocks that handle the CPU clock frequency on the Hi3670.
2019-04-22Configure pins.Mark Kettenis
ok patrick@
2019-04-20armv7 RAMDISK is now compiled with -Oz (just to be like other ramdisks),Theo de Raadt
so clang's rule about "static inline" comes into play. ok patrick
2019-04-13Add missing compatibles for newer Linux kernel bindings.Mark Kettenis
ok patrick@
2019-04-01In the upstreamed and official device tree for i.MX8MQ the clocksPatrick Wildt
have changed. The clocks are not split into SRC, PRE_DIV, DIV and CG anymore. There is only a single index for each clock and we need to handle them as composite clocks internally. ok kettenis@
2019-04-01imxdwusb(4) and imxpd(4) are no longer needed.Patrick Wildt
ok kettenis@
2019-04-01In the upstreamed and official device tree for i.MX8MQ the USB physPatrick Wildt
use only one address and size cells. Also set the assigned clocks and enable them. ok kettenis@
2019-04-01In the upstreamed and official device tree for i.MX8MQ the power domains arePatrick Wildt
not separate nodes, but instead part of imxgpc(4). ok kettenis@
2019-03-24virtio: Prepare for 64 feature bitsStefan Fritsch
virtio 1.0 supports an arbitrary number of feature bits. However, so far no more than 64 are used (compared to 32 in virtio 0.9). Adjust data types to support 64 feature bits. Later, we may want to use bitmaps and setbit(), ... to support even more feature bits. ok mlarkin@
2019-03-24virtio: adjust virtio_setup_queue prototype for 1.0Stefan Fritsch
Make it take an address instead of a PFN. Pass the virtqueue pointer. In virtio 1.0, more information has to be configured in the device. Also call virtio_setup_queue() after the information has been filled in. ok mlarkin@
2019-03-13Add support for i.MX8M PWM clocks.Patrick Wildt
2019-03-13Since new bindings might use the same clock index for divs, gates andPatrick Wildt
muxes, quietly return if the clock has no gate, but it's a div/mux. With this clocks that are defined in both gates and divs/muxes can be enabled.
2019-02-22Allow ssdfb(4) to be mmap(2)-able so that we can use its framebufferPatrick Wildt
from the userland. Also allow changing the brightness levels so that it can even be turned off to save power and to prevent burn in.
2019-02-12Add Allwinner V3s support. From SASANO Takayoshi.Mark Kettenis
2019-02-10Add Allwinner V3s support. Also update some Allwinner A80 pin names toMark Kettenis
what is used by more recent Linux kernels. Partly from SASANO Takayoshi.
2019-02-10Handle "broken-cd" as "non-removable" for now. This will generate someMark Kettenis
error messages if a card is absent from the slot, but other workarounds are much more complicated. From SASANO Takayoshi.
2019-02-06Rework fec(4). I have written this driver in 2012 as my first everPatrick Wildt
ethernet controller driver. Handling of descriptors and buffers has not been great. There was no way to recover from a full tx queue. This introduces a mechanism akin to dwxe(4) and tsec(4) and fixes that. On rd we now map mbufs directly. On tx we can do that as well for newer SoCs. The i.MX6 Q/DL generation still needs a bounce buffer on tx for proper alignment. Tested with bluhm on Cubox-i (armv7) and Hummingboard Pulse (arm64)
2019-02-03Add mvgicp(4), a driver for the Marvell extension to the GIC thatPatrick Wildt
allows triggering SPI interrupts by doing memory transactions. This was already partially implemented in mvicu(4) and is now outsourced into its own driver since we need better initialization when booting using u-boot. Also implement new and legacy bindings in mvicu(4), relying on the new mvgicp(4) driver. ok kettenis@
2019-02-01Fix lost interrupts in fec(4). Apparently the tick that talks to thePatrick Wildt
phy to check the media status did not only ack the MII interrupt, but also all the others. Thus it could happen that the TX completion was not seen by the interrupt handler, leading to full TX queues. Also, the fec(4) interrupt handler acked more than it handles, thus possibly also acking the MII interrupt. Found with bluhm@ on his new arm64 regression setup. ok bluhm@
2019-01-28Implement breaking into ddb on imxuart(4). When a break is detected,Patrick Wildt
a flag in the upper byte of the 2-byte-wide receive register is set. ok kettenis@
2019-01-21Adapt to allwinner device tree changes in linux >= 5.0-rc1Jonathan Gray
"allwinner,sun6i-a31-rtc" has been removed from h3/h5/r40/a64 ok kettenis@
2019-01-19virtio: Introduce defines for config(8) flagsStefan Fritsch
2019-01-17No need to free the Command/Data GPIO in the I2C detach path since it isPatrick Wildt
only allocated and used for the SPI backend. From Tobias Nygren
2019-01-17Add support for the SSD1306 as seen on the NanoPi NEO2 withPatrick Wildt
a NanoHat OLED.
2019-01-15Add missing Allwinner H3/H5 OHCI clocks.Mark Kettenis
2019-01-12Add missing OHCI-related clocks.Mark Kettenis
2019-01-11Add i.MX8MQ support to dwpcie(4). Since the i.MX8MQ does seem toPatrick Wildt
use MSI using dwpcie(4) instead of the GIC, MSIs are disabled for that platform until implemented. ok kettenis@
2019-01-11imxsrc(4), a driver for the i.MX System Reset Controller. We willPatrick Wildt
use this to assert the reset pins for e.g. the PCIe controller. ok kettenis@
2019-01-11Add support for changing the parent of the PCIe clocks. We willPatrick Wildt
use this for setting the PCIe clocks to the correct frequency. ok kettenis@
2019-01-10Move some common defines to virtiovar.hStefan Fritsch
And fix some comments
2019-01-07tweak ohci_checkrev so it doesnt print a leading comma and space.David Gwynne
it assumes that it always followed an interrupt string, but we don't print that on fdt. having the bus responsible for the whitespace means the fdt glue can print a colon to separate the bus info from checkrev output, while every other glue keeps the comma. ok deraadt@
2019-01-04add support for ohci, as found on the pine64David Gwynne
this currently relies on the usbphy code in the ehci fdt glue to work, but this is a work in progress. there's an extra printf of fdt in the dmesg to make the ohci checkrev code not look terrible. ok kettenis@
2019-01-03if we run out of mbufs for the rx ring, run a timeout to refill themDavid Gwynne
claudio@ (i think) hit this a while back, and i've had this diff in my tree since then. i'm putting it in now since it empirically solved the problem and im sick of carrying the diff around.
2019-01-02Fix PCIe clock definitions.Patrick Wildt
2019-01-01Add some additional RK3399 clocks that are used by the current LinuxMark Kettenis
mainline device tree.
2019-01-01Set assigned-clocks.Mark Kettenis
2019-01-01Add RK3399 TSADC clock.Mark Kettenis
2019-01-01Add RK3328 TSADC clock.Mark Kettenis
2019-01-01Implement switching to different parent clocks in order to get as closeMark Kettenis
to the desired frequency as possible when setting the frequency of a clock.
2019-01-01Make sure we don't exceed the maximum clock divider.Mark Kettenis
2019-01-01Fix typo in RK3328 fractional PLL frequency code.Mark Kettenis
2018-12-31Set assigned-clocks.Mark Kettenis