aboutsummaryrefslogtreecommitdiffstats
path: root/Bootloaders
Commit message (Expand)AuthorAgeFilesLines
* Set magic ReleaseNumber for QMK-DFUHEADmasterfauxpark2019-12-191-1/+1
* Merge in changes from upstreamDrashna Jael're2019-09-0611-424/+1089
|\
| * Documentation: Update doxygen config files to latest released version.Dean Camera2019-09-045-420/+1080
| * Documentation: Fix Doxygen grouping.Dean Camera2019-09-041-2/+2
| * Bootloader: MassStorage: Enlarge AUX section to 8KB to fit with newer GCC ver...Dean Camera2019-07-291-2/+2
| * Bootloaders: Enable LTO to reduce compiled size.Dean Camera2019-07-295-0/+5
* | Soft set LUFA DFU Bootloader options so they can be overridden for :bootloade...Drashna Jaelre2019-07-051-6/+6
* | QMK Lufa Bootloader Generation (qmk#2009)Drashna Jaelre2019-07-033-9/+24
* | Merge remote-tracking branch 'abcminiuser/master'Drashna Jaelre2019-07-0351-233/+334
|\|
| * MassStorageBootloader: Move more code into AUX_BOOT_SECTION to save space in ...Dean Camera2019-03-272-2/+9
| * Documentation: Update copyrights to 2019.Dean Camera2019-01-0851-95/+95
| * PrinterBootloader: Don't store 32-bit HEX parser flash offsets on small flash...Dean Camera2018-12-052-4/+11
| * Don't build project folders in parallel.Dean Camera2018-12-041-14/+3
| * Move class-specific functional descriptor definitions to their respective cla...Dean Camera2018-06-171-3/+3
| * Update all project manufacturer strings with a generic title.Dean Camera2018-04-223-3/+3
| * Fix bootloaders incorrectly checking the BOOTRST fuse on start (thanks to Bra...Dean Camera2018-04-024-4/+4
| * Add short delays before detaching from the USB bus in the bootloaders (thanks...Dean Camera2018-01-228-0/+16
| * Fixed bootloaders accepting flash writes to the bootloader region (thanks to ...Dean Camera2018-01-225-1/+65
| * Upgrade HID bootloader Python host app to cross-platform hidapi.Dean Camera2018-01-071-17/+26
| * Update copyrights for 2018.Dean Camera2018-01-0451-95/+95
| * Fixed bootloaders not disabling global interrupts during erase and write oper...Dean Camera2017-10-0116-96/+106
* | Fix xml file line endingsFred Sundvik2017-07-089-1085/+1085
* | adds QMK board with definable LEDs and matrix scanJack Humbert2017-07-053-14/+46
|/
* Update copyrights for 2017.Dean Camera2017-04-1851-95/+95
* Restrict HID bootloader programming region (thanks to NicoHood).Dean Camera2017-01-295-6/+12
* Revert incorrect Mass Storage bootloader app start address.Dean Camera2017-01-291-1/+1
* Fix outdated URL in the HID bootloader Python host app documentation.Dean Camera2016-04-301-1/+1
* Update functions used to write to EEPROMEric Tang2016-04-192-5/+3
* Fix HID bootloader responding incorrectly to some descriptor requests (thanks...Dean Camera2016-04-101-1/+1
* Add LUFA DMBS extension modules, use DMBS in project makefiles.Dean Camera2016-04-035-40/+75
* Update copyrights to 2016.Dean Camera2016-01-3151-95/+95
* Fix additional missing va_end() in the HID bootloader CLI utility.Dean Camera2015-12-221-3/+2
* Fix HID bootloader CLI app missing va_end() calls.Dean Camera2015-12-221-0/+4
* Fixed incorrect CALLBACK_USB_GetDescriptor() wIndex parameter type (thanks to...Dean Camera2015-12-0211-11/+11
* Fixed missing bounds checks and off-by-one in the DFU bootloader signature by...Dean Camera2015-11-081-6/+31
* Fixed incorrect signature reported in the CDC/DFU bootloaders for the AT90USB...Dean Camera2015-08-302-2/+2
* Update copyrights to 2015 (better late than never).Dean Camera2015-05-1751-96/+96
* Patch HID bootloader host app to fix Windows compilation (thanks to Duncan Mc...Dean Camera2015-05-112-4/+5
* Minor documentation improvements.Dean Camera2015-03-151-1/+14
* Merge pull request #50 from the2masters/gitignoreDean Camera2015-03-101-0/+1
|\
| * ignore HID Bootloader upload toolStefan Hellermann2015-02-281-0/+1
* | Update BootloaderCDC.cNico2015-02-241-0/+3
|/
* Upgrade to latest Doxygen.Dean Camera2014-12-275-505/+660
* Minor documentation improvements to the Mass Storage bootloader.Dean Camera2014-10-121-14/+14
* Revert "Improve bootloader documentation."Dean Camera2014-10-1216-112/+100
* Improve bootloader documentation.Dean Camera2014-10-1216-100/+112
* Fix bootloaders not starting user application if the HWB is grounded during w...Dean Camera2014-10-129-49/+59
* Add Leonardo compatibility to most bootloaders, run user application if BOOTR...Dean Camera2014-10-118-54/+146
* Don't run user application in the bootloader unless a valid app is present (t...Dean Camera2014-10-114-6/+64
* Obsolete the old MACROS and MACROE convenience macros.Dean Camera2014-09-141-3/+3
_PCIIO_readb (void *opaque, target_phys_addr_t addr) { PREPPCIState *s = opaque; uint32_t val; val = pci_data_read(s->bus, PPC_PCIIO_config(addr), 1); return val; } static uint32_t PPC_PCIIO_readw (void *opaque, target_phys_addr_t addr) { PREPPCIState *s = opaque; uint32_t val; val = pci_data_read(s->bus, PPC_PCIIO_config(addr), 2); #ifdef TARGET_WORDS_BIGENDIAN val = bswap16(val); #endif return val; } static uint32_t PPC_PCIIO_readl (void *opaque, target_phys_addr_t addr) { PREPPCIState *s = opaque; uint32_t val; val = pci_data_read(s->bus, PPC_PCIIO_config(addr), 4); #ifdef TARGET_WORDS_BIGENDIAN val = bswap32(val); #endif return val; } static CPUWriteMemoryFunc *PPC_PCIIO_write[] = { &PPC_PCIIO_writeb, &PPC_PCIIO_writew, &PPC_PCIIO_writel, }; static CPUReadMemoryFunc *PPC_PCIIO_read[] = { &PPC_PCIIO_readb, &PPC_PCIIO_readw, &PPC_PCIIO_readl, }; static void prep_set_irq(PCIDevice *d, void *pic, int irq_num, int level) { /* XXX: we do not simulate the hardware - we rely on the BIOS to set correctly for irq line field */ pic_set_irq(d->config[PCI_INTERRUPT_LINE], level); } PCIBus *pci_prep_init(void) { PREPPCIState *s; PCIDevice *d; int PPC_io_memory; s = qemu_mallocz(sizeof(PREPPCIState)); s->bus = pci_register_bus(prep_set_irq, NULL, 0); register_ioport_write(0xcf8, 4, 4, pci_prep_addr_writel, s); register_ioport_read(0xcf8, 4, 4, pci_prep_addr_readl, s); register_ioport_write(0xcfc, 4, 1, pci_host_data_writeb, s); register_ioport_write(0xcfc, 4, 2, pci_host_data_writew, s); register_ioport_write(0xcfc, 4, 4, pci_host_data_writel, s); register_ioport_read(0xcfc, 4, 1, pci_host_data_readb, s); register_ioport_read(0xcfc, 4, 2, pci_host_data_readw, s); register_ioport_read(0xcfc, 4, 4, pci_host_data_readl, s); PPC_io_memory = cpu_register_io_memory(0, PPC_PCIIO_read, PPC_PCIIO_write, s); cpu_register_physical_memory(0x80800000, 0x00400000, PPC_io_memory); /* PCI host bridge */ d = pci_register_device(s->bus, "PREP Host Bridge - Motorola Raven", sizeof(PCIDevice), 0, NULL, NULL); d->config[0x00] = 0x57; // vendor_id : Motorola d->config[0x01] = 0x10; d->config[0x02] = 0x01; // device_id : Raven d->config[0x03] = 0x48; d->config[0x08] = 0x00; // revision d->config[0x0A] = 0x00; // class_sub = pci host d->config[0x0B] = 0x06; // class_base = PCI_bridge d->config[0x0C] = 0x08; // cache_line_size d->config[0x0D] = 0x10; // latency_timer d->config[0x0E] = 0x00; // header_type d->config[0x34] = 0x00; // capabilities_pointer return s->bus; }