/openbmc/u-boot/drivers/mtd/nand/raw/ |
H A D | lpc32xx_nand_mlc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 10 * The MLC NAND flash controller provides hardware Reed-Solomon ECC 11 * covering in- and out-of-band data together. Therefore, in- and out- 12 * of-band data must be written together in order to have a valid ECC. 14 * Consequently, pages with meaningful in-band data are written with 15 * blank (all-ones) out-of-band data and a valid ECC, and any later 16 * out-of-band data write will void the ECC. 18 * Therefore, code which reads such late-written out-of-band data 19 * should not rely on the ECC validity. 34 u8 buff[32768]; /* controller's serial data buffer */ member [all …]
|
H A D | vf610_nfc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright 2009-2015 Freescale Semiconductor, Inc. and others 6 * Ported to U-Boot by Stefan Agner 7 * Based on RFC driver posted on Kernel Mailing list by Bill Pringlemeir 14 * Based on original driver mpc5121_nfc.c. 17 * - Untested on MPC5125 and M54418. 18 * - DMA and pipelining not used. 19 * - 2K pages or less. 20 * - HW ECC: Only 2K page with 64+ OOB. 21 * - HW ECC: Only 24 and 32-bit error correction implemented. [all …]
|
H A D | arasan_nfc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright (C) 2014 - 2015 Xilinx, Inc. 121 #define ERR_ADDR_CYCLE -1 231 * bbt decriptors for chips with on-die ECC and 232 * chips with 64-byte OOB 264 static void arasan_nand_select_chip(struct mtd_info *mtd, int chip) in arasan_nand_select_chip() argument 268 reg_val = readl(&arasan_nand_base->memadr_reg2); in arasan_nand_select_chip() 269 if (chip == 0) { in arasan_nand_select_chip() 271 writel(reg_val, &arasan_nand_base->memadr_reg2); in arasan_nand_select_chip() 272 } else if (chip == 1) { in arasan_nand_select_chip() [all …]
|
H A D | fsmc_nand.c | 1 // SPDX-License-Identifier: GPL-2.0+ 62 * of OOB size is reserved for ECC, Byte no. 0 & 1 reserved for bad block & 118 103 * oobfree structure maintained already in u-boot nand driver 151 /* Count the number of 0's in buff upto a max of max_bits */ 152 static int count_written_bits(uint8_t *buff, int size, int max_bits) in count_written_bits() argument 156 for (k = 0; k < size; k++) { in count_written_bits() 157 written_bits += hweight8(~buff[k]); in count_written_bits() 171 IO_ADDR_W = (ulong)this->IO_ADDR_W; in fsmc_nand_hwcontrol() 180 writel(readl(&fsmc_regs_p->pc) | in fsmc_nand_hwcontrol() 181 FSMC_ENABLE, &fsmc_regs_p->pc); in fsmc_nand_hwcontrol() [all …]
|
/openbmc/linux/drivers/net/ethernet/chelsio/cxgb4/ |
H A D | cudbg_lib.c | 1 // SPDX-License-Identifier: GPL-2.0-only 83 /* 1 addr reg SGE_QBASE_INDEX and 4 data reg SGE_QBASE_MAP[0-3] */ 188 switch (CHELSIO_CHIP_VERSION(adap->params.chip)) { in cudbg_get_entity_length() 201 len = adap->params.devlog.size; in cudbg_get_entity_length() 204 if (is_t6(adap->params.chip)) { in cudbg_get_entity_length() 205 len = adap->params.cim_la_size / 10 + 1; in cudbg_get_entity_length() 208 len = adap->params.cim_la_size / 8; in cudbg_get_entity_length() 287 len = adap->params.arch.vfcount * in cudbg_get_entity_length() 300 switch (CHELSIO_CHIP_VERSION(adap->params.chip)) { in cudbg_get_entity_length() 357 adap->params.arch.mps_tcam_size; in cudbg_get_entity_length() [all …]
|
H A D | t4_hw.c | 4 * Copyright (c) 2003-2016 Chelsio Communications, Inc. All rights reserved. 16 * - Redistributions of source code must retain the above 20 * - Redistributions in binary form must reproduce the above 43 * t4_wait_op_done_val - wait until an operation is completed 46 * @mask: a single-bit field within @reg that indicates completion 55 * operation completes and -EAGAIN otherwise. 68 if (--attempts == 0) in t4_wait_op_done_val() 69 return -EAGAIN; in t4_wait_op_done_val() 83 * t4_set_reg_field - set a register field to a value 102 * t4_read_indirect - read indirectly addressed registers [all …]
|
/openbmc/linux/drivers/net/ethernet/micrel/ |
H A D | ks8851_spi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 32 * struct ks8851_net_spi - KS8851 SPI driver private data 37 * @spi_msg1: pre-setup SPI transfer with one message, @spi_xfer1. 38 * @spi_msg2: pre-setup SPI transfer with two messages, @spi_xfer2. 42 * The @lock ensures that the chip is protected when certain operations are 44 * of the chip registers are not ccessible until the transfer is finished and 45 * the DMA has been de-asserted. 66 /* shift for byte-enable data */ 69 /* turn register number and byte-enable mask into data for start of packet */ 74 * ks8851_lock_spi - register access lock [all …]
|
/openbmc/linux/drivers/media/radio/wl128x/ |
H A D | fmdrv.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * FM Driver for Connectivity chip of Texas Instruments. 5 * Common header for all FM driver sub-modules. 18 #include <media/v4l2-ioctl.h> 19 #include <media/v4l2-common.h> 20 #include <media/v4l2-device.h> 21 #include <media/v4l2-ctrls.h> 66 u8 buff[FM_RX_RDS_INFO_FIELD_MAX]; member 111 u8 flag; /* RX RDS on/off status */ 116 u32 buf_size; /* Size is always multiple of 3 */ [all …]
|
H A D | fmdrv_common.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * FM Driver for Connectivity chip of Texas Instruments. 5 * This sub-module of FM driver is common for FM RX and TX 7 * 1) Forming group of Channel-8 commands to perform particular 9 * one Channel-8 command to be sent to the chip). 10 * 2) Sending each Channel-8 command to the chip and reading 14 * 5) Loading FM firmware to the chip (common, FM TX, and FM RX 15 * firmware files based on mode selection) 64 static u32 radio_nr = -1; 173 fmdev->irq_info.handlers[fmdev->irq_info.stage](fmdev); in fm_irq_call() [all …]
|
/openbmc/linux/drivers/net/wwan/iosm/ |
H A D | iosm_ipc_mmio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2020-21 Intel Corporation. 29 IPC_MEM_DEVICE_IPC_INVALID = -1 68 * struct iosm_mmio - MMIO region mapped to the doorbell scratchpad. 73 * @chip_info_version: Version of chip info structure 74 * @chip_info_size: Size of chip info structure 94 * ipc_mmio_init - Allocate mmio instance data 103 * ipc_mmio_set_psi_addr_and_size - Set start address and size of the 108 * @size: PSI immage size 111 u32 size); [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/usb/ |
H A D | cdns,usb3.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Cadence USBSS-DRD controller 10 - Pawel Laszczak <pawell@cadence.com> 18 - description: OTG controller registers 19 - description: XHCI Host controller registers 20 - description: DEVICE controller registers 22 reg-names: 24 - const: otg [all …]
|
/openbmc/u-boot/board/davinci/da8xxevm/ |
H A D | da850evm.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/ 5 * Based on da830evm.c. Original Copyrights follow: 20 #include <asm/ti-common/davinci_nand.h> 27 #include <asm/mach-types.h> 50 #define CFG_MAC_ADDR_OFFSET (flash->size - SZ_64K) 88 printf("Error - unable to probe SPI flash.\n"); in get_mac_addr() 89 return -1; in get_mac_addr() 94 printf("Error - unable to read MAC address from SPI flash.\n"); in get_mac_addr() 95 return -1; in get_mac_addr() [all …]
|
/openbmc/linux/drivers/mtd/nand/raw/ |
H A D | fsmc_nand.c | 1 // SPDX-License-Identifier: GPL-2.0 11 * Based on drivers/mtd/nand/nomadik_nand.c (removed in v3.8) 20 #include <linux/dma-direction.h> 21 #include <linux/dma-mapping.h> 29 #include <linux/mtd/nand-ecc-sw-hamming.h> 37 #include <mtd/mtd-abi.h> 99 * TOUDEL = 7ns (Output delay from the flip-flops to the board) 120 * struct fsmc_nand_data - structure for FSMC NAND device state 123 * @pid: Part ID on the AMBA PrimeCell format 124 * @nand: Chip related info for a NAND flash. [all …]
|
H A D | sh_flctl.c | 1 // SPDX-License-Identifier: GPL-2.0 8 * Based on fsl_elbc_nand.c, Copyright (c) 2006-2007 Freescale Semiconductor 16 #include <linux/dma-mapping.h> 34 struct nand_chip *chip = mtd_to_nand(mtd); in flctl_4secc_ooblayout_sp_ecc() local 37 return -ERANGE; in flctl_4secc_ooblayout_sp_ecc() 39 oobregion->offset = 0; in flctl_4secc_ooblayout_sp_ecc() 40 oobregion->length = chip->ecc.bytes; in flctl_4secc_ooblayout_sp_ecc() 49 return -ERANGE; in flctl_4secc_ooblayout_sp_free() 51 oobregion->offset = 12; in flctl_4secc_ooblayout_sp_free() 52 oobregion->length = 4; in flctl_4secc_ooblayout_sp_free() [all …]
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/nfpcore/ |
H A D | nfp_cppcore.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 /* Copyright (C) 2015-2018 Netronome Systems, Inc. */ 6 * Provides low-level access to the NFP's internal CPP bus 39 * struct nfp_cpp - main nfpcore device structure 40 * Following fields are read-only after probe() exits or netdevs are spawned. 42 * @op: low-level implementation ops 43 * @priv: private data of the low-level implementation 44 * @model: chip model 45 * @interface: chip interface id we are using to reach it 46 * @serial: chip serial number [all …]
|
/openbmc/linux/drivers/usb/host/ |
H A D | fhci-tds.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 * Jerry Huang <Chang-Ming.Huang@freescale.com> 30 #define TD_I 0x1000 /* interrupt on completion */ 33 #define TD_CNF 0x0200 /* CNF - Must be always 1 */ 34 #define TD_LSP 0x0100 /* Low-speed transaction */ 84 if (!ep->already_pushed_dummy_bd) { in fhci_push_dummy_bd() 85 u16 td_status = in_be16(&ep->empty_td->status); in fhci_push_dummy_bd() 87 out_be32(&ep->empty_td->buf_ptr, DUMMY_BD_BUFFER); in fhci_push_dummy_bd() 89 ep->empty_td = next_bd(ep->td_base, ep->empty_td, td_status); in fhci_push_dummy_bd() 90 ep->already_pushed_dummy_bd = true; in fhci_push_dummy_bd() [all …]
|
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7996/ |
H A D | debugfs.c | 1 // SPDX-License-Identifier: ISC 31 dev->ibf = !!val; in mt7996_implicit_txbf_set() 41 *val = dev->ibf; in mt7996_implicit_txbf_get() 54 struct mt7996_phy *phy = file->private_data; in mt7996_sys_recovery_set() 55 struct mt7996_dev *dev = phy->dev; in mt7996_sys_recovery_set() 56 bool band = phy->mt76->band_idx; in mt7996_sys_recovery_set() 62 return -EINVAL; in mt7996_sys_recovery_set() 65 return -EFAULT; in mt7996_sys_recovery_set() 67 if (count && buf[count - 1] == '\n') in mt7996_sys_recovery_set() 68 buf[count - 1] = '\0'; in mt7996_sys_recovery_set() [all …]
|
/openbmc/u-boot/include/configs/ |
H A D | edminiv2.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 5 * Based on original Kirkwood support which is 8 * Written-by: Prafulla Wadaskar <prafulla@marvell.com> 41 * Board-specific values for Orion5x MPP low level init: 42 * - MPPs 12 to 15 are SATA LEDs (mode 5) 43 * - Others are GPIO/unused (mode 3 for MPP0, mode 5 for 52 * Board-specific values for Orion5x GPIO low level init: 53 * - GPIO3 is input (RTC interrupt) 54 * - GPIO16 is Power LED control (0 = on, 1 = off) 55 * - GPIO17 is Power LED source select (0 = CPLD, 1 = GPIO16) [all …]
|
/openbmc/linux/drivers/net/ethernet/davicom/ |
H A D | dm9051.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 * struct rx_ctl_mach - rx activities record 45 * struct dm9051_rxctrl - dm9051 driver rx control 46 * @hash_table: Multicast hash-table data 50 * such as the multicast hash-filter and the receive register settings 58 * struct dm9051_rxhdr - rx packet data header 65 * packet data and ends with an appended 4-byte CRC data. 76 * struct board_info - maintain the saved data 123 ret = regmap_write(db->regmap_dm, reg, val); in dm9051_set_reg() 125 netif_err(db, drv, db->ndev, "%s: error %d set reg %02x\n", in dm9051_set_reg() [all …]
|
/openbmc/linux/drivers/net/ethernet/amd/ |
H A D | pcnet32.c | 3 * Copyright 1996-1999 Thomas Bogendoerfer 85 static int tx_start = 1; /* Mapping -- 0:20, 1:64, 2:128, 3:~220 (depends on chip vers) */ 113 PCNET32_PORT_ASEL, /* 0 Auto-select */ 117 PCNET32_PORT_10BT | PCNET32_PORT_FD, /* 4 10baseT-FD */ 123 PCNET32_PORT_MII | PCNET32_PORT_FD, /* 10 MII 10baseT-FD */ 127 /* 14 MII 100BaseTx-FD */ 140 #define MAX_UNITS 8 /* More are supported, limit only on options */ 175 #define PKT_BUF_SIZE (PKT_BUF_SKB - NET_IP_ALIGN) 176 /* chip wants twos complement of the (aligned) buffer length */ 177 #define NEG_BUF_SIZE (NET_IP_ALIGN - PKT_BUF_SKB) [all …]
|
/openbmc/linux/drivers/mfd/ |
H A D | sm501.c | 1 // SPDX-License-Identifier: GPL-2.0-only 19 #include <linux/platform_data/i2c-gpio.h> 25 #include <linux/sm501-regs.h> 135 unsigned long misct = smc501_readl(sm->regs + SM501_MISC_TIMING); in sm501_dump_clk() 136 unsigned long pm0 = smc501_readl(sm->regs + SM501_POWER_MODE_0_CLOCK); in sm501_dump_clk() 137 unsigned long pm1 = smc501_readl(sm->regs + SM501_POWER_MODE_1_CLOCK); in sm501_dump_clk() 138 unsigned long pmc = smc501_readl(sm->regs + SM501_POWER_MODE_CONTROL); in sm501_dump_clk() 163 dev_dbg(sm->dev, "MISCT=%08lx, PM0=%08lx, PM1=%08lx\n", in sm501_dump_clk() 166 dev_dbg(sm->dev, "PLL2 = %ld.%ld MHz (%ld), SDCLK0=%08lx, SDCLK1=%08lx\n", in sm501_dump_clk() 169 dev_dbg(sm->dev, "SDRAM: PM0=%ld, PM1=%ld\n", sdclk0, sdclk1); in sm501_dump_clk() [all …]
|
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7915/ |
H A D | debugfs.c | 1 // SPDX-License-Identifier: ISC 29 dev->ibf = !!val; in mt7915_implicit_txbf_set() 39 *val = dev->ibf; in mt7915_implicit_txbf_get() 52 struct mt7915_phy *phy = file->private_data; in mt7915_sys_recovery_set() 53 struct mt7915_dev *dev = phy->dev; in mt7915_sys_recovery_set() 54 bool band = phy->mt76->band_idx; in mt7915_sys_recovery_set() 60 return -EINVAL; in mt7915_sys_recovery_set() 63 return -EFAULT; in mt7915_sys_recovery_set() 65 if (count && buf[count - 1] == '\n') in mt7915_sys_recovery_set() 66 buf[count - 1] = '\0'; in mt7915_sys_recovery_set() [all …]
|
/openbmc/linux/drivers/net/ethernet/vertexcom/ |
H A D | mse102x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* Copyright (C) 2021 in-tech smart charging GmbH 4 * driver is based on micrel/ks8851_spi.c 36 #define LEN_MASK GENMASK(CMD_SHIFT - 1, 0) 98 struct mse102x_net_spi *mses = s->private; in mse102x_info_show() 100 seq_printf(s, "TX ring size : %u\n", in mse102x_info_show() 101 skb_queue_len(&mses->mse102x.txq)); in mse102x_info_show() 104 mses->spidev->irq); in mse102x_info_show() 107 (unsigned long)mses->spi_xfer.effective_speed_hz); in mse102x_info_show() 109 mses->spidev->mode); in mse102x_info_show() [all …]
|
/openbmc/linux/drivers/misc/genwqe/ |
H A D | card_utils.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * Author: Joerg-Stephan Vogt <jsvogt@de.ibm.com> 20 #include <linux/page-flags.h> 25 #include <linux/dma-mapping.h> 37 * __genwqe_writeq() - Write 64-bit register 40 * @val: 64-bit value 46 struct pci_dev *pci_dev = cd->pci_dev; in __genwqe_writeq() 48 if (cd->err_inject & GENWQE_INJECT_HARDWARE_FAILURE) in __genwqe_writeq() 49 return -EIO; in __genwqe_writeq() 51 if (cd->mmio == NULL) in __genwqe_writeq() [all …]
|
/openbmc/linux/drivers/net/ethernet/i825xx/ |
H A D | sun3_82586.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 8 * copyrights (c) 1994 by Michael Hipp (hippm@informatik.uni-tuebingen.de) 11 * crynwr-packet-driver by Russ Nelson 12 * Garret A. Wollman's i82586-driver for BSD 22 /* defines for the obio chip (not vme) */ 24 #define IEOB_ONAIR 0x40 /* put us on the air */ 53 char *iscp; /* pointer to the iscp-block */ 65 char *scb_base; /* base-address of all 16-bit offsets */ 79 unsigned short crc_errs; /* CRC-Error counter */ 89 #define RUC_NOP 0x0000 /* NOP-command */ [all …]
|