#
aaf0a730 |
| 10-Mar-2025 |
John Baldwin <jhb@FreeBSD.org> |
sdhci: Use bus_topo_lock and taskqueue_bus for hotplug events
Drop SDHCI_LOCK and instead acquire bus_topo_lock when adding and removing new-bus devices.
Reviewed by: imp Differential Revision: htt
sdhci: Use bus_topo_lock and taskqueue_bus for hotplug events
Drop SDHCI_LOCK and instead acquire bus_topo_lock when adding and removing new-bus devices.
Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D49271
show more ...
|
Revision tags: release/13.5.0, release/14.2.0-p2, release/14.1.0-p8, release/13.4.0-p4, release/14.1.0-p7, release/14.2.0-p1, release/13.4.0-p3, release/14.2.0 |
|
#
21525fe0 |
| 25-Sep-2024 |
Justin Hibbits <jhibbits@FreeBSD.org> |
sdhci: Add sysctl to report quirks on the slot
Summary: It can be useful to see what quirks are applied on an SDHCI slot.
Obtained from: Juniper Networks, Inc. Reviewed By: manu Differential Revisi
sdhci: Add sysctl to report quirks on the slot
Summary: It can be useful to see what quirks are applied on an SDHCI slot.
Obtained from: Juniper Networks, Inc. Reviewed By: manu Differential Revision: https://reviews.freebsd.org/D46790
show more ...
|
Revision tags: release/13.4.0 |
|
#
7b86593f |
| 05-Sep-2024 |
Justin Hibbits <jhibbits@FreeBSD.org> |
sdhci: Match quirk_set/quirk_clear sysctls to type
These quirk fields are u_int, so match the sysctl type to the actual types, and use SYSCTL_UINT. This provides room for setting bit 31 quirk as ne
sdhci: Match quirk_set/quirk_clear sysctls to type
These quirk fields are u_int, so match the sysctl type to the actual types, and use SYSCTL_UINT. This provides room for setting bit 31 quirk as needed.
Sponsored by: Juniper Networks, Inc. MFC after: 1 week
show more ...
|
#
5b56413d |
| 25-Jul-2024 |
Warner Losh <imp@FreeBSD.org> |
newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANY
Sponsored by: Netflix
|
Revision tags: release/14.1.0, release/13.3.0 |
|
#
fdafd315 |
| 24-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Automated cleanup of cdefs and other formatting
Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row.
Remov
sys: Automated cleanup of cdefs and other formatting
Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row.
Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/ Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/ Remove /\n+#if.*\n#endif.*\n+/ Remove /^#if.*\n#endif.*\n/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/
Sponsored by: Netflix
show more ...
|
Revision tags: release/14.0.0 |
|
#
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
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
show more ...
|
#
bd15d31c |
| 12-Apr-2023 |
Marius Strobl <marius@FreeBSD.org> |
mmc(4): Don't call bridge driver for timings not requiring tuning
The original idea behind calling into the bridge driver was to have the logic deciding whether tuning is actually required for a par
mmc(4): Don't call bridge driver for timings not requiring tuning
The original idea behind calling into the bridge driver was to have the logic deciding whether tuning is actually required for a particular bus timing in a given slot as well as doing the sanity checking only on the controller layer which also generally is better suited for these due to say SDHCI_SDR50_NEEDS_TUNING. On another thought, not every such driver should need to check whether tuning is required at all, though, and not everything is SDHCI in the first place. Adjust sdhci{,_fsl_fdt}(4) accordingly, but keep sdhci_generic_tune() a bit cautious still.
show more ...
|
Revision tags: release/13.2.0 |
|
#
e00774a9 |
| 24-Dec-2022 |
Søren Schmidt <sos@FreeBSD.org> |
Add support for Rockchip RK3568 SDHCI controller.
|
Revision tags: release/12.4.0, release/13.1.0 |
|
#
03d49ffc |
| 14-Apr-2022 |
John Baldwin <jhb@FreeBSD.org> |
sdhci_card_task: d is only used in the non-MMCCAM case.
|
#
016f9657 |
| 07-Mar-2022 |
Marcin Wojtas <mw@FreeBSD.org> |
Revert "sdhci: extend bus_dma_tag boundary to 64-bit space"
This reverts commit 7d8700bc291b4b3be1a592cae539f9e682592d9d.
Reason for revert: the patch is incomplete. 64-bit operation is supported f
Revert "sdhci: extend bus_dma_tag boundary to 64-bit space"
This reverts commit 7d8700bc291b4b3be1a592cae539f9e682592d9d.
Reason for revert: the patch is incomplete. 64-bit operation is supported fully in SDHCI v4.0, v3.0 does it only for ADMA mode. This differentiation is missing and should be taken into consideration in case the reverted code is re-introduced.
Reported by: mmel
show more ...
|
#
94ff1d9c |
| 26-Jan-2022 |
Andriy Gapon <avg@FreeBSD.org> |
sdhci: fix dumping support in MMCCAM configuration
This change fixes interaction with recently added sddadump.
MFC after: 1 week
|
#
7aa51c96 |
| 14-Dec-2021 |
Mateusz Guzik <mjg@FreeBSD.org> |
sdhci: plug set-but-not-unused vars
Sponsored by: Rubicon Communications, LLC ("Netgate")
|
Revision tags: release/12.3.0 |
|
#
b8f94506 |
| 05-Nov-2021 |
Artur Rojek <ar@semihalf.com> |
sdhci: Provide devmethod for software reset
Some sdhci controllers require custom software reset logic. Accommodate this need by introducing a new SDHCI_RESET devmethod. Move the existing reset logi
sdhci: Provide devmethod for software reset
Some sdhci controllers require custom software reset logic. Accommodate this need by introducing a new SDHCI_RESET devmethod. Move the existing reset logic into sdhci_generic_reset and use it as a default for the aforementioned method.
Obtained from: Semihalf Sponsored by: Alstom Group Differeential revision: https://reviews.freebsd.org/D32704
show more ...
|
#
3ac5012e |
| 05-Oct-2021 |
Bartlomiej Grzesik <bag@semihalf.com> |
sdhci: Fix crash caused by M_WAITOK in sdhci dumps
In some contexts it is illegal to wait for memory allocation, causing kernel panic. By default sbuf_new passes M_WAITOK to malloc, which caused cra
sdhci: Fix crash caused by M_WAITOK in sdhci dumps
In some contexts it is illegal to wait for memory allocation, causing kernel panic. By default sbuf_new passes M_WAITOK to malloc, which caused crashes when sdhci_dumpcaps or sdhci_dumpregs was callend in non sutiable context.
Add SBUF_NOWAIT flag to sbuf_new to fix this.
Obtained from: Semihalf Differential revision: https://reviews.freebsd.org/D32075
show more ...
|
#
440c645b |
| 29-Sep-2021 |
Mitchell Horne <mhorne@FreeBSD.org> |
sdhci: add a missing newline
|
#
d00c1f7f |
| 13-Sep-2021 |
Bartlomiej Grzesik <bag@semihalf.com> |
sdhci: add sysctls to dump sdhci registers and capabilites
Add sysctls dev.sdhci.X.slotY.dumpregs and dev.sdhci.X.slotY.dumpcaps which dumps sdhci registers or capabilities.
Obtained from: Semihal
sdhci: add sysctls to dump sdhci registers and capabilites
Add sysctls dev.sdhci.X.slotY.dumpregs and dev.sdhci.X.slotY.dumpcaps which dumps sdhci registers or capabilities.
Obtained from: Semihalf Reviewed by: mw Differential revision: https://reviews.freebsd.org/D31406
show more ...
|
#
35547df5 |
| 11-Aug-2021 |
Scott Long <scottl@FreeBSD.org> |
Call wakeup() with the lock held to avoid missed wakeup races.
Submitted by: luiz Sponsored by: Rubicon Communications, LLC ("Netgate")
|
#
da2f833f |
| 07-Jul-2021 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
MMCCAM: fix a panic after cam_sim_alloc_dev() removal in sdhci.c
During the removal of cam_sim_alloc_dev() in aeb04e88f51a706ef4b6a380bf5e82d15203fb6a for sdhci.c and the follow-up build-fix in a72a
MMCCAM: fix a panic after cam_sim_alloc_dev() removal in sdhci.c
During the removal of cam_sim_alloc_dev() in aeb04e88f51a706ef4b6a380bf5e82d15203fb6a for sdhci.c and the follow-up build-fix in a72af82e3169fcacfedf9047120679300a4296f8 slot->dev and slot->bus got mixed up for MMCCAM; slot->dev is only used in the !MMCCAM case so is uninitialised here leading to a panic; switch back to slot->bus to return to the status quo.
Reviewed by: imp (ack on arm@) X-Differential Revision: https://reviews.freebsd.org/D30857
show more ...
|
#
a72af82e |
| 29-Jun-2021 |
Warner Losh <imp@FreeBSD.org> |
cam: Fix GENERIC-MMCCAM build
Fix forgotten argument and type error. MMCCAM isn't enabled by default, and I'd mistakenly thought it was, so these went undetected precommit.
Sponsored by: Netflix
|
#
aeb04e88 |
| 29-Jun-2021 |
Warner Losh <imp@FreeBSD.org> |
sdhci: stop using cam_sim_alloc_dev
Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30857
|
#
5652be30 |
| 05-May-2021 |
Marcin Wojtas <mw@FreeBSD.org> |
sdhci: allow setting MMC capabilities before sdhci_init_slot
With this change the host controller drivers can set the MMC capabilities (e.g. using mmc_fdt_parse() helper) before calling sdhci_init_s
sdhci: allow setting MMC capabilities before sdhci_init_slot
With this change the host controller drivers can set the MMC capabilities (e.g. using mmc_fdt_parse() helper) before calling sdhci_init_slot(). This way the configuration dump (eg. in bootverbose) can include the possible additional information.
Reviewed by: manu Obtained from: Semihalf Sponsored by: Marvell Differential Revision: https://reviews.freebsd.org/D30561 MFC after: 2 weeks
show more ...
|
#
7d8700bc |
| 28-Apr-2021 |
Marcin Wojtas <mw@FreeBSD.org> |
sdhci: extend bus_dma_tag boundary to 64-bit space
This patch adds support for the SDHCI_CAN_DO_64BIT capability, so that to allow 64-bit DMA operation for the controllers which support this feature
sdhci: extend bus_dma_tag boundary to 64-bit space
This patch adds support for the SDHCI_CAN_DO_64BIT capability, so that to allow 64-bit DMA operation for the controllers which support this feature.
Reviewed by: manu Obtained from: Semihalf Sponsored by: Marvell Differential Revision: https://reviews.freebsd.org/D30560 MFC after: 2 weeks
show more ...
|
#
af2253f6 |
| 29-Apr-2021 |
Emmanuel Vadot <manu@FreeBSD.org> |
mmccam: Add two new XPT for MMC and use them in mmc_sim and sdhci
For the discovery phase of SD/eMMC we need to do some transaction in a async way. The classic CAM XPT_{GET,SET}_TRAN_SETTING cannot
mmccam: Add two new XPT for MMC and use them in mmc_sim and sdhci
For the discovery phase of SD/eMMC we need to do some transaction in a async way. The classic CAM XPT_{GET,SET}_TRAN_SETTING cannot be used in a async way. This also allow us to split the discovery phase into a more complete state machine and we don't mtx_sleep with a random number to wait for completion of the tasks. For mmc_sim we now do the SET_TRAN_SETTING in a taskqueue so we can call the needed function for regulators/clocks without the cam lock(s). This part is still needed to be done for sdhci. We also now save the host OCR in the discovery phase as it wasn't done before and only worked because the same ccb was reused.
Reviewed by: imp, kibab, bz Differential Revision: https://reviews.freebsd.org/D30038
show more ...
|
Revision tags: release/13.0.0 |
|
#
cd853791 |
| 28-Nov-2020 |
Konstantin Belousov <kib@FreeBSD.org> |
Make MAXPHYS tunable. Bump MAXPHYS to 1M.
Replace MAXPHYS by runtime variable maxphys. It is initialized from MAXPHYS by default, but can be also adjusted with the tunable kern.maxphys.
Make b_pag
Make MAXPHYS tunable. Bump MAXPHYS to 1M.
Replace MAXPHYS by runtime variable maxphys. It is initialized from MAXPHYS by default, but can be also adjusted with the tunable kern.maxphys.
Make b_pages[] array in struct buf flexible. Size b_pages[] for buffer cache buffers exactly to atop(maxbcachebuf) (currently it is sized to atop(MAXPHYS)), and b_pages[] for pbufs is sized to atop(maxphys) + 1. The +1 for pbufs allow several pbuf consumers, among them vmapbuf(), to use unaligned buffers still sized to maxphys, esp. when such buffers come from userspace (*). Overall, we save significant amount of otherwise wasted memory in b_pages[] for buffer cache buffers, while bumping MAXPHYS to desired high value.
Eliminate all direct uses of the MAXPHYS constant in kernel and driver sources, except a place which initialize maxphys. Some random (and arguably weird) uses of MAXPHYS, e.g. in linuxolator, are converted straight. Some drivers, which use MAXPHYS to size embeded structures, get private MAXPHYS-like constant; their convertion is out of scope for this work.
Changes to cam/, dev/ahci, dev/ata, dev/mpr, dev/mpt, dev/mvs, dev/siis, where either submitted by, or based on changes by mav.
Suggested by: mav (*) Reviewed by: imp, mav, imp, mckusick, scottl (intermediate versions) Tested by: pho Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D27225
show more ...
|