Using a GPIO reset for a flash chip that has a dual function pin
(RESET# or SIO3) and is to be used in Quad mode is rather a bad idea
and so is clearing of the Quad Enable bit at every initialization
of the flash driver, since this bit is usually non-volatile, so such
operation means unnecessary wearing of the flash chip. Soft Reset
should be use instead in such case.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Add implementation of the most common Soft Reset routine (sequence of
reset enable instruction 0x66 and reset instruction 0x99).
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Complete implementation of quad_enable_set() by adding support for all
possible Quad Enable Requirements (QER) as specified by the SFDP JEDEC
standard (JESD216). Add also corresponding octal_enable_set() to handle
Octal Enable Requirements.
Also remove initial waiting from mxicy_mx25r_post_switch_mode() which
became unneeded, as now such waiting is done in cmd_wrsr() which is
called at the end of quad_enable_set().
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
- Use standard operation codes and parameters from SFDP for handling
the used flash commands (allow to override some of them through dts
with the `read-command`, `write-command`, and `rx-dummy` properties)
- Use all available erase types as specified by SFDP
- Allow using all IO modes
- Add support for switching to 4-byte addressing mode
- Use common functions for reading and writing of status registers
and for enabling write operations
- Switch IO mode (between the target one and Single IO) in a common
function that performs transfers and do it only when required for
a given command
- Make checking of JEDEC ID at initialization optional
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Get parameters for used flash commands and requirements for enabling
Quad and Octal modes from dts uint8-arrays containing data read from
SFDP tables for particular flash chips.
Also introduce `pre_init` quirk that allows alteration of the above
parameters or complementation of them in a specific way for particular
flash chip families.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Define a video device for each pipe instead for the main dcmipp device
since the pipe is the device that communicates with application
(zephyr,camera chosen node), not the dcmipp device.
This helps to enable camera controls as well.
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
The pipe nodes are not video interfaces. Describe them as normal child
nodes instead of using port/endpoint.
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
The missing variable "config" in phy_mc_ksz8081_cfg_link() maybe
used by the macro "USING_INTERRUPT_GPIO", add the variable to avoid
compiling errors.
fixes: #95492
Signed-off-by: Tony Han <tony.han@microchip.com>
Asynchronously release the device after a small delay to minimise power
state transitions under multiple sequential API calls (e.g. NVS).
Signed-off-by: Jordan Yates <jordan@embeint.com>
Request calibration of the ADC in the voltage divider driver to improve
the accuracy of the measured voltages.
Signed-off-by: Jordan Yates <jordan@embeint.com>
Adopt new sys_count_bits helper from util.h and avoid
having conflicting definition
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add possibility of using data strobe signal (DQS) called RXDS in
the SSI documentation. This signal may be necessary to make use
of DDR modes.
Remove also a TODO comment that should have been removed when support
for DDR was added in fc64fec8fe.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Within spi_rtio_copy there'd be a case where the tx_buf pointer would
mistakenly get assigned the address of an rx buffer.
Specifically this would happen in the case where there are no rx buffers
provided, and as such this would lead to pontential nullptr dereferences.
Correct the mistake to let tx_buf correctly point to the provided tx
buffers.
Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
I3C targets can join the bus after initialization so CCC should not exit
if no known I3C devices exist at init time.
Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
The sensor interface gives current channel values in Amps, but the "I"
(current) value is displayed in mA, so needs to be converted accordingly.
Signed-off-by: Marc Reilly <marc@cpdesign.com.au>
Add scmi_cpu_set_irq_mask function for scmi nxp cpu driver,
set cmc wakeup mask from scmi interface by this.
The CPU_IRQ_WAKE_SET is sent to the scmi platform
to determine which interrupt can wakeup the cpu platform
when the corresponding interrupt occurs
"1" means the IRQ cannot wakeup CPU platform
Each bit corresponds one-to-one with the interrupt
controller of the platform such as nvic in mcore
Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
Fixes the `spi_loopback` test failure on board Renesas `rzg3s_smarc` since
the test has been updated by zephyrproject-rtos/zephyr/pull/86383
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Fix to ensure temperature is sampled at the same timestamp as x,y,z axis
data.
Signed-off-by: Vinayak Sunilkumar Priyadarsini <Vinayak.SunilkumarPriyadarsini@analog.com>
As the other spi_nxp_lpspi driver source files use DT_DRV_COMPAT
and that is used to determine in spi_context.h if the gpio cs
code is used, it also have to be defined in spi_nxp_lpspi_common.c
so there is no mismatch and breaking of the driver.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Added support for combined write-read operations
with repeated start for asynchronous (async)
operations in the Silabs I2C driver for EFR
series 2 devices.
Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
Invert the RX/TX checksum offloading to hardware behaviour so that
hardware checksum generation / evaluation for TCP/UDP packets on
either IPv4 or IPv6 is enabled by default, but can be disabled
explicitly.
This behaviour, which should optimize network performance, has
become possible with the implementation of the device driver's
get_config function, indicating to the network stack that HW
checksum offloading is not supported for, e.g., ICMP packets.
Before this implementation, enabling the HW checksum offloading
resulted in invalid packets for any unsupported protocol and
could therefore not be enabled by default.
For QEMU, which does not support the emulation of the HW
checksum offloading, automatically disable the offloading.
Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
For clear, this splits large isr function into smaller ones which are
dedicated for handling plug/unplug, wakeup, reset/suspend/resume, SOF,
Setup, and endpoint events.
Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
This refines interrupt handling sequence: clear interrupt flag first,
then process it. This can avoid one race condition when interrupt flag
is cleared but not processed for interrupts of the same type coming
very closely.
Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
This fixes timing to enable D+ pull-up so that device won't be recognized
by host until user application invokes udc_enable().
Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
Disable the shadow registers bypass in init function before RTC
deinitialisation to avoid infinite loop as the bit cases the RSF bit
to be kept in 0. The systick is not working in PRE_KERNEL_1 so it will
never timeout.
Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
Test the received byte against the byte sent depending on the speed
selected, not the standard-speed mode byte every time.
Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
According to the datasheet, one page is made of 64 bytes
and one row is made of 4 pages, that is 256 bytes.
This MR fixes the incorrect page write size for sam0
and sets it to 64 bytes.
Signed-off-by: Taras Zaporozhets <zaporozhets.taras@gmail.com>
Add a HWINFO driver for native_sim with support for getting the device
ID. Default device ID will be that returned from gethostid(), but the ID
can be overriden via the -hostid command line option.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Reworking pm implementation in stm32wba ble hci driver.
Enabling "no-reset" quirk for stm32wba ble hci driver to
maintain specific configuration required for pm.
Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>